Linux 禁止访问 www.baidu.com 以外的 80 和 443 端口
Linux 设置禁止访问 www.baidu.com 以外的所有 80 端口和 443 端口
本文介绍两种方法,使用 iptables 和 firewalld 命令,在 Linux 系统中设置禁止访问 www.baidu.com 以外的所有 80 和 443 端口。
1. 使用 iptables 命令
可以使用 iptables 命令设置 Linux 系统禁止访问 www.baidu.com 以外的所有 80 端口和 443 端口。具体步骤如下:
1.1 查看当前 iptables 规则
可以使用以下命令查看当前 iptables 规则:
sudo iptables -L
1.2 创建新的 iptables 规则
可以使用以下命令创建新的 iptables 规则:
sudo iptables -A INPUT -p tcp --dport 80 -m string --string 'www.baidu.com' --algo bm -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 443 -m string --string 'www.baidu.com' --algo bm -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 80 -j DROP
sudo iptables -A INPUT -p tcp --dport 443 -j DROP
以上命令的作用分别为:
- 允许访问 www.baidu.com 的 80 端口和 443 端口
- 禁止所有其他的 80 端口访问
- 禁止所有其他的 443 端口访问
1.3 保存新的 iptables 规则
可以使用以下命令保存新的 iptables 规则:
sudo iptables-save > /etc/sysconfig/iptables
1.4 重启 iptables 服务
可以使用以下命令重启 iptables 服务:
sudo systemctl restart iptables
2. 使用 firewalld 命令
可以使用 firewalld 命令设置 Linux 系统禁止访问 www.baidu.com 以外的所有 80 端口和 443 端口。具体步骤如下:
2.1 查看当前 firewalld 规则
可以使用以下命令查看当前 firewalld 规则:
sudo firewall-cmd --list-all
2.2 创建新的 firewalld 规则
可以使用以下命令创建新的 firewalld 规则:
sudo firewall-cmd --zone=public --add-rich-rule='rule family="ipv4" source address="www.baidu.com" port protocol="tcp" port="80" accept'
sudo firewall-cmd --zone=public --add-rich-rule='rule family="ipv4" source address="www.baidu.com" port protocol="tcp" port="443" accept'
sudo firewall-cmd --zone=public --add-rich-rule='rule family="ipv4" port protocol="tcp" port="80" drop'
sudo firewall-cmd --zone=public --add-rich-rule='rule family="ipv4" port protocol="tcp" port="443" drop'
以上命令的作用分别为:
- 允许访问 www.baidu.com 的 80 端口和 443 端口
- 禁止所有其他的 80 端口访问
- 禁止所有其他的 443 端口访问
2.3 保存新的 firewalld 规则
可以使用以下命令保存新的 firewalld 规则:
sudo firewall-cmd --runtime-to-permanent
2.4 重启 firewalld 服务
可以使用以下命令重启 firewalld 服务:
sudo systemctl restart firewalld
原文地址: https://www.cveoy.top/t/topic/nTfU 著作权归作者所有。请勿转载和采集!