Centos7防火墙设置与端口开放的方法

Centos升级到7之后,内置的防火墙已经从iptables变成了firewalld,两种方式都是支持的,用法都差不多。所以,端口 > 的开启还是要从两种情况来说明的,即iptables和firewalld。更多关于CentOs防火墙的最新内容,请参考Redhat官网

一、iptables 方式

Centos7默认安装了firewalld,需要先安装iptables,可以使用yum install iptables进行安装。

1.打开/关闭/重启防火墙
  • 启防火墙(重启后永久生效):hkconfig iptables on

  • 闭防火墙(重启后永久生效):hkconfig iptables off

  • 火墙(即时生效,重启后失效):service iptables start

  • 闭防火墙(即时生效,重启后失效):service iptables stop

  • 启防火墙: service iptables restartd

注:Centos7系统service命令被systemctl代替,用法 systemctl start|stop|restart|status 服务名称

2.查看打开的端口

/etc/init.d/iptables statusservice iptables status

3.打开某个端口(以8080为例)

(1)开启端口

iptables -A INPUT -p tcp --dport 8080 -j ACCEPT

(2)保存并重启防火墙

  • 保存防火墙配置 /etc/rc.d/init.d/iptables saveservice iptables save
  • 重启防火墙 /etc/init.d/iptables restart
4.打开49152~65534之间的端口(命令行方式)

iptables -A INPUT -p tcp --dport 49152:65534 -j ACCEPT

同样,这里需要对设置进行保存,并重启防火墙。

5.其他打开方式

我们还可以通过修改/etc/sysconfig/iptables文件的方式开启端口,如下vi /etc/sysconfig/iptables ,然后在文件中增加一行:

-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 8080 -j ACCEPT

参数说明:
  1. –A :参数就看成是添加一条规则
  2. –p :指定是什么协议,我们常用的tcp 协议,当然也有udp,例如53端口的DNS
  3. –dport: 就是目标端口,当数据从外部进入服务器为目标端口
  4. –sport :数据从服务器出去,则为数据源端口使用
  5. –j :就是指定是 ACCEPT -接收 或者 DROP 不接收

二、firewalld 方式

Centos7默认安装了firewalld,如果没有安装的话,可以使用 yum install firewalld firewalld-config进行安装。

1.启动防火墙

systemctl start firewalld

2.禁用防火墙

systemctl stop firewalld

3.设置开机启动

systemctl enable firewalld

4.停止并禁用开机启动

sytemctl disable firewalld

5.重启防火墙

firewall-cmd --reload

6.查看状态

systemctl status firewalld 或者 firewall-cmd --state

7.查看版本

firewall-cmd --version

8.查看帮助

firewall-cmd --help

9.查看区域信息

firewall-cmd --get-active-zones

10.查看指定接口所属区域信息

firewall-cmd --get-zone-of-interface=eth0

11.拒绝所有包

firewall-cmd --panic-on

12.取消拒绝状态

firewall-cmd --panic-off

13.查看是否拒绝

firewall-cmd --query-panic

14.将接口添加到区域(默认接口都在public)

firewall-cmd --zone=public --add-interface=eth0 (永久生效再加上 --permanent 然后reload防火墙)

15.设置默认接口区域

firewall-cmd --set-default-zone=public (立即生效,无需重启)

16.更新防火墙规则

firewall-cmd --reload或firewall-cmd --complete-reload(两者的区别就是第一个无需断开连接,就是firewalld特性之一动态添加规则,第二个需要断开连接,类似重启服务)

17.查看指定区域所有打开的端口

firewall-cmd --zone=public --list-ports

18.在指定区域打开端口(记得重启防火墙)

firewall-cmd --zone=public --add-port=80/tcp(永久生效再加上 --permanent)

19.在指定区域关闭端口(记得重启防火墙)

firewall-cmd --zone=public --remove-port=80/tcp(永久生效再加上 --permanent)

说明:

–zone 作用域
–add-port=8080/tcp 添加端口,格式为:端口/通讯协议
–permanent 永久生效,没有此参数重启后失效

参考文章:
http://havee.me/linux/2015-01/using-firewalls-on-centos-7.html

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值