Centos中防火墙相关操作

本文详细介绍了在CentOS7系统中如何使用firewall和iptables进行防火墙配置。包括查看、开启、关闭防火墙状态,开放指定端口,如80端口,以及如何保存配置使更改永久生效。适用于系统管理员和运维人员。

CentOS 7版本之后启用firewall防火墙默认不开放任何端口

firewall

查看状态

systemctl status firewalld.service

关闭/开启

systemctl stop firewalld.service     systemctl start firewalld.service

查看已开放的端口(默认不开放任何端口)
firewall-cmd --list-ports
开启80端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
重启防火墙
firewall-cmd --reload
禁止防火墙开机启动
systemctl disable firewalld.service
删除
firewall-cmd --zone=public --remove-port=80/tcp --permanent

iptables

开放80端口
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 80 -j ACCEPT
保存
/etc/init.d/iptables save
查看打开的端口
/etc/init.d/iptables status
关闭防火墙
永久性生效,重启后不会复原
开启: chkconfig iptables on
关闭: chkconfig iptables off
即时生效,重启后复原
开启: service iptables start
关闭: service iptables stop

### CentOS 防火墙命令使用教程 #### 查看防火墙状态 为了确认防火墙当前的状态,可以执行以下命令: ```bash sudo firewall-cmd --state ``` 这条指令会返回`running`表示正在运行,如果未激活则不会有任何输出[^4]。 #### 启动防火墙服务 当需要启动防火墙时,应使用如下命令: ```bash sudo systemctl start firewalld.service ``` 这将立即启用防火墙保护机制[^3]。 #### 关闭防火墙服务 要临时关闭防火墙而不影响下次开机自动加载的情况,可输入下列命令: ```bash sudo systemctl stop firewalld.service ``` 此操作仅对本次会话有效,在系统重启之后防火墙仍会被重新启动[^1]。 #### 设置防火墙随系统启动/不随系统启动 对于希望永久改变防火墙是否跟随系统一起启动的需求,有两条对应的命令分别用于开启和禁用该功能: - 开启:`sudo systemctl enable firewalld.service` - 禁用:`sudo systemctl disable firewalld.service` 这些设置会在每次计算机重置后生效。 #### 添加新端口到防火墙规则中 假设想要允许外部访问服务器上的HTTP (80/tcp) 和 HTTPS (443/tcp),那么可以通过下面的方式添加相应的端口号至公共区域内的入站流量策略里: ```bash sudo firewall-cmd --zone=public --add-port=80/tcp --permanent sudo firewall-cmd --zone=public --add-port=443/tcp --permanent ``` 这里的关键在于`--permanent`参数意味着所做的更改将会保存下来并持久化应用;如果不加这个选项,则修改只适用于当前session期间。 #### 移除已存在的端口规则 若不再需要某些特定的服务对外开放接口,比如之前加入过的SSH连接(22/tcp),现在决定移除它的话,应该这样写: ```bash sudo firewall-cmd --zone=public --remove-port=22/tcp --permanent ``` 同样地,记得加上`--permanent`以确保变动能够长期保留下去。 #### 刷新防火墙配置使之即时生效 每当进行了任何关于端口或其他资源的增删动作以后,都需要告诉firewalld去更新其内部缓存的数据结构从而让最新的安全政策得以实施。为此目的而设计的一条简单却重要的语句就是: ```bash sudo firewall-cmd --reload ``` 通过这种方式可以让所有的变更立刻得到体现,无需担心延迟问题。 #### 查询现有开放端口列表 最后但并非最不重要的是,了解目前有哪些端口处于可用状态是非常有用的。利用下述方法可以获得一份清晰明了的结果报告: ```bash sudo firewall-cmd --list-ports ``` 上述命令将以简洁的形式展示所有被授权接收外来请求的目标地址范围。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值