在 Linux 上为 Node.js 服务设置防火墙,通常需要使用 iptables 或 ufw(Uncomplicated Firewall)这样的工具。以下是使用这两种工具设置防火墙的基本步骤:
iptables查看当前的防火墙规则:
sudo iptables -L
允许特定端口的流量:
假设你的 Node.js 应用运行在端口 3000 上,你可以使用以下命令允许该端口的 TCP 流量:
sudo iptables -A INPUT -p tcp --dport 3000 -j ACCEPT
保存防火墙规则:
不同的 Linux 发行版可能有不同的方法来保存 iptables 规则。例如,在 Debian/Ubuntu 上,你可以使用 iptables-persistent:
sudo apt-get install iptables-persistent
sudo netfilter-persistent save
sudo netfilter-persistent reload
ufw启用 ufw:
sudo ufw enable
允许特定端口的流量:
同样假设你的 Node.js 应用运行在端口 3000 上,你可以使用以下命令允许该端口的 TCP 流量:
sudo ufw allow 3000/tcp
查看当前的防火墙规则:
sudo ufw status
禁用 ufw(如果需要):
sudo ufw disable
iptables-persistent 或其他方法保存规则,以确保重启后规则仍然有效。通过以上步骤,你可以在 Linux 上为你的 Node.js 服务设置防火墙规则,确保只有授权的流量能够访问你的应用。