2025年2月24日 星期一 甲辰(龙)年 腊月廿四 设为首页 加入收藏
rss
您当前的位置:首页 > 计算机 > 系统应用 > Linux

Linux中搭建基础防火墙规则保障系统安全

时间:08-08来源:作者:点击数:26
城东书院 www.cdsy.xyz

在Linux系统中,搭建强固的防火墙是确保系统安全的重要步骤。通过合理配置防火墙规则,可以有效防范网络攻击、限制不必要的访问,并保障系统的稳定性。本文将详细介绍基础防火墙配置的步骤和示例代码,以帮助管理员提升系统的安全性。

使用firewall-cmd

firewall-cmd 是基于 firewalld 的命令行工具,用于配置 iptables 防火墙规则。

  • # 示例代码:启用 firewalld 服务
  • sudo systemctl start firewalld
  • sudo systemctl enable firewalld

查看防火墙状态和已开放端口

  • # 示例代码:查看防火墙状态
  • sudo firewall-cmd --state
  • # 示例代码:查看已开放端口
  • sudo firewall-cmd --list-ports

开放和关闭端口

  • # 示例代码:开放端口
  • sudo firewall-cmd --add-port=80/tcp --permanent
  • sudo firewall-cmd --reload
  • # 示例代码:关闭端口
  • sudo firewall-cmd --remove-port=80/tcp --permanent
  • sudo firewall-cmd --reload

允许和拒绝特定IP地址

  • # 示例代码:允许特定IP访问
  • sudo firewall-cmd --add-source=192.168.1.2 --permanent
  • sudo firewall-cmd --reload
  • # 示例代码:拒绝特定IP访问
  • sudo firewall-cmd --add-source=192.168.1.3 --permanent --zone=drop
  • sudo firewall-cmd --reload

配置端口转发

  • # 示例代码:配置端口转发
  • sudo firewall-cmd --add-forward-port=80:internal_ip:80 --permanent
  • sudo firewall-cmd --reload

使用服务定义规则

  • # 示例代码:开放SSH服务
  • sudo firewall-cmd --add-service=ssh --permanent
  • sudo firewall-cmd --reload

配置防火墙日志

  • # 示例代码:开启防火墙日志
  • sudo firewall-cmd --set-log-denied=all
  • sudo firewall-cmd --reload

定制富规则

  • # 示例代码:定制富规则
  • sudo firewall-cmd --add-rich-rule='rule family="ipv4" source address="192.168.1.2" drop' --permanent
  • sudo firewall-cmd --reload

使用iptables命令

对于熟悉传统 iptables 的管理员,也可以使用 iptables 命令进行防火墙配置。

  • # 示例代码:开放端口
  • sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
  • sudo service iptables save
  • sudo service iptables restart

防火墙配置备份和恢复

  • # 示例代码:备份防火墙规则
  • sudo firewall-cmd --zone=public --list-all > firewall-backup.xml
  • # 示例代码:恢复防火墙规则
  • sudo firewall-cmd --restore < firewall-backup.xml
  • sudo firewall-cmd --reload

使用fail2ban加固防火墙

fail2ban 是一个基于日志文件的入侵防御工具,它可以监控系统日志,自动封锁恶意的IP地址。

  • # 示例代码:安装fail2ban
  • sudo yum install epel-release
  • sudo yum install fail2ban
  • # 示例代码:启动并配置fail2ban
  • sudo systemctl start fail2ban
  • sudo systemctl enable fail2ban

配置端口转发和NAT

  • # 示例代码:配置端口转发
  • sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination internal_ip:80
  • sudo iptables -t nat -A POSTROUTING -j MASQUERADE
  • sudo service iptables save
  • sudo service iptables restart

使用ipset管理IP集合

  • # 示例代码:创建ipset集合
  • sudo ipset create blocked_ips hash:ip
  • # 示例代码:添加IP到集合
  • sudo ipset add blocked_ips 192.168.1.2
  • # 示例代码:使用ipset阻止IP
  • sudo iptables -A INPUT -m set --match-set blocked_ips src -j DROP
  • sudo service iptables save
  • sudo service iptables restart

配置IPv6防火墙规则

  • # 示例代码:开放IPv6端口
  • sudo firewall-cmd --add-port=80/tcp --permanent --zone=public
  • sudo firewall-cmd --reload

使用SELinux增强安全性

SELinux 是Linux内核的安全模块,可以提供更强大的安全策略。

  • # 示例代码:查看SELinux状态
  • sudo sestatus
  • # 示例代码:禁用SELinux
  • sudo setenforce 0

配置TCP Wrapper限制访问

/etc/hosts.allow 和 /etc/hosts.deny 可以用于配置TCP Wrapper规则,限制允许和拒绝的访问。

  • # 示例代码:仅允许特定IP访问SSH
  • echo "sshd: 192.168.1.2" | sudo tee -a /etc/hosts.allow
  • echo "sshd: ALL" | sudo tee -a /etc/hosts.deny

定期审查防火墙规则

  • # 示例代码:查看防火墙规则
  • sudo iptables -L -n
  • # 示例代码:查看firewalld规则
  • sudo firewall-cmd --list-all

设置连接跟踪规则

  • # 示例代码:开启连接跟踪
  • sudo modprobe nf_conntrack
  • # 示例代码:查看连接跟踪表
  • sudo cat /proc/net/nf_conntrack

配置限制连接速率

  • # 示例代码:使用iptables限制连接速率
  • sudo iptables -A INPUT -p tcp --syn --dport 80 -m connlimit --connlimit-above 20 --connlimit-mask 32 -j DROP
  • sudo service iptables save
  • sudo service iptables restart

总结

在搭建基础防火墙规则以保障Linux系统安全方面,本文提供了丰富而详细的示例代码,助力管理员深入了解和配置系统防火墙。从基础的端口管理、IP地址允许和拒绝,到更高级的防火墙配置、IPv6规则、SELinux和TCP Wrapper,本文深入介绍了多种工具和技术,使得管理员能够全面地提升系统的安全性。

通过 firewall-cmdiptables 以及其他工具的灵活应用,管理员可以定制防火墙规则,限制不必要的访问,防范网络攻击。fail2ban 的引入增加了对恶意IP的自动封锁,提高了系统的主动防御能力。此外,学习如何配置端口转发、使用ipset管理IP集合、设置IPv6规则,以及定期审查和优化防火墙规则,都是提高系统安全性的关键步骤。

对于更高级的安全需求,本文还介绍了使用 SELinux 增强系统安全性、配置TCP Wrapper限制访问、设置连接跟踪规则以及限制连接速率等技术。这些工具和技术的综合使用,为管理员提供了多层次、全方位的系统安全保障。总体而言,通过不断学习和实践这些防火墙配置技巧,管理员将更有信心、更灵活地维护和提升Linux系统的安全性。

城东书院 www.cdsy.xyz
方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门
本栏推荐