在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发行版选择合适的方法进行端口管理。