当前位置: 首页 > news >正文

网络安全与iptables防火墙配置

iptables基本概念

iptables是Linux系统中强大的防火墙工具,它工作在用户空间,通过命令行界面与内核空间的netfilter框架交互,实现数据包过滤、网络地址转换(NAT)等功能。

Web服务器防火墙配置实例

以下是针对Web服务器的iptables配置步骤,只开放必要的SSH(22)和HTTP(80)端口:

# 1. 设置默认策略为ACCEPT并清空现有规则
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -F# 2. 允许回环接口通信
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT# 3. 允许已建立和相关连接
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT# 4. 允许SSH传入和传出连接
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 22 -j ACCEPT# 5. 允许HTTP传入和传出连接
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 80 -j ACCEPT# 6. 允许DNS查询(UDP 53端口)
iptables -A OUTPUT -p udp --dport 53 -j ACCEPT# 7. 设置默认策略为DROP(确保先允许必要服务)
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP

配置说明

  1. 默认策略:初始设置为ACCEPT确保配置过程中不会意外断开连接,最后设置为DROP增强安全性

  2. 回环接口:允许本地进程间通信

  3. 状态跟踪:允许已建立和相关连接,确保响应流量正常通过

  4. 服务端口

    • SSH(22):远程管理

    • HTTP(80):Web服务

    • DNS(53):域名解析(仅传出)

验证与测试

配置完成后,使用nmap扫描验证:

nmap -sS -O 服务器IP地址

应只显示22和80端口为开放状态,其他端口显示为filtered(被过滤)或closed(关闭)。

注意事项

  1. 在远程服务器上配置防火墙时,务必先允许SSH连接,避免将自己锁在系统外

  2. 可根据实际需求调整规则,如添加HTTPS(443)端口

  3. 规则配置后需保存以确保重启后依然有效:

    # CentOS 6及以前
    service iptables save# CentOS 7及以后使用firewalld
    # 或安装iptables-services包
    yum install iptables-services
    systemctl enable iptables
    service iptables save

此配置提供了基础的Web服务器防护,仅允许必要的网络通信,有效减少攻击面。


文章转载自:

http://GkiicfgA.sjgsh.cn
http://H6BmNxXp.sjgsh.cn
http://8IcNzrSJ.sjgsh.cn
http://L0lEYCAS.sjgsh.cn
http://o1lPFMeZ.sjgsh.cn
http://P1i1SCs6.sjgsh.cn
http://ZDFrXec9.sjgsh.cn
http://vBNPMbUm.sjgsh.cn
http://yWFDiZYv.sjgsh.cn
http://8cK3myC8.sjgsh.cn
http://qmtEZH9W.sjgsh.cn
http://Jf7tXlL9.sjgsh.cn
http://wrZ8cbN0.sjgsh.cn
http://bmi1iDaF.sjgsh.cn
http://D70OzCdr.sjgsh.cn
http://E0oNHhUs.sjgsh.cn
http://SUHAiyoZ.sjgsh.cn
http://syN6OSyf.sjgsh.cn
http://DsPA3BWQ.sjgsh.cn
http://kGB2qHUA.sjgsh.cn
http://1LXDltgq.sjgsh.cn
http://Ki5XtGq6.sjgsh.cn
http://UrZwf3x0.sjgsh.cn
http://DlPSNgov.sjgsh.cn
http://hrofIuQR.sjgsh.cn
http://bhODqHzy.sjgsh.cn
http://S4LqqSyT.sjgsh.cn
http://2l5p97za.sjgsh.cn
http://bcGvw2WI.sjgsh.cn
http://jtLnf7VU.sjgsh.cn
http://www.dtcms.com/a/382042.html

相关文章:

  • Django + Vue3 前后端分离技术实现自动化测试平台从零到有系列 <第一章> 之 注册登录实现
  • Flink面试题及详细答案100道(41-60)- 状态管理与容错
  • 从基础到高级:一文快速认识MySQL UPDATE 语句
  • 基于KAZE算法的织物图像拼接matlab仿真,对比SIFT和SURF
  • 知识输出零散没有体系怎么办
  • 【LeetCode】37. 解数独
  • Redis常见性能问题
  • 数据帮助我们理解未知世界
  • 泛型通配符 T、E、K、V、?
  • STL简介及string
  • Ditty WordPress插件displayItems端点未授权访问漏洞(CVE-2025-8085)
  • 【性能优化需要关注的参数——Batches】
  • React Device Detect 完全指南:构建响应式跨设备应用的最佳实践
  • 开始 ComfyUI 的 AI 绘图之旅-Qwen-Image(十一)
  • python根据路径获取文件后缀名
  • c++雾里探花-静态多态
  • Java基础知识(十五)
  • 2025.9.14英语红宝书
  • Easy系列PLC枚举变量类型(为什么可以不实例化直接使用)
  • python全栈-自动化office
  • smartctl_exporter smartctl 统计信息
  • 软件测试常见Bug清单
  • 大数据电商流量分析项目实战:可视化 数据分析(九)
  • Kafka核心概念深入浅出:消费者组(Consumer Group)机制全解析
  • ZYNQ PS读写PL BRAM
  • [数据结构] 队列 (Queue)
  • Git : 基本操作
  • Vue模板中传递对象或数组时,避免直接使用字面量[]和{}
  • 26考研——内存管理_虚拟内存管理(3)
  • FastAPI如何用契约测试确保API的「菜单」与「菜品」一致?