在linux操作系统中,可以通过iptables或firewalld实现访问控制。以下分别介绍这两种方式的具体操作:
- 使用iptables进行访问限制
iptables是一款用于设置内核防火墙规则的命令行工具。以下是几个常见的iptables规则示例:
- 禁止某个IP地址访问:
sudo iptables -A INPUT -s 192.168.1.100 -j DROP
- 屏蔽特定端口(例如屏蔽80端口):
sudo iptables -A INPUT -p tcp --dport 80 -j DROP
- 允许指定IP访问特定端口(如允许IP 192.168.1.100访问80端口):
sudo iptables -A INPUT -s 192.168.1.100 -p tcp --dport 80 -j ACCEPT
- 保存当前iptables规则:
sudo iptables-save > /etc/iptables/rules.v4
- 使用firewalld进行访问限制
firewalld是一个支持动态管理防火墙的工具。下面是几个常用的firewalld命令示例:
- 安装firewalld(如果尚未安装):
sudo apt-get install firewalld
- 启动firewalld服务:
sudo systemctl start firewalld
- 拒绝特定IP的访问请求:
sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.100" reject'
- 阻止访问特定端口(例如阻止TCP协议的80端口):
sudo firewall-cmd --permanent --add-port=80/tcp --zone=public --add-rich-rule='rule family="ipv4" port protocol="tcp" port="80" reject'
- 授权某个IP访问特定端口(如允许IP 192.168.1.100访问TCP 80端口):
sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.100" port protocol="tcp" port="80" accept'
- 刷新firewalld配置以使新规则生效:
sudo firewall-cmd --reload
提示:以上规则仅适用于IPv4网络环境。若需对IPv6进行类似限制,请根据需要调整相关规则参数。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END