iptables如何仅允许指定IP地址或IP段连接

发布时间:2020-01-05编辑:脚本学堂
如何在iptables中仅允许指定ip地址或ip段连接ssh,仅允许某IP或者IP段远程连接,使用iptables过滤规则来设置,一起来学习下。

需求:
保护ssh端口的安全,对该端口仅允许某IP地址或者ip段连接。

使用linux iptables过滤规则,先写允许连接的规则,再写拒绝连接的规则。
如果所连接的ip符合第一条规则则让其通过,如果不在第一条规则内的ip则跳到下一条规则进行匹配。

iptables规则,如下:
 

复制代码 代码示例:
iptables -A INPUT -s IP -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -j DROP

封单个IP:
 

iptables -I INPUT -s 211.1.1.1 -j DROP

封一个C段IP:
 

iptables -I INPUT -s 211.1.0.0/16 -j DROP

封一个B段IP:
 

iptables -I INPUT -s 211.0.0.0/8 -j DROP

iptables服务启动自运行有三个方法:
1、将以上脚本保存加到/etc/rc.local中。
2、

iptables-save >/etc/sysconfig/iptables


把当前iptables规则放到/etc/sysconfig/iptables中,系统启动iptables时自动执行。
3、

service iptables save


把当前的iptables规则放/etc/sysconfig/iptables中,系统启动iptables时自动执行。

要点:
建议选择2与3,一般iptables服务会在network服务之前启来,更安全。
服务启动的先后顺序不同,安全保障级别也是不一样的,切记。