如何在 Rocky Linux 9 上安裝 NetBox

在本教程中,我們將向您展示如何在 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官網.

相關文章