溫馨提示×

nodejs在centos上的安全設置

小樊
47
2025-04-04 13:37:07
欄目: 編程語言

在CentOS上配置Node.js以使用特定域名并確保其安全性,可以遵循以下步驟:

安裝Node.js和npm

  1. 更新系統包
sudo yum update
  1. 安裝EPEL(Extra Packages for Enterprise Linux)倉庫
sudo yum install epel-release
  1. 安裝Node.js
  • 使用EPEL安裝(推薦):
sudo yum install -y nodejs
  • 使用NVM(Node Version Manager)安裝:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash

安裝完成后,使用以下命令檢查安裝是否成功:

node -v
npm -v

配置Nginx反向代理

  1. 安裝Nginx
sudo yum install nginx
  1. 啟動并啟用Nginx
sudo systemctl start nginx
sudo systemctl enable nginx
  1. 配置Nginx反向代理

編輯Nginx配置文件,通常位于 /etc/nginx/conf.d/ 目錄下,創建一個新文件(如 myapp.conf),并添加以下內容:

server {
    listen 80;
    server_name example.com www.example.com;
    location / {
        proxy_pass http://localhost:3000;
        proxy_http_version 1.1;
        proxy_set_header Upgrade http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host host;
        proxy_cache_bypass http_upgrade;
    }
}

保存文件后,測試Nginx配置是否正確:

sudo nginx -t

重新加載Nginx以應用更改:

sudo systemctl restart nginx

安全設置

  1. 修改SSH默認端口

編輯 /etc/ssh/sshd_config 文件,將默認端口從22改為其他非標準端口,例如2222:

Port 2222

然后重啟SSH服務:

sudo systemctl restart sshd
  1. 配置防火墻

使用 firewalld 配置防火墻,只允許特定端口(如SSH和Node.js應用的端口)通過:

sudo firewall-cmd --permanent --add-port=2222/tcp
sudo firewall-cmd --permanent --add-port=3000/tcp
sudo firewall-cmd --reload
  1. 使用SELinux

如果需要更高級別的安全加固,可以啟用SELinux:

sudo yum install policycoreutils-python-utils
sudo setenforce 1
  1. 定期更新Node.js和npm

保持Node.js和npm的最新狀態,以防止安全漏洞:

sudo npm install -g npm
sudo npm update -g

以上步驟涵蓋了在CentOS上安裝Node.js、配置Nginx反向代理以及進行基本的安全設置。根據具體需求,可能還需要進行更多的安全加固措施,如配置SSL證書、限制訪問權限等。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女