在本教程中,我們將向您展示如何在 Rocky Linux 9 上安裝 NetBox。對於那些不知道的人,NetBox 是一個用於管理和記錄計算機網絡的開源 Web 應用程序。 它是用 Python 編寫的,並使用 Django Web 框架。 提供網絡基礎設施的集中視圖,包括 IP 地址、設備、虛擬機以及它們之間的連接。 NetBox 還包括管理數據中心的內置功能,包括機架、設備和虛擬機。
本文假設您至少對 Linux 有基本的了解,您知道如何使用 shell,最重要的是,您在自己的 VPS 上託管您的網站。 安裝非常簡單,它假定您在 root 帳戶下運行,如果不是,您可能需要添加 ' sudo
' 獲取 root 權限的命令。 我將向您展示如何在 Rocky Linux 上逐步安裝 NetBox IRM。 9.
以前的要求
- 運行以下操作系統之一的服務器:岩石Linux 9.
- 建議您使用全新的操作系統安裝以避免潛在問題。
- 通過 SSH 訪問服務器(如果您在桌面上,則只需打開終端)。
- 有效的 Internet 連接。 您將需要 Internet 連接來下載 NetBox 所需的包和依賴項。
- 到
non-root sudo user
或訪問root user
. 我們建議充當non-root sudo user
但是,如果您在以 root 身份運行時不小心,可能會損壞您的系統。
在 Rocky Linux 9 上安裝 NetBox
步驟 1. 第一步是將您的系統更新到最新版本的軟件包列表。 為此,請運行以下命令:
sudo dnf check-update sudo dnf install dnf-utils sudo dnf install gcc libxml2-devel libxslt-devel libffi-devel libpq-devel openssl-devel redhat-rpm-config git
步驟 2. PostgreSQL 安裝。
默認情況下,PostgreSQL 在 Rocky Linux 9 基本存儲庫中不可用。現在運行以下命令將 PostgreSQL 穩定存儲庫添加到您的系統:
sudo dnf install https://apt.postgresql.org/pub/repos/yum/reporpms/EL-9-x86_64/pgdg-redhat-repo-latest.noarch.rpm
接下來,運行以下命令在您的服務器上安裝最新穩定版本的 PostgreSQL:
sudo dnf check-update sudo dnf install postgresql14-server postgresql14-docs
安裝完成後,啟動 PostgreSQL 服務並使其在重新啟動時自動啟動:
sudo systemctl enable postgresql-14 --now sudo systemctl status postgresql-14
現在使用以下命令登錄到 PostgreSQL shell:
sudo -u postgres psql
然後為默認的 PostgreSQL 用戶設置一個新密碼 ' postgres
':
ALTER USER postgres WITH PASSWORD 'Your-Strong-PostgreSQL-Passwd';
之後,創建一個新的數據庫' netboxdb
'與用戶' netbox
' 這將用於 NetBox 安裝:
CREATE DATABASE netboxdb; CREATE USER netbox WITH ENCRYPTED PASSWORD 'NetBoxRocks'; GRANT ALL PRIVILEGES ON DATABASE netboxdb TO netbox;
最後,運行以下命令通過新用戶登錄到 PostgreSQL shell ' netbox
'到新數據庫' netboxdb
':
sudo -u postgres psql --username netbox --password --host localhost netboxdb
接下來,運行以下查詢來檢查您當前的連接:
conninfo
有關安裝 PostgreSQL 的其他資源,請閱讀以下帖子:
- 如何在 Rocky Linux 上安裝 PostgreSQL √
步驟 3. Redis 安裝。
默認情況下,Redis 在 Rocky Linux 9 基礎存儲庫中可用。現在運行以下命令在您的系統上安裝最新穩定版本的 Redis:
sudo dnf install redis
接下來,啟動 Redis 服務並通過運行以下命令使其在開機時自動啟動:
sudo systemctl enable --now redis sudo systemctl start redis sudo systemctl status redis
您可以通過運行以下命令來驗證您的 Redis 安裝:
redis-server --version
Redis 將其配置文件存儲在 /etc/redis/redis.conf
. 可以根據需要編輯此文件。
sudo nano /etc/redis/redis.conf
取消註釋參數 ' require pass
' 並輸入您的 Redis 服務器的新密碼:
requirepass RedisPasswordNetBox
保存並關閉文件,然後使用以下命令重新啟動 Redis 服務器:
sudo systemctl restart redis
有關安裝 Redis 的其他資源,請閱讀以下帖子:
- 如何在 Rocky Linux 上安裝 Redis √
步驟 4. 在 Rocky Linux 9 上安裝 Netbox IRM。
一、新建系統用戶' netbox
'使用默認主目錄' /opt/netbox
':
sudo useradd -r -d /opt/netbox -s /usr/sbin/nologin netbox
接下來,通過 git 命令下載最新版本的 NetBox 源代碼:
mkdir -p /opt/netbox; cd /opt/netbox sudo git clone -b master --depth 1 https://github.com/netbox-community/netbox.git
將您的工作目錄移動到 ' /opt/netbox/netbox/netbox
':
sudo chown -R netbox:netbox /opt/netbox cd /opt/netbox/netbox/netbox
然後運行以下命令將默認的 NetBox 配置複製到 ' configuration.py
':
sudo -u netbox cp configuration_example.py configuration.py sudo -u netbox python3 ../generate_secret_key.py
然後打開 NetBox 的配置文件 configuration.py
' 使用你最喜歡的文本編輯器:
sudo -u netbox nano configuration.py
添加以下參數:
# domain and IP address ALLOWED_HOSTS = ['your-domain.com', '192.168.77.21'] # database configuration DATABASE = { 'NAME': 'netboxdb', # Database name 'USER': 'netbox', # PostgreSQL username 'PASSWORD': 'NetBoxRocks', # PostgreSQL password 'HOST': 'localhost', # Database server 'PORT': '', # Database port (leave blank for default) 'CONN_MAX_AGE': 300, # Max database connection age (seconds) } # Redis cache configuration REDIS = { 'tasks': { 'HOST': 'localhost', # Redis server 'PORT': 6379, # Redis port 'PASSWORD': 'RedisPasswordNetBox', # Redis password (optional) 'DATABASE': 0, # Database ID 'SSL': False, # Use SSL (optional) }, 'caching': { 'HOST': 'localhost', 'PORT': 6379, 'PASSWORD': 'RedisPasswordNetBox', 'DATABASE': 1, # Unique ID for the second database 'SSL': False, } } # Secret key SECRET_KEY = '-BMW#USk(!-6hAEF-8Ng0detz6ex&+j0Kbe46bi=*jsF9T888*'
保存並關閉文件,然後運行以下腳本 ' /opt/netbox/upgrade.sh
'開始安裝 NetBox IRM:
sudo -u netbox /opt/netbox/upgrade.sh
步驟 5. 配置 NetBox IRM。
首先,運行以下命令為您的 NetBox 安裝激活 Python 虛擬環境:
source /opt/netbox/venv/bin/activate
之後,將工作目錄移動到 ' /opt/netbox/netbox
' 並運行 django 腳本 ' manage.py
' 創建一個新的 NetBox 管理員用戶:
cd /opt/netbox/netbox python3 manage.py createsuperuser
接下來,我們將 cron 設置為每天運行。 劇本' netbox-housekeeping.sh
' 用於清理您的 NetBox 環境,這將刪除所有過期的任務、舊會話或任何過期的記錄:
sudo ln -s /opt/netbox/contrib/netbox-housekeeping.sh /etc/cron.daily/netbox-housekeeping
現在配置 NetBox 以與 Gunicorn 一起工作:
sudo -u netbox cp /opt/netbox/contrib/gunicorn.py /opt/netbox/gunicorn.py sudo -u netbox nano /opt/netbox/gunicorn.py
改變 ' bind
'帶有以下行的參數:
bind = '127.0.0.1:8000'
保存並關閉文件,然後復制默認值 systemd
為 NetBox 提供的服務 ' /etc/systemd/system
'目錄。 這將復制服務文件 ' netbox
' 和 ' netbox-rq
' 將用於管理 NetBox:
sudo cp -v /opt/netbox/contrib/*.service /etc/systemd/system/
最後,運行 systemctl
一個命令實用程序,用於重新加載 systemd 管理器並將新更改應用到您的系統:
sudo systemctl daemon-reload sudo systemctl start netbox netbox-rq sudo systemctl enable netbox netbox-rq
步驟 6. 配置防火牆。
如果您使用的是 firewalld,請允許端口通過防火牆:
sudo firewall-cmd --permanent --add-port={80,443,8000}/tcp sudo firewall-cmd --reload
您可以通過列出當前的防火牆設置來檢查:
sudo firewall-cmd --permanent --list-all
步驟 7. 訪問 NetBox 網絡界面。
成功安裝後,打開 Web 瀏覽器並使用 URL 訪問 NetBox WebUI https://.your-IP-address:8000
. 您應該會看到以下頁面:
恭喜! 您已成功安裝 NetBox。 感謝您使用本教程在您的 Rocky Linux 9 系統上安裝 NetBox IRM。有關其他幫助或有用信息,我們建議您參考NetBox官網.