如何在 Ubuntu 20.04 上安裝 NetBox

如何在 Ubuntu 20.04 上安裝 NetBox

在本文中,我們將解釋如何在 Ubuntu 20.04 上安裝 NetBox。這將指導您完成安裝和配置過程。

NetBox 是一種基礎架構資源建模 (IRM) 應用程序,旨在實現網絡自動化。NetBox 專為滿足網絡和基礎架構工程師的需求而開發。它旨在作為網絡操作的特定領域真實來源。

NetBox 作為 Web 應用程序運行在帶有 PostgreSQL 數據庫的 Django Python 框架之上。

先決條件:

  • Ubuntu 20.04 安裝了 KVM VPS。
  • root 用戶訪問權限或具有管理權限的普通用戶

1.保持服務器最新

# apt update -y && apt upgrade -y

2.安裝和配置PostgreSQL數據庫

我們將安裝和配置本地 PostgreSQL 數據庫。

注意:NetBox 需要 PostgreSQL 9.6 或更高版本。請注意,目前不支持 MySQL 和其他關係數據庫。

使用以下命令安裝 PostgreSQL 數據庫:

# apt install -y postgresql libpq-dev

啟動並啟用 PostgreSQL 服務:

# systemctl start postgresql

# systemctl enable postgresql

接下來,我們需要為 NetBox 創建一個數據庫並為其分配用戶名和密碼以進行身份驗證。

# sudo -u postgres psql psql

postgres=# CREATE DATABASE netbox;

CREATE DATABASE

postgres=# CREATE USER netbox WITH PASSWORD 'r5t6^7$%gyuuyt4';

CREATE ROLE

postgres=# GRANT ALL PRIVILEGES ON DATABASE netbox TO netbox;

GRANT

postgres=# \q

3.安裝Redis

Redis 是一種內存鍵值存儲,NetBox 使用它進行緩存和排隊。使用以下命令安裝Redis:

# apt install redis-server -y

啟動並啟用 redis-server 服務:

# systemctl start redis-server

# systemctl enable redis-server

使用 redis-cli 實用程序確保 Redis 服務正常運行:

# redis-cli ping

PONG

4. 安裝和配置 NetBox

有兩種安裝 NetBox 的方法。

下載發布檔案

克隆 Git 存儲庫

我們將通過克隆 Git 存儲庫來安裝 NetBox。

首先,安裝所需的軟件包及其依賴項:

# apt install -y python3 python3-pip python3-venv python3-dev build-essential libxml2-dev libxslt1-dev libffi-dev libpq-dev libssl-dev zlib1g-dev

將 pip(Python 的包管理工具)更新到最新版本:

# pip3 install --upgrade pip

為 NetBox 安裝創建基本目錄/opt/netbox

# mkdir -p /opt/netbox/ && cd /opt/netbox/

接下來,將 NetBox GitHub 存儲庫的 master 分支克隆到當前目錄中。

# git clone -b master https://github.com/netbox-community/netbox.git .

創建一個名為 netbox 的系統用戶帳戶。我們將配置 WSGI 和 HTTP 服務以在此帳戶下運行。我們還將為此用戶分配媒體目錄的所有權。

# adduser --system --group netbox

# chown --recursive netbox /opt/netbox/netbox/media/

移動到NETBOX配置目錄,使副本 configuration.example.py 命名 configuration.py

# cd /opt/netbox/netbox/netbox/

# cp configuration.example.py configuration.py

創建 Python 二進製文件的符號鏈接。

# ln -s /usr/bin/python3 /usr/bin/python

生成至少 50 個字母數字字符的隨機 SECRET_KEY。

# /opt/netbox/netbox/generate_secret_key.py

上面的命令將創建一個密鑰,存儲它以便我們可以在configuration.py 中使用它。

打開並編輯配置文件 configuration.py

# nano /opt/netbox/netbox/netbox/configuration.py

最終文件應具有以下配置。

ALLOWED_HOSTS = ['*']

DATABASE = {
'NAME': 'netbox', # Database name you created
'USER': 'netbox', # PostgreSQL username you created
'PASSWORD': 'r5t6^7$%gyuuyt4', # PostgreSQL password you set
'HOST': 'localhost', # Database server
'PORT': ', # Database port (leave blank for default)
}

SECRET_KEY = 'YOUR SECRET KEY'

一旦配置了 NetBox,我們就可以進行實際安裝了。

我們將運行打包的升級腳本 (upgrade.sh) 以執行以下操作:

  • 創建 Python 虛擬環境
  • 安裝所有必需的 Python 包
  • 運行數據庫架構遷移
  • 聚合磁盤上的靜態資源文件

# /opt/netbox/upgrade.sh

進入升級腳本創建的Python虛擬環境:

# source /opt/netbox/venv/bin/activate

使用 createsuperuser 創建超級用戶帳戶

# cd /opt/netbox/netbox

# python3 manage.py createsuperuser

輸出:

Email address: [email protected]

Password:

Password (again):

Superuser created successfully.

5. 配置 Gunicorn

NetBox 附帶了 gunicorn 的默認配置文件。要使用它,請將/opt/netbox/contrib/gunicorn.py複製  到 /opt/netbox/gunicorn.py

# cp /opt/netbox/contrib/gunicorn.py /opt/netbox/gunicorn.py

contrib/netbox.servicecontrib/netbox-rq.service 複製/etc/systemd/system/目錄並重新加載 systemd dameon:

# cp -v /opt/netbox/contrib/*.service /etc/systemd/system/

# systemctl daemon-reload

啟動並啟用netboxnetbox-rq服務:

# systemctl start netbox netbox-rq

# systemctl enable netbox netbox-rq

6. 配置 Nginx 網絡服務器

使用以下命令安裝 Nginx Web 服務器:

# apt install -y nginx

將 NetBox 提供的 nginx 配置文件複製到/etc/nginx/sites-available/netbox

# cp /opt/netbox/contrib/nginx.conf /etc/nginx/sites-available/netbox

編輯 netbox 配置文件並刪除所有內容並複制粘貼以下內容:

# nano /etc/nginx/sites-available/netbox

請記住更改server_name

server {
listen 80;

# CHANGE THIS TO YOUR SERVER’S NAME
server_name 127.0.0.1;

client_max_body_size 25m;

location /static/ {
alias /opt/netbox/netbox/static/;
}

location / {
proxy_pass http://127.0.0.1:8001;
proxy_set_header X-Forwarded-Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
}
}

然後,刪除 /etc/nginx/sites-enabled/default 並在 sites-enabled 目錄中創建指向您剛剛創建的配置文件的符號鏈接。

# rm /etc/nginx/sites-enabled/default

# ln -s /etc/nginx/sites-available/netbox /etc/nginx/sites-enabled/netbox

現在測試 Nginx 配置並重啟 Nginx 服務:

# nginx -t

# systemctl restart nginx

這樣我們就成功完成了安裝和配置過程。

導航到您的瀏覽器並使用服務器 IP 或域名訪問 NetBox。

如何在 Ubuntu 20.04 上安裝 NetBox

在本文中,我們已經看到瞭如何在 Ubuntu 20.04 上安裝 NetBox。


貝寶費用計算器

貝寶費用計算器

貝寶費用計算器。貝寶是最常用的付款方式。貝寶提供個人和企業賬戶。它讓您清楚地了解費用

如何在 CentOS 7 上安裝和運行 MTR 報告

如何在 CentOS 7 上安裝和運行 MTR 報告

我們將學習如何在 CentOS 7 上安裝和運行 MTR 報告。為了診斷和隔離網絡錯誤,Linux 管理員使用 MTR(my traceroute) 工具。

如何在 CentOS 7 上安裝和配置 Git 服務器

如何在 CentOS 7 上安裝和配置 Git 服務器

我們將看到如何在 CentOS 7 上安裝和配置 git 服務器。設置一個 Git 服務器。Git 是一個免費的開源軟件。使用 YUM 安裝 Git 或下載它。

在 Ubuntu 20.04 上輕鬆安裝 iRedMail

在 Ubuntu 20.04 上輕鬆安裝 iRedMail

在本教程中,我們將向您展示如何在 Ubuntu 20.04 上輕鬆安裝 iRedMail。iRedMail 是一個開源郵件服務器解決方案。

如何在 CentOS 7 上設置 OrangeScrum

如何在 CentOS 7 上設置 OrangeScrum

在本文中,很好地解釋瞭如何在 CentOS 7 上設置 OrangeScrum。

在 Ubuntu 20.04 上輕鬆安裝 XploitSPY

在 Ubuntu 20.04 上輕鬆安裝 XploitSPY

在本文中,很好地解釋瞭如何在 Ubuntu 20.04 服務器上輕鬆安裝 XploitSPY。XploitSPY 是一個 Android 監控間諜工具。

如何在 CentOS 8 上安裝 Polr

如何在 CentOS 8 上安裝 Polr

我們將向您展示如何在 CentOS 8 上安裝 Polr。我們將安裝 Apache Web 服務器、MySQL 最新版本和 PHP 7.4。Polr 是一種現代鏈接縮短器。

如何在 Ubuntu 20.04 上安裝 IntelliJ IDEA

如何在 Ubuntu 20.04 上安裝 IntelliJ IDEA

在本文中,很好地解釋瞭如何在 Ubuntu 20.04 上安裝 IntelliJ IDEA。IntelliJ IDEA 是一個集成開發環境。社區版

用於滲透測試的 7 個有用的開源情報工具

用於滲透測試的 7 個有用的開源情報工具

在本文中,很好地解釋了用於滲透測試的 7 個有用的 OSINT 工具。

如何在 Ubuntu 20.04 上安裝 Plausible

如何在 Ubuntu 20.04 上安裝 Plausible

如何在 Ubuntu 20.04 上安裝 Plausible。Plausible Analytics 一種簡單、開源且隱私友好的網絡分析替代 Google Analytics。