之前讲到过linux centos 6以前旧版使用iptables 防火墙,而新版的centos7之后使用firewalld 防火墙:
要看firewalld的设置方法请移步:
而本篇只介绍iptables防火墙的设置方法,毕竟至少运维旧版linux要用到,当然你也可以卸载firewalld安装回iptables
1.查看防火墙的状态
service iptables status
也可以通过iptables -L 命令来查看防火墙的规则
2.开启防火墙
1) 重启后生效
开启: chkconfig iptables on
2) 即时生效,重启后失效
开启: service iptables start
3.关闭防火墙
1) 重启后生效
关闭: chkconfig iptables off
2) 即时生效,重启后失效
关闭: service iptables stop
4.关闭所有端口
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP
再用命令iptables -L -n 查看 是否设置好, 好看到全部 DROP 了
5.开放所有端口
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
6.开放某个端口
下面我只打开22端口,看我是如何操作的,就是下面2个语句
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT
再查看下 iptables -L -n 是否添加上去, 看到添加了
7.禁止某个IP访问
iptables -A INPUT -p tcp -s 192.168.1.2 -j DROP
这里意思就是 -A 就是添加新的规则, 怎样的规则呢? 由于我们访问网站使用tcp的,
我们就用 -p tcp , 如果是 udp 就写udp,这里就用tcp了, -s就是 来源的意思,
ip来源于 192.168.1.2 ,-j 怎么做 我们拒绝它 这里应该是 DROP
8.注意任何设置都要调用保存命令
service iptables save