在CentOS上使用iptables限制访问可以通过以下步骤实现:
CentOS 7及以上版本默认已经安装了iptables,但如果没有,可以使用以下命令安装:
sudo yum install iptables-services
sudo systemctl start iptables
sudo systemctl enable iptables
sudo iptables -L -n -v
以下是一些常见的iptables规则示例:
sudo iptables -A INPUT -s 192.168.1.100 -p tcp --dport 80 -j ACCEPT
这条规则允许IP地址为192.168.1.100的设备访问本机的80端口(HTTP)。
sudo iptables -A INPUT -p tcp --dport 80 -j DROP
这条规则会拒绝所有其他IP地址访问本机的80端口。
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
这条规则允许所有IP地址访问本机的22端口(SSH)。
sudo iptables -A INPUT -p tcp --dport 1:65535 -j DROP
这条规则会拒绝所有其他端口的访问。
CentOS 7及以上版本使用firewalld来管理防火墙规则,但iptables规则不会自动保存。可以使用以下命令保存iptables规则:
sudo service iptables save
或者使用iptables-save命令:
sudo iptables-save > /etc/sysconfig/iptables
sudo systemctl restart iptables
再次查看iptables规则以确认更改已生效:
sudo iptables -L -n -v
sudo iptables-save > /etc/sysconfig/iptables.backup
firewalld来管理防火墙规则,因为firewalld提供了更友好的界面和动态规则管理功能。通过以上步骤,你可以在CentOS上使用iptables限制访问。