CentOS7中关闭firewall,并使用iptables管理防火墙

背景描述

1
在使用Docker时,启用centos7默认的firewall,启动端口映射时,防火墙规则不生效。docker默认使用了iptables防火墙机制。所以需要关闭firewall使用iptables解决。

 

1.关闭默认的firewall防火墙

1
2
systemctl stop firewalld.service 关闭防火墙
systemctl disable firewalld.service 关闭开机启动

  

2.开启iptables

1
2
yum install iptables (根据centOS7的版本和内核,有些版本已经装过,可以跳过此命令)
yum install iptables-services<br>service iptables restart<br>chkconfig iptables on或者systemctl enable iptables.service开机自启<br>

  

3.编辑防火墙文件(开启了21,22,80,3306端口)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
vim /etc/sysconfig/iptables
 
# sampleconfiguration for iptables service 
# # you can edit thismanually or use system-config-firewall 
# # please do not askus to add additional ports/services to this default configuration 
*filter 
:INPUT ACCEPT [0:0] 
:FORWARD ACCEPT [0:0] 
:OUTPUT ACCEPT [0:0] 
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT 
-A INPUT -p icmp -j ACCEPT 
-A INPUT -i lo -j ACCEPT 
-A INPUT -p tcp -m state --state NEW -m tcp --dport 21 -j ACCEPT 
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT 
-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT 
-A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT 
-A INPUT -j REJECT --reject-with icmp-host-prohibited 
-A FORWARD -j REJECT --reject-with icmp-host-prohibited 
COMMIT 

  

4.添加防火墙命令

1
/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT

 

5.查看本机关于IPTABLES的设置情况

1
iptables -L -n

posted on 2018-09-03 14:57  化为雪  阅读(165)  评论(0编辑  收藏  举报

导航