Centos防火墙

CentOS防火墙操作指南
重启防火墙
/etc/init.d/iptables restart


CentOS防火墙的关闭,关闭其服务即可:
查看CentOS防火墙信息:/etc/init.d/iptables status
关闭CentOS防火墙服务:/etc/init.d/iptables stop
### CentOS 防火墙配置和管理指南 #### 防火墙服务管理 在 CentOS 7 及更高版本中,`firewalld` 是默认的防火墙管理工具。它支持动态更新规则,而无需重启整个防火墙服务。以下是基本的防火墙服务管理命令: - **查看防火墙状态**: ```bash firewall-cmd --state systemctl status firewalld ``` - **启动防火墙**: ```bash systemctl start firewalld ``` - **停止防火墙**: ```bash systemctl stop firewalld ``` - **设置防火墙开机启动**: ```bash systemctl enable firewalld ``` - **禁用防火墙开机启动**: ```bash systemctl disable firewalld ``` #### 端口管理 管理端口是配置防火墙的核心任务之一,可以动态添加或删除端口,但需要重新加载防火墙配置以使更改生效。 - **查看已开放的端口**: ```bash firewall-cmd --list-ports ``` - **开放指定端口(如 80)**: ```bash firewall-cmd --zone=public --add-port=80/tcp --permanent ``` - **关闭指定端口(如 80)**: ```bash firewall-cmd --zone=public --remove-port=80/tcp --permanent ``` - **重新加载防火墙配置**: ```bash firewall-cmd --reload ``` #### 服务管理 除了管理端口外,还可以管理预定义的服务。例如,HTTP 服务通常与端口 80 相关联。 - **查看所有开放的服务**: ```bash firewall-cmd --list-services ``` - **添加服务(如 HTTP)**: ```bash firewall-cmd --zone=public --add-service=http --permanent ``` - **移除服务(如 HTTP)**: ```bash firewall-cmd --zone=public --remove-service=http --permanent ``` #### 防火墙配置文件 `firewalld` 的配置文件位于 `/etc/firewalld/` 目录下,主要包含以下文件和目录: - **主配置文件**:`/etc/firewalld/firewalld.conf`,用于定义全局设置。 - **区域配置目录**:`/etc/firewalld/zones/`,每个区域都有一个 XML 文件,用于定义该区域的规则。 - **服务定义目录**:`/etc/firewalld/services/`,每个服务都有一个 XML 文件,描述该服务使用的端口和协议。 #### 动态配置与持久化 `firewalld` 支持运行时配置和持久化配置。运行时配置在重启后会丢失,而持久化配置则会保留。使用 `--permanent` 参数可将规则写入持久化配置,需通过 `--reload` 使更改生效。 - **查看运行时配置**: ```bash firewall-cmd --list-all ``` - **查看持久化配置**: ```bash firewall-cmd --list-all --permanent ``` #### 防火墙区域管理 `firewalld` 使用区域(zones)来组织网络连接的信任级别。默认区域是 `public`,但可以根据需求切换或创建新的区域。 - **查看当前区域**: ```bash firewall-cmd --get-default-zone ``` - **设置默认区域**: ```bash firewall-cmd --set-default-zone=home ``` - **查看所有可用区域**: ```bash firewall-cmd --get-zones ``` - **将接口添加到特定区域**: ```bash firewall-cmd --zone=trusted --add-interface=eth0 --permanent ``` #### 示例:配置 Web 服务器的防火墙 假设需要配置一个 Web 服务器,开放 HTTP(80)和 HTTPS(443)端口,并允许 SSH(22)连接。 1. **开放 HTTP 和 HTTPS 端口**: ```bash firewall-cmd --zone=public --add-port=80/tcp --permanent firewall-cmd --zone=public --add-port=443/tcp --permanent ``` 2. **开放 SSH 端口**: ```bash firewall-cmd --zone=public --add-port=22/tcp --permanent ``` 3. **重新加载防火墙配置**: ```bash firewall-cmd --reload ``` 4. **验证开放的端口**: ```bash firewall-cmd --list-ports ``` #### 常见问题排查 - **防火墙未启动**:确保防火墙服务已启动且设置为开机启动。 - **规则未生效**:检查是否使用了 `--permanent` 参数,并确认已执行 `--reload`。 - **端口冲突**:确保没有其他服务占用目标端口。 - **日志查看**:可以通过 `journalctl` 查看防火墙日志,帮助排查问题: ```bash journalctl -u firewalld ``` ####
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值