CentOS7中防火墙相关的命令

  • 1、firewall相关的操作

  • 2、iptables相关的操作
    2.1、常规命令
    2.2、使用编辑文件的方式开放特定的端口
    2.2.1、修改规则
    2.2.2、添加放行的端口
    2.2.3、重启iptables防火墙
    2.2.4、测试端口放行效果
    2.3使用执行命令的方式开放特定端口
    2.3.1执行命令
    2.3.2测试
    关键字: Linux CentOS firewall iptables
    CentOS中防火墙程序主要是firewall和iptables,CentOS7中firewall服务已经默认安装好了,而iptables服务需要自己用yum install iptabes-services来安装。

说明:以下演示均在CentOS7中进行,其他版本也大同小异

1、firewall相关的操作

  • 查看防火墙状态
firewall-cmd    --state

  • 关闭防火墙
systemctl  stop   firewalld.service
  • 开启防火墙
systemctl  start   firewalld.service
  • 禁止开机启动启动防火墙
systemctl   disable   firewalld.service

2、iptables相关的操作

2.1常规命令

iptables服务需要自己安装,命令是:

yum install  iptables-services

如图:

  • 开启iptables防火墙的命令是:
systemctl  start  iptables.service
  • 重启iptables防火墙的命令是:
systemctl  restart  iptables.service
  • 关闭iptables防火墙的命令是:
systemctl  stop  iptables.service
  • 查看iptables防火墙状态的命令是:
systemctl  status  iptables.service

如图:

image

2.2使用编辑文件的方式开放特定的端口

很多时候,需要开启防火墙,但是放行某些特定的端口,如何在防火墙开启的状态下,放行50007端口?按照下面的步骤做。

2.2.1修改规则

主要是编辑/etc/sysconfig/iptables文件,编辑方法很多,可以使用vim编辑,也可以直接把该文件下载到本地,用本地工具编辑.

将原来的内容    :INPUTACCEPT [0:0]      修改为  :INPUT DROP[0:0]
将原来的内容    :FORWARDACCEPT [0:0]    修改为  :FORWARD  DROP[0:0]
将原来的内容    :OUTPUT ACCEPT [0:0]    修改为  :OUTPUTACCEPT [0:480]

2.2.2添加放行的端口

iptables文件的末尾有如下三行内容:

-A INPUT -j REJECT--reject-with icmp-host-prohibited

-A FORWARD -j REJECT--reject-with icmp-host-prohibited

COMMIT

在这这三行的前面添加一行放行50070端口的配置内容:

-A INPUT -p tcp -m tcp --dport 50070 -j ACCEPT

同理,如果要放行80端口,就添加一行:

-A INPUT -p tcp -m tcp --dport  80 -j ACCEPT

修改完成后,我的/etc/sysconfig/iptables文件是这样的:

filter

:INPUT DROP [0:0]

:FORWARD DROP [0:0]

:OUTPUT ACCEPT [0:480]

-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 22-j ACCEPT

-A INPUT -p tcp -m tcp --dport 50070 -j ACCEPT

-A INPUT -j REJECT --reject-with icmp-host-prohibited

-A FORWARD -j REJECT --reject-with icmp-host-prohibited

COMMIT

2.2.3重启iptables防火墙

执行重启iptables防火墙的命令,命令是:

systemctl  restart  iptables.service

如图:

2.2.4测试端口放行效果

在使用命令systemctl stop firewalld.service关闭防火墙,使用命令
systemctl start iptables.service 开启防火墙,但是为配置/etc/sysconfig/iptables 文件,未放行50070端口的情况下,访问以下地址
http://192.168.27.134:50070/dfshealth.html#tab-overview
是访问不了的,如图:

在配置了/etc/sysconfig/iptables文件,添加了放行50070端口,并且重启了iptables防火墙的情况下,在访问该地址:http://192.168.27.134:50070/
发现OK了,如图:

  • 2.3使用执行命令的方式开放特定端口
  • 2.3.1执行命令
    在不手动修改iptables防火墙的配置文件的情况下,使用命令做到放行某些常用端口,命令集合是:
iptables -P INPUT ACCEPT

iptables -F

iptables -X

iptables -Z

iptables -A INPUT -i lo -jACCEPT

iptables -A INPUT -p tcp --dport22 -j ACCEPT

iptables -A INPUT -p tcp --dport21 -j ACCEPT

iptables -A INPUT -p tcp --dport80 -j ACCEPT

iptables -A INPUT -p tcp --dport8080 -j ACCEPT

iptables -A INPUT -p tcp --dport8088 -j ACCEPT

iptables -A INPUT -p tcp --dport443 -j ACCEPT

iptables -A INPUT -p icmp--icmp-type 8 -j ACCEPT

iptables -A INPUT -p tcp --dport50070 -j ACCEPT

iptables -A INPUT -m state --stateRELATED,ESTABLISHED -j ACCEPT 

iptables -P INPUT DROP

iptables -P OUTPUT ACCEPT

iptables -P FORWARD DROP 

service  iptables save
systemctl  restart  iptables.service

如图:

2.3.2测试

  • 测试方法同2.2.4章节,开放端口的效果是一样的。

原文地址: https://blog.csdn.net/pucao_cug/article/details/71758883

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容