在Linux系統中,可以使用iptables或firewalld來進行端口管理。以下是兩種方法的簡要說明:
查看當前iptables規則:
sudo iptables -L -n -v
允許特定端口: 例如,允許TCP端口80(HTTP)和443(HTTPS):
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
拒絕特定端口: 例如,拒絕TCP端口22(SSH)以外的所有端口:
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 1:21 -j DROP
sudo iptables -A INPUT -p tcp --dport 23:80 -j DROP
sudo iptables -A INPUT -p tcp --dport 81:443 -j DROP
sudo iptables -A INPUT -p tcp --dport 444:65535 -j DROP
保存iptables規則: 不同的Linux發行版保存iptables規則的方法不同。例如,在Debian/Ubuntu上:
sudo iptables-save > /etc/iptables/rules.v4
在CentOS/RHEL上:
sudo service iptables save
恢復iptables規則: 在Debian/Ubuntu上:
sudo iptables-restore < /etc/iptables/rules.v4
在CentOS/RHEL上:
sudo service iptables restart
查看當前firewalld狀態:
sudo firewall-cmd --state
允許特定端口: 例如,允許TCP端口80(HTTP)和443(HTTPS):
sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --permanent --add-port=443/tcp
拒絕特定端口: 例如,拒絕TCP端口22(SSH)以外的所有端口:
sudo firewall-cmd --permanent --remove-port=22/tcp
sudo firewall-cmd --permanent --add-port=22/tcp
sudo firewall-cmd --permanent --zone=trusted --add-source=192.168.1.0/24
sudo firewall-cmd --permanent --zone=trusted --remove-source=192.168.1.0/24
重新加載firewalld配置:
sudo firewall-cmd --reload
查看當前開放的端口:
sudo firewall-cmd --list-all
根據你的具體需求和Linux發行版選擇合適的方法進行端口管理。