如何通过Linux防火墙限制访问
导读:在Linux系统中,可以使用iptables或firewalld来限制访问。以下是使用这两种方法的简要说明: 方法1:使用iptables 首先,确保iptables已安装在您的系统上。在大多数Linux发行版中,iptables都是预...
在Linux系统中,可以使用iptables或firewalld来限制访问。以下是使用这两种方法的简要说明:
方法1:使用iptables
-
首先,确保iptables已安装在您的系统上。在大多数Linux发行版中,iptables都是预装的。如果没有,请使用包管理器(如apt、yum或zypper)安装。
-
查看当前的iptables规则:
sudo iptables -L
- 添加规则以限制访问。例如,要阻止特定IP地址访问SSH端口(默认为22),可以使用以下命令:
sudo iptables -A INPUT -p tcp --dport 22 -s 123.123.123.123 -j DROP
将123.123.123.123
替换为您要阻止的IP地址。
- 若要允许特定IP地址访问SSH端口,可以使用以下命令:
sudo iptables -A INPUT -p tcp --dport 22 -s 123.123.123.123 -j ACCEPT
- 保存iptables规则,以便在系统重启后仍然生效。这取决于您的Linux发行版。在Debian和Ubuntu上,可以使用以下命令:
sudo iptables-save >
/etc/iptables/rules.v4
在Red Hat和CentOS上,可以使用以下命令:
sudo service iptables save
方法2:使用firewalld
-
首先,确保firewalld已安装在您的系统上。在大多数Linux发行版中,firewalld都是预装的。如果没有,请使用包管理器(如apt、yum或zypper)安装。
-
启动firewalld服务并设置为开机启动:
sudo systemctl start firewalld
sudo systemctl enable firewalld
- 查看当前的firewalld配置:
sudo firewall-cmd --list-all
- 添加规则以限制访问。例如,要阻止特定IP地址访问SSH端口(默认为22),可以使用以下命令:
sudo firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="123.123.123.123" port protocol="tcp" port="22" reject'
将123.123.123.123
替换为您要阻止的IP地址。
- 若要允许特定IP地址访问SSH端口,可以使用以下命令:
sudo firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="123.123.123.123" port protocol="tcp" port="22" accept'
- 重新加载firewalld配置以应用更改:
sudo firewall-cmd --reload
这样,您就可以通过iptables或firewalld限制Linux系统上的访问了。请注意,这些命令可能需要root权限。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: 如何通过Linux防火墙限制访问
本文地址: https://pptw.com/jishu/719804.html