一、centos 6及以下版本

1、防火墙基本操作

1) 永久性生效,重启后不会复原

chkconfig iptables on    #开启防火墙
chkconfig iptables off   #关闭防火墙

2) 即时生效,重启后复原

service iptables start   #开启防火墙
service iptables stop    #关闭防火墙
service iptables status  #查看防火墙状态

2、开启某个端口

1)如要开放80端口,输入以下命令即可

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

2)然后保存配置

/etc/rc.d/init.d/iptables save

3)重启防火墙

/etc/init.d/iptables restart 

4)查看打开的端口

/etc/init.d/iptables status

二、centos 7及以上版本

CentOS 7默认使用的是firewall作为防火墙,使用iptables必须重新设置一下

1、防火墙基本操作

systemctl status  firewalld  #查看防火墙状态
systemctl start   firewalld  #启动防火墙
systemctl stop    firewalld  #关闭防火墙
systemctl disable firewalld  #开机禁用防火墙
systemclt enable  firewalld  #开机启动防火墙

2、配置firewall-cmd

firewall-cmd --version                         #查看版本
firewall-cmd --help                            #查看帮助
firewall-cmd --state                           #显示状态
firewall-cmd --reload                          #更新防火墙规则
firewall-cmd --list-ports                      #查看所有打开端口
firewall-cmd --add-port=80/tcp                 #添加端口
firewall-cmd --get-active-zones                #查看区域信息
firewall-cmd --get-zone-of-interface=eth0      #查看指定接口所属区域
firewall-cmd --panic-on                        #拒绝所有包
firewall-cmd --panic-off                       #取消拒绝状态
firewall-cmd --query-panic                     #查看是否拒绝

3、开放某个端口

1)启动防火墙

systemctl start firewalld

2)添加端口

firewall-cmd --zone=public --add-port=80/tcp --permanent #–permanent永久生效,没有此参数重启后失效

3)重新载入配置

firewall-cmd --reload

4)验证是否成功

firewall-cmd --zone=public --list-ports
firewall-cmd --zone=public --query-port=80/tcp

5)删除添加的开放端口

firewal-cmd --zone=public --remove-port=80/tcp --permanent