关于linux中防火墙的命令

文章介绍了在Linux6.5和CentOS7.3环境下如何管理防火墙,包括查看、开启、关闭iptables和firewalld服务。同时,提供了检查和管理端口的命令,如netstat。对于firewalld,详细列出了添加、删除服务以及端口的命令,并提到了错误处理情况。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


linux不同版本防火墙是不同的,命令如下

一、linux 6.5 下

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

二、linux 7.0 下 (CentOs7.3)

linux 7.0 以上默认安装 firewalld

常用命令

systemctl status firewalld ## 查看防火墙状态
systemctl status firewalld.service ##查看防火墙状态

systemctl disable firewalld ## 停止并禁用开机启动
systemctl disable firewalld.service ##设置禁止开机启动防火墙

systemctl stop firewalld ## 禁用防火墙
systemctl stop firewalld.service ##临时关闭防火墙

systemctl start firewalld  ## 启动防火墙
systemctl start firewalld.service ##启动防火墙

systemctl enable firewalld ## 设置开机启动
systemctl enable firewalld.service ##设置开机启动防火墙

Firewall 常用的命令:

firewall-cmd --state ## 查看防火墙状态,是否是running
firewall-cmd --reload ## 重启防火墙
firewall-cmd --permanent --query-port=80/tcp ## 查看80端口有没开放
firewall-cmd --list-all ## 查看开放的端口号, 列出系统当中用名称代表的服务
firewall-cmd --zone=public --list-all ## 查看开放的端口号
firewall-cmd --get-zones ## 列出支持的zone
firewall-cmd --get-services ## 列出预定义的服务,打开防火墙界面
firewall-cmd --query-service ftp ## 查看ftp服务是否放行,返回yes或者no
firewall-cmd --add-service=ftp ## 临时开放ftp服务
firewall-cmd --add-service=ftp --permanent ## 永久开放ftp服务
firewall-cmd --remove-service=ftp --permanent ## 永久移除ftp服务
firewall-cmd --add-port=80/tcp --permanent ## 永久添加80端口
firewall-cmd --add-service=http --permanent   ## 永久开启http访问
firewall-cmd --zone=public --remove-port=80/tcp --permanent ## 移除80端口
firewall-cmd --get-active-zones                        #查看默认的域
firewall-cmd --get-default-zone                        #查看所有的域
firewall-cmd --zone=block –list-all                   #查看所有域的状态
firewall-cmd --list-all-zones                         #列出所有域的规则
iptables -L -n ## 查看规则,这个命令是和iptables的相同的
man firewall-cmd ## 查看帮助
# 参数含义:
--zone ## 作用域
--permanent ## 永久生效,没有此参数重启后失效

三、关于端口的一些命令

netstat -lnt | grep 80 ## 检查80端口是否开放
netstat -tunlp|grep 端口号   ## 查看指定端口号的进程情况

tunlp的含义

-t 仅显示和tcp相关的
-u 仅显示和udp相关的
-n 不限时别名,能显示数字的全部转换为数字
-l 仅显示出于Listen(监听)状态的
-p 显示建立这些连接的程序名

四、一些状况

如果开启防火墙出现如下错误
在这里插入图片描述

启动后发现提示Failed to start firewalld.service:Unit is masked
systemctl unmask firewalld ## 移除这个文件
然后再次启动就成功了

启动成功的状态:
在这里插入图片描述

### Linux 防火墙相关命令 #### 使用 `iptables` 进行管理 对于基于 `iptables` 的防火墙操作,可以通过一系列命令来实现规则的增加、删除和查看: - **添加规则** 要允许特定端口上的流量,比如HTTP (80/tcp),可以执行如下命令[^1]: ```bash sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT ``` - **保存规则** 为了使更改永久生效,需保存当前设置。不同发行版有不同的方法存储这些规则;例如,在某些版本中可使用: ```bash sudo service iptables save ``` - **清空现有规则** 如果想要清除所有现存链中的规则,则运行下面这条指令: ```bash sudo iptables -F ``` #### 利用 `firewalld` 控制防火墙策略 现代Linux系统更倾向于采用动态管理和即时反馈更好的工具——`firewalld`。 - **启动与停止服务** 开启或关闭该守护进程可通过以下方式完成: ```bash sudo systemctl start firewalld sudo systemctl stop firewalld ``` - **查询状态和服务区信息** 获取当前活动的状态以及所处的工作模式(即区域),可以用到这样的语句: ```bash sudo firewall-cmd --state sudo firewall-cmd --get-active-zones ``` - **调整公共区域内开放的服务项目** 当需要移除不再必要的服务时,像SSH或者DHCP客户端支持等功能,应采取下列措施[^4]: ```bash sudo firewall-cmd --zone=public --remove-service=ssh sudo firewall-cmd --zone=public --remove-service=dhcpv6-client ``` 此外,还可以通过编辑XML格式配置文档的方式直接设定更加复杂的规则集[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值