NetBox是一个用于管理和记录计算机网络的开源Web应用程序。它是用Python编写的,并使用Django Web框架。它提供了网络基础结构的集中视图,包括 IP 地址、设备、虚拟机以及它们之间的连接。NetBox 还包括用于管理数据中心(包括机架、设备和虚拟机)的内置功能。
在 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 http://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';
之后,使用用户“”创建一个新的数据库“”,该数据库将用于NetBox安装:netboxdb
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 在 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
取消注释参数 '' 并输入 Redis 服务器的新密码:require pass
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*'
保存并关闭文件,然后运行以下脚本 '' 以启动 NetBox IRM 安装:/opt/netbox/upgrade.sh
sudo -u netbox /opt/netbox/upgrade.sh
第5步。配置 NetBox IRM。
首先,运行以下命令以激活 NetBox 安装的 Python 虚拟环境:
source /opt/netbox/venv/bin/activate
之后,将工作目录移动到 '' 并运行 Django 脚本 '' 来创建一个新的 NetBox 管理员用户:/opt/netbox/netbox
manage.py
cd /opt/netbox/netbox python3 manage.py createsuperuser
接下来,我们设置每天运行的 cron。脚本 '' 用于清理您的 NetBox 环境,这将删除过期的任务、旧会话或任何过期的记录:netbox-housekeeping.sh
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'
保存并关闭文件,然后将 NetBox 的默认服务复制到 '' 目录。这将复制将用于管理 NetBox 的服务文件“”和“”:systemd
/etc/systemd/system
netbox
netbox-rq
sudo cp -v /opt/netbox/contrib/*.service /etc/systemd/system/
最后,运行命令实用程序以重新加载 systemd 管理器并将新的更改应用于系统:systemctl
sudo systemctl daemon-reload sudo systemctl start netbox netbox-rq sudo systemctl enable netbox netbox-rq
第 6 步。配置防火墙。
如果使用防火墙,请允许端口通过防火墙:
sudo firewall-cmd --permanent --add-port={80,443,8000}/tcp sudo firewall-cmd --reload
您可以通过列出当前防火墙设置进行验证:
sudo firewall-cmd --permanent --list-all
步骤 7.访问网络盒子网页界面。
成功安装后,打开您的 Web 浏览器并使用 URL 访问 NetBox WebUI。您应该看到以下页面:http://.your-IP-address:8000
感谢您使用本教程在 Rocky Linux 9 系统上安装 NetBox IRM。有关其他帮助或有用信息,我们建议您查看 NetBox 官方网站。