Hướng dẫn cài đặt netbox trên ubuntu 20.04
29/11/2021 13:36 | Luợt xem : 46
Netbox là gì?
NetBox là một ứng dụng mô hình hóa tài nguyên cơ sở hạ tầng (IRM) được thiết kế để trao quyền tự động hóa mạng. Ban đầu được hình thành bởi nhóm kỹ sư mạng tại DigitalOcean , NetBox được phát triển đặc biệt để giải quyết nhu cầu của các kỹ sư mạng và cơ sở hạ tầng. NetBox được cung cấp dưới dạng mã nguồn mở theo giấy phép Apache 2.
Các bước cài đặt như sao.
Bước 1 Install Database Postgresql
+Update và cài đặt Postgresql
#sudo apt update
#sudo apt install -y postgresql
+ Khởi động và kích hoạt dịch vụ postgresql
#sudo systemctl start postgresql
#sudo systemctl enable postgresql
+Tạo cơ sở dử liệu cho netbox và gán cho nó tên người dùng và mật khẩu để xác thực.
#sudo -u postgres psql
CREATE DATABASE netbox;
CREATE USER netbox WITH PASSWORD ‘bkns@123’;
GRANT ALL PRIVILEGES ON DATABASE netbox TO netbox;
Bước 2 Cài đặt Redis
+Cài đặt redis
#apt install redis-server -y
+Khởi động và kích hoạt dịch vụ redis-server
#systemctl start redis-server
#systemctl enable redis-server
+Sử dụng tiện ích redis-cli để đảm bảo dịch vụ Redis đang hoạt động
#redis-cli ping
Bước 3 Cài đặt và cấu hình NetBox
+Tạo thư mục cơ sở để cài đặt NetBox
#sudo mkdir -p /opt/netbox/
#cd /opt/netbox/
+Nếu git chưa được cài đặt, hãy cài đặt nó
#sudo apt install -y git
+Sao chép nhánh chính của kho lưu trữ NetBox GitHub vào thư mục hiện tại
#git clone -b master https://github.com/netbox-community/netbox.git
+Tạo người dùng hệ thống có tên là netbox.Chúng tôi sẽ định cấu hình các dịch vụ WSGI và HTTP để chạy trong tài khoản này. Chúng tôi cũng sẽ chỉ định người dùng này quyền sở hữu thư mục phương tiện
#adduser –system –group netbox
#chown –recursive netbox /opt/netbox/netbox/media/
+Di chuyển vào thư mục cấu hình NetBox và tạo một bản sao của configuration.example.py có tên là configuration.py
#cd /opt/netbox/netbox/netbox/
#cp configuration.example.py configuration.py
+Tạo một liên kết tượng trưng của hệ nhị phân Python
#ln -s /usr/bin/python3 /usr/bin/python
+Tạo SECRET_KEY ngẫu nhiên gồm ít nhất 50 ký tự chữ và số
#/opt/netbox/netbox/generate_secret_key.p
+Mở và chỉnh sửa tệp cấu hình configuration.py
#nano /opt/netbox/netbox/netbox/configuration.py
các bạn cần chỉnh sửa các thông số sau
ALLOWED_HOSTS = [‘tên miền của các bạn’ , ‘ip của vps’]
(Lưu ý tên miền phải trỏ về ip của vps thì mới truy cập bằng domain được)
DATABASE = {
‘NAME’: ‘netbox’, # Database name you created
‘USER’: ‘netbox’, # PostgreSQL username you created
‘PASSWORD’: ‘bkns@123’, # PostgreSQL password you set
‘HOST’: ‘localhost’, # Database server
‘PORT’: ‘, # Database port (leave blank for default)
}
SECRET_KEY = ‘YOUR SECRET KEY’#Lấy ở bước tạo SECRET_KEY
+Khi NetBox đã được cấu hình, chúng tôi đã sẵn sàng để tiến hành cài đặt thực tếvới lệnh sau.
#/opt/netbox/upgrade.sh
+Nhập môi trường ảo Python được tạo bởi tập lệnh nâng cấp
#source /opt/netbox/venv/bin/activate
+Tạo tài khoản superuser bằng cách sử dụng createuperuser
#cd /opt/netbox/netbox
python3 manage.py createsuperuser
+Đầu ra
Email address: admin@example.com
Password:
Password (again):
Superuser created successfully
Bước 4 Câu hình Gunicorn
+NetBox cung cấp tệp cấu hình mặc định cho gunicorn. Để sử dụng nó, hãy sao chép /opt/netbox/contrib/gunicorn.py sang /opt/netbox/gunicorn.py
#cp /opt/netbox/contrib/gunicorn.py /opt/netbox/gunicorn.py
+Sao chép Contrib /netbox.service và Contrib /netbox-rq.service vào thư mục /etc/systemd/system / và tải lại dameon systemd
#cp -v /opt/netbox/contrib/*.service /etc/systemd/system/
#systemctl daemon-reload
+Khởi động và kích hoạt dịch vụ netbox-rq
#systemctl start netbox netbox-rq
#systemctl enable netbox netbox-rq
Bước 5 Thiết lập máy chủ HTTP
+Lấy chứng chỉ ssl
#sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 \
-keyout /etc/ssl/private/netbox.key \
-out /etc/ssl/certs/netbox.crt
+Cài đặt máy chủ web Nginx bằng lệnh sau
#apt install -y nginx
+Sao chép tệp cấu hình nginx do NetBox cung cấp vào /etc/nginx/sites-available/netbox
#cp /opt/netbox/contrib/nginx.conf /etc/nginx/sites-available/netbox
+Chỉnh sửa tệp cấu hình netbox và xóa tất cả nội dung và sao chép dán nội dung bên dưới
#nano /etc/nginx/sites-available/netbox
server {
listen 80;
server_name 127.0.0.1;#Thay bằng đia chỉ ip của các bạn
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;
}
}
+Sau đó, xóa /etc/nginx/sites-enabled/default và tạo một liên kết tượng trưng trong thư mục chứa tệp cấu hình bạn vừa tạo
#rm /etc/nginx/sites-enabled/default
#ln -s /etc/nginx/sites-available/netbox /etc/nginx/sites-enabled/netbox
+Bây giờ hãy kiểm tra cấu hình Nginx và khởi động lại dịch vụ Nginx
#nginx -t
#systemctl restart nginx
Bước 6 Nếu các bạn bật tường lửa thì nên allow IP và Port để có thể truy cập dịch vụ netbox
+Allow port 8000 và ip của server trên tưởng lửa ufw trên ubuntu
#ufw allow 8000/tcp
#ufw allow from “IP server của các ban”