linux centos7系统想限制特定的IP进行远程连接,如何配置,如果用防火墙形式禁用可以实现吗?
时间: 2024-12-13 20:14:47 浏览: 14
在 CentOS 7 系统中,如果你想限制特定的 IP 地址进行远程 SSH 登录,你可以通过防火墙(firewall-cmd 或者 iptables)来实现这一目标。以下是两个常见的防火墙工具的配置步骤:
**1. 使用 firewall-cmd:**
这是 CentOS 7 的默认防火墙工具。首先,你需要安装它(如果尚未安装):
```
sudo yum install firewalld
```
然后,你可以创建一个新的规则来阻止特定 IP 连接,例如只允许从白名单 IP 访问:
```bash
sudo firewall-cmd --add-rich-rule='rule family="ipv4" source address="192.168.0.1/32,8.8.8.8/32" port protocol=tcp destination port=22 accept'
```
这里假设你想允许 `192.168.0.1` 和 Google DNS 的地址访问 SSH。接着激活规则并重启服务:
```
sudo firewall-cmd --reload
```
**2. 使用 iptables:**
如果你更倾向于直接操作iptables,可以执行以下步骤:
```bash
sudo iptables -A INPUT -s <ip_address> -p tcp --dport 22 -j DROP
```
将 `<ip_address>` 替换为你想要禁止的IP地址。这会拒绝所有来自该IP的TCP连接到端口22(SSH默认端口)。
完成上述操作后,只有指定的IP才能成功远程登录。不过请注意,如果需要长期保持这个设置,建议将规则添加到系统启动脚本或者防火墙的服务配置文件中,以免误删或忘记更改。
阅读全文