引言

CentOS作为一款流行的Linux发行版,其防火墙配置对于保障系统安全至关重要。本文将详细介绍如何在CentOS上配置防火墙,确保系统安全无忧,并帮助用户快速上手。

一、CentOS防火墙概述

1.1 防火墙的概念

防火墙是一种网络安全设备,用于监控和控制进出网络的数据包。它根据预设的规则,允许或阻止数据包的传输,以保护网络不受未经授权的访问。

1.2 CentOS防火墙类型

CentOS主要使用iptables作为防火墙,iptables是一款功能强大的Linux防火墙。

二、iptables基础命令

2.1 查看当前iptables规则

iptables -L

2.2 清空所有iptables规则

iptables -F

2.3 保存iptables规则

service iptables save

三、CentOS防火墙配置步骤

3.1 启动iptables服务

systemctl start iptables

3.2 设置iptables服务开机启动

systemctl enable iptables

3.3 配置默认策略

将默认策略设置为DROP,表示默认拒绝所有数据包:

iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT

3.4 允许SSH访问

允许SSH(22端口)访问:

iptables -A INPUT -p tcp --dport 22 -j ACCEPT

3.5 允许HTTP访问

允许HTTP(80端口)访问:

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

3.6 允许HTTPS访问

允许HTTPS(443端口)访问:

iptables -A INPUT -p tcp --dport 443 -j ACCEPT

3.7 允许本地访问

允许本地主机访问所有端口:

iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

3.8 保存iptables规则

service iptables save

四、高级防火墙配置

4.1 NAT(网络地址转换)

NAT可以将私有IP地址转换为公网IP地址,实现内网访问:

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

4.2 双向端口转发

允许从访问本地端口:

iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination 192.168.1.100:80

五、总结

通过以上步骤,您已经可以在CentOS上配置一个基本的防火墙。在实际应用中,根据需求进行适当调整,确保系统安全无忧。同时,定期检查和更新防火墙规则,以应对不断变化的网络安全威胁。