在Ubuntu上配置Node.js的安全性是一个重要的步骤,以确保应用程序和系统的安全。以下是一些关键的安全配置措施:
sudo apt update
sudo apt upgrade nodejs npm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
source ~/.bashrc
nvm install 23
nvm use 23
npm config set proxy http://your-proxy-url:8080
npm config set https-proxy http://your-proxy-url:8080
npm config set cache /path/to/cache
npm sign
sudo npm install -g <package-name> --unsafe-perm
npm install v8-sandbox
node -e "require('v8-sandbox').spawn(process.argv[0], process.argv.slice(1), {sandbox: true})"
const { spawn } = require('child_process');
const child = spawn('command', ['arg1', 'arg2'], {
cwd: '/path/to/cwd',
env: { ...process.env, NODE_SAFE_EXECUTION_ENV: 'true' },
stdio: 'inherit'
});
npm audit fix
sudo npm install -g npm-audit
npm audit
sudo apt install ufw
sudo ufw allow ssh
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw enable
ssh-keygen -t rsa -b 4096
ssh-copy-id username@remote_host
sudo nano /etc/ssh/sshd_config
# 将PasswordAuthentication设置为no
PasswordAuthentication no
sudo systemctl restart sshd
sudo apt install fail2ban
sudo cp /etc/fail2ban/jail.local /etc/fail2ban/jail.local.baks
sudo systemctl start fail2ban
sudo systemctl enable fail2ban
通过以上步骤,可以显著提高Ubuntu上Node.js应用的安全性。