可以通UI 启动防火墙
run setup start firwall
1.启动指令:service iptables start
2.重启指令:service iptables restart
3.关闭指令:service iptables stop
开启:
chkconfig iptables on
关闭:
chkconfig iptables off
即时生效,重启后失效:
开启:
service iptables start
关闭:
service iptables stop
或者:
/etc/init.d/iptables status
会得到一系列信息,说明防火墙开着。
/etc/rc.d/init.d/iptables stop
关闭防火墙
或者:
为了下次启动不启动防火墙,你必须删除
/etc/sysconfig/iptables
1.删除已有规则
在新设定iptables规则时,我们一般先确保旧规则被清除,用以下命令清除旧规则:iptables -F
(or iptables --flush)
2.设置chain策略
对于filter table,默认的chain策略为ACCEPT,我们可以通过以下命令修改chain的策略:iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP
以上命令配置将接收、转发和发出包均丢弃,施行比较严格的包管理。由于接收和发包均被设置为丢弃,当进一步配置其他规则的时候,需要注意针对INPUT和OUTPUT分别配置。当然,如果信任本机器往外发包,以上第三条规则可不必配置。
3.屏蔽指定ip
有时候我们发现某个ip不停的往服务器发包,这时我们可以使用以下命令,将指定ip发来的包丢弃:BLOCK_THIS_IP="x.x.x.x"iptables -A INPUT -i eth0 -p tcp -s "$BLOCK_THIS_IP" -j DROP
以上命令设置将由x.x.x.x ip发往eth0网口的tcp包丢弃。
4.配置服务项
利用iptables,我们可以对日常用到的服务项进行安全管理,比如设定只能通过指定网段、由指定网口通过SSH连接本机:iptables -A INPUT -i eth0 -p tcp -s 192.168.100.0/24 --dport 22 -m state --state NEW,ESTABLESHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT
若要支持由本机通过SSH连接其他机器,由于在本机端口建立连接,因而还需要设置以下规则:iptables -A INPUT -i eth0 -p tcp -s 192.168.100.0/24 --dport 22 -m state --state ESTABLESHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --sport 22 -m state --state NEW,ESTABLISHED -j ACCEPT
类似的,对于HTTP/HTTPS(80/443)、pop3(110)、rsync(873)、MySQL(3306)等基于tcp连接的服务,也可以参照上述命令配置。
对于基于udp的dns服务,使用以下命令开启端口服务:iptables -A OUTPUT -p udp -o eth0 --dport 53 -j ACCEPT
iptables -A INPUT -p udp -i eth0 --sport 53 -j ACCEPT
5.网口转发配置
对于用作防火墙或网关的服务器,一个网口连接到公网,其他网口的包转发到该网口实现内网向公网通信,假设eth0连接内网,eth1连接公网,配置规则如下:iptables -A FORWARD -i eth0 -o eth1 -j ACCEPT
6.端口转发配置
对于端口,我们也可以运用iptables完成转发配置:iptables -t nat -A PREROUTING -p tcp -d 192.168.102.37 --dport 422 -j DNAT --to 192.168.102.37:22
以上命令将422端口的包转发到22端口,因而通过422端口也可进行SSH连接,当然对于422端口,我们也需要像以上“4.配置服务项”一节一样,配置其支持连接建立的规则。
7.DoS***防范
利用扩展模块limit,我们还可以配置iptables规则,实现DoS***防范:iptables -A INPUT -p -tcp --dport 80 -m limit --limit 25/minute --limit-burst 100 -j ACCEPT
--litmit 25/minute 指示每分钟限制最大连接数为25
--litmit-burst 100 指示当总连接数超过100时,启动 litmit/minute 限制
8.配置web流量均衡
我们可以将一台服务器作为前端服务器,利用iptables进行流量分发,配置方法如下:
iptables -A PREROUTING -i eth0 -p tcp --dport 80 -m state --state NEW -m nth --counter 0 --every 3 --packet 0 -j DNAT --to-destination 192.168.1.101:80iptables -A PREROUTING -i eth0 -p tcp --dport 80 -m state --state NEW -m nth --counter 0 --every 3 --packet 0 -j DNAT --to-destination 192.168.1.102:80iptables -A PREROUTING -i eth0 -p tcp --dport 80 -m state --state NEW -m nth --counter 0 --every 3 --packet 0 -j DNAT --to-destination 192.168.1.103:80
以上配置规则用到nth扩展模块,将80端口的流量均衡到三台服务器。
9.将丢弃包情况记入日志
使用LOG目标和syslog服务,我们可以记录某协议某端口下的收发包情况。拿记录丢包情况举例,可以通过以下方式实现。
首先自定义一个chain:iptables -N LOGGING
其次将所有接收包导入LOGGING chain中:iptables -A INPUT -j LOGGING
然后设置日志前缀、日志级别:iptables -A LOGGING -m limit --limit 2/min -j LOG --log-prefix "IPTables Packet Dropped: " --log-level 7
最后将包倒向DROP,将包丢弃:iptables -A LOGGING -j DROP
另可以配置syslog.conf文件,指定iptables的日志输出。
简单的CentOS操作系统防火墙配置及关闭
在使用CentOS操作系统的时候,有时候一些情况下,我们需要对防火墙配置进行一下改变,以及把CentOS操作系统防火墙关闭。
我们在使用CentOS操作系统的时候,我们的防火墙配置很重要,他关系到我们的电脑的安危。有一次在CentOS操作系统下安装配置 ORACLE
数据库的时候,总显示因为网络端口而导致的EM安装失败,遂打算先关闭一下防火墙。碰见了一个防火墙的配置操作说明,我觉得还不错。
一.执行”setup”命令启动文字模式配置实用程序
在”选择一种工具”中选择”防火墙配置”,然后选择”运行工具”按钮,出现防火墙配置界面,将”安全级别”设为”禁用”,然后选择”确定”即可.
或者我们可以在CentOS操作系统使用命令:
#/sbin/iptables
-I INPUT -p tcp –dport 80 -j ACCEPT
#/sbin/iptables -I INPUT -p tcp –dport 22
-j ACCEPT
#/etc/rc.d/init.d/iptables save
二.重启电脑。
1.CentOS操作系统防火墙默认已经开放了80和22端口
2.这里应该也可以不重启计算机:
#/etc/init.d/iptables restart
防火墙的关闭,关闭其服务即可:
3.查看防火墙信息:
#/etc/init.d/iptables status
4.关闭防火墙服务:
#/etc/init.d/iptables stop
三.永久关闭防火墙
我们也可以永久的关闭防火墙,但是我不建议大家这样做.永久关闭防火墙可以这样:
#chkconfig –level 35 iptables
off
也可以直接修改
/etc/sysconfig/iptables
添加一条
-A RH-Firewall-1-INPUT -m
state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
这样,我们就介绍完了如何CentOS操作系统防火墙配置及关闭步骤.
学习记录:
iptables -vnL --line-number --查看端口ID 号
iptables -D INPUT ID号 --删除一条策略
iptables -I INPUT 352 -p tcp -s 10.2.3.192 --dport 3306 -j ACCEPT --增加MYSQL 端口访问