Files
StudyDiary-20261009/10-WebClipper/Centos之防火墙/服务管理(firewall/iptables)命令详细说明_centos7如何判断所用的是 firewall 还是iptables-CSDN博客.md
CrazyJasonwell e97be9ac8c commit all
2026-10-09 22:06:40 +08:00

390 lines
5.9 KiB
Markdown
Executable File
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
Centos之防火墙/ 服务管理 命令详细说明
-----------------------
### 1、Centos7
> 在Centos7中使用firewall来代替ipables,但是iptables也可以继续安装使用,以下是firewall的操作命令
#### 1、启动防火墙
```
`systemctl start firewalld`
* 1
```
![](https://i-blog.csdnimg.cn/blog_migrate/2fd02f7f1c962a5dc11fb105e5d60791.png)
2、查看防火墙的状态
```
`systemctl status firewalld`
* 1
```
![](https://i-blog.csdnimg.cn/blog_migrate/ea70e175dc338c0dad7e94410dcbd3c6.png)
#### 3、关闭防火墙
```
`systemctl stop firewalld`
* 1
```
![](https://i-blog.csdnimg.cn/blog_migrate/6833c0e176af9e99ed59755095836391.png)
#### 4、设置防火墙开机自启
```
`systemctl enable firewalld.service`
* 1
```
![](https://i-blog.csdnimg.cn/blog_migrate/4a74410c12c18d6eab682db8601ba6c0.png)
#### 5、关闭防火墙开机启动(需先关闭防火墙)
```
`systemctl disable firewalld.service`
* 1
```
#### 6、查看firewall的状态
```
`firewall-cmd --state`
* 1
```
![](https://i-blog.csdnimg.cn/blog_migrate/0b68bac13bb385908a727fcab48218d6.png)
#### 7、查看防火墙规则
```
`firewall-cmd --list-all`
* 1
```
![](https://i-blog.csdnimg.cn/blog_migrate/683c9b7f5e86e266f97141b4f042418a.png)
#### 8、重新加载防火墙配置
```
`firewall-cmd --reload`
* 1
```
![](https://i-blog.csdnimg.cn/blog_migrate/144a3be65dfa54cc05ad7edd11059fc5.png)
#### 9、查看当前开放端口(允许任意IP访问)
```
`firewall-cmd --zone=public --list-ports`
* 1
```
![](https://i-blog.csdnimg.cn/blog_migrate/6ae579e652151bef7e5cce95531cedc8.png)
#### 10、开放指定端口
```
`firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --reload
// --permanent为永久生效,没有此参数 服务器重启后配置失效`
* 1
* 2
* 3
```
![](https://i-blog.csdnimg.cn/blog_migrate/d1514e1f88ea680ad9daf0432cd217f0.png)
查看规则
![](https://i-blog.csdnimg.cn/blog_migrate/1606f5e02debebfbcdc13936236b54b4.png)
#### 11、移除端口
```
`firewall-cmd --zone=public --remove-port=80/tcp --permanent
firewall-cmd --reload`
* 1
* 2
```
![](https://i-blog.csdnimg.cn/blog_migrate/a379914fc9c105203ea000be215db546.png)
> 可以看到80端口已经被移除了
#### 12 、其他 命令 暂时用不到
##### 查看允许指定IP访问端口的规则
```
`firewall-cmd --zone=public --list-rich-rules`
* 1
```
##### 开放指定端口(只允许指定IP访问)
以“只允许192.168.1.1的主机连接3306端口”为例
```
`firewall-cmd --add-rich-rule="rule family="ipv4" source address="192.168.1.1" port protocol="tcp" port="3306" accept" --permanent
firewall-cmd --reload`
* 1
* 2
```
PS. --permanent为永久生效,没有此参数centos重启后该配置将失效
##### 移除规则(只允许指定IP访问的端口)
以“移除只允许192.168.1.1的主机连接3306端口”为例
```
`firewall-cmd --remove-rich-rule="rule family="ipv4" source address="192.168.1.1" port protocol="tcp" port="3306" accept" --permanent
firewall-cmd --reload`
* 1
* 2
```
ps --permanent为永久生效,没有此参数centos重启后该配置将失效
##### 移除默认的ssh服务
移除默认的ssh服务前,先确认是否已经额外开放了22端口,否则会导致无法使用ssh 远程连接 。
```
`firewall-cmd --remove-service=ssh --permanent
firewall-cmd --reload`
* 1
* 2
```
PS. --permanent为永久生效,没有此参数centos重启后该配置将失效
##### 查看某个端口是否开放
以检查80端口为例(yes:开放;no:未开放)
```
`firewall-cmd --zone=public --query-port=80/tcp`
* 1
```
##### TCP端口转发
\# 允许防火墙伪装IP
```
`firewall-cmd --add-masquerade`
* 1
```
\# 将本地80端口的流量转发到192.168.1.1的80端口
```
`firewall-cmd --add-forward-port=port=80:proto=tcp:toaddr=192.168.1.1:toport=80 --permanent`
* 1
```
PS. --permanent为永久生效,没有此参数centos重启后该配置将失效
```
`查看版本:firewall-cmd --version
查看帮助: firewall-cmd --help
查看状态: firewall-cmd --state
查看区域信息: firewall-cmd --get-active-zones
查看指定接口所属区域: firewall-cmd --get-zone-of-interface=eth0
拒绝所有包:firewall-cmd --panic-on
取消拒绝状态: firewall-cmd --panic-off
查看是否拒绝: firewall-cmd --query-panic`
![](https://csdnimg.cn/release/blogv2/dist/pc/img/runCode/icon-arrowwhite.png)
* 1
* 2
* 3
* 4
* 5
* 6
* 7
* 8
* 9
* 10
* 11
* 12
* 13
* 14
* 15
```
### 2、Centos6
#### 1、查看当前防火墙的状态
```
`service iptables status`
* 1
```
![](https://i-blog.csdnimg.cn/blog_migrate/72b21506f284d703fa31e5025f18a992.png)
#### 2、关闭防火墙
```
`service iptables stop`
* 1
```
![](https://i-blog.csdnimg.cn/blog_migrate/25353198365ce50d40871403009c32a1.png)
#### 3、查看服务名
```
`setup
ls /etc/init.d/`
* 1
* 2
```
![](https://i-blog.csdnimg.cn/blog_migrate/cd00ad773aed499414e69b4a8b53ce2a.png)
#### 4、自启动
```
`chkconfig功能说明:检查,设置系统的各种服务
语法:
chkconfig [--add][--del][--list][系统服务] 或
chkconfig [--level<等级代号>][系统服务][on/off/reset]
--add 添加服务
--del 删除服务
--list 查看各服务启动状态`
* 1
* 2
* 3
* 4
* 5
* 6
* 7
```
给每个服务的各个运行级别设置自启动/关闭
##### 1、查看服务
```
`chkconfig --list`
* 1
```
![](https://i-blog.csdnimg.cn/blog_migrate/361b203b62affe90c89a1d0fc3a17a71.png)
##### 2 查看单个服务 信息
```
`chkconfig iptables --list
chkconfig --list | grep iptables`
* 1
* 2
```
##### 3关闭自启动
```
`chkconfig --level 5 sshd off`
* 1
```
##### 4在所有模式下关闭/打开自启动
```
`chkconfig 服务名 on/off`
* 1
```