centos 限制国外IP访问22端口
时间: 2023-07-29 22:14:55 浏览: 153
您可以使用iptables来实现在CentOS中限制国外IP访问22端口的目的,具体步骤如下:
1. 首先,需要安装iptables。在终端中执行以下命令进行安装:
```
sudo yum install iptables-services
```
2. 编辑iptables规则文件/etc/sysconfig/iptables,添加以下规则:
```
-A INPUT -p tcp --dport 22 -m geoip ! --src-cc CN -j DROP
```
这个规则的含义是:针对所有从非中国(CN)的IP地址访问22端口的TCP连接,直接DROP掉,即拒绝连接。这个规则的实现基于geoip模块,因此需要安装geoip模块。
3. 安装geoip模块。在终端中执行以下命令进行安装:
```
sudo yum install geoip geoip-devel
```
4. 配置iptables服务启动。在终端中执行以下命令:
```
sudo systemctl enable iptables
sudo systemctl start iptables
```
5. 重启sshd服务。在终端中执行以下命令:
```
sudo systemctl restart sshd
```
这个操作是为了使新的iptables规则生效。
注意:如果您需要让某些国外IP地址可以访问22端口,可以修改iptables规则中的--src-cc参数为对应国家的2位字母代码,如添加以下规则:
```
-A INPUT -p tcp --dport 22 -m geoip --src-cc US -j ACCEPT
```
这个规则的含义是:允许来自美国(US)的IP地址访问22端口的TCP连接。
总之,在执行iptables规则之前,请务必小心谨慎,以免误操作导致服务器的不可用。
阅读全文