温馨提示×

centos iptables如何允许特定IP

小樊
41
2025-02-24 16:16:16
栏目: 智能运维
Centos服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在 CentOS 系统中,使用 iptables 命令可以配置内核防火墙规则,以允许或拒绝来自特定 IP 地址的流量。以下是一些基本步骤和示例,帮助你允许特定 IP 地址访问你的 CentOS 服务器。

1. 允许特定 IP 访问所有端口

如果你想允许一个特定的 IP 地址访问服务器上的所有端口,可以使用以下命令:

sudo iptables -A INPUT -s <允许的IP地址> -j ACCEPT

例如,要允许 IP 地址 192.168.1.100 访问所有端口,可以运行:

sudo iptables -A INPUT -s 192.168.1.100 -j ACCEPT

2. 允许特定 IP 访问特定端口

如果你只想允许特定 IP 地址访问服务器上的特定端口(例如,SSH 端口 22),可以使用以下命令:

sudo iptables -A INPUT -p tcp -s <允许的IP地址> --dport 22 -j ACCEPT

例如,要允许 IP 地址 192.168.1.100 访问 SSH 端口 22,可以运行:

sudo iptables -A INPUT -p tcp -s 192.168.1.100 --dport 22 -j ACCEPT

3. 保存 iptables 规则

在 CentOS 7 及更高版本中,iptables 规则在系统重启后不会自动保存。你可以使用 firewalld 服务来管理防火墙规则,或者手动保存 iptables 规则。

使用 firewalld 服务

如果你安装并启用了 firewalld 服务,可以使用以下命令来允许特定 IP 访问特定端口:

sudo firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.1.100" port protocol="tcp" port="22" accept'
sudo firewall-cmd --reload

手动保存 iptables 规则

如果你不想使用 firewalld,可以手动保存 iptables 规则。CentOS 7 及更高版本可以使用 iptables-services 包来保存规则:

sudo yum install iptables-services
sudo systemctl enable iptables
sudo systemctl start iptables
sudo service iptables save

对于 CentOS 6,可以使用以下命令:

sudo service iptables save

4. 查看当前的 iptables 规则

你可以使用以下命令查看当前的 iptables 规则:

sudo iptables -L -n -v

这将显示所有当前的防火墙规则,包括允许和拒绝的规则。

通过以上步骤,你应该能够在 CentOS 系统中使用 iptables 允许特定 IP 地址访问你的服务器。

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读:centos iptables如何允许特定IP访问

0