博客
关于我
Linux防火墙-iptables
阅读量:797 次
发布时间:2023-02-05

本文共 1617 字,大约阅读时间需要 5 分钟。

iptables 是 Linux 上的常用防火墙工具,属于 netfilter 项目的一部分。它能够直接配置,也可以通过多种前端和图形界面进行设置。

1. 语法介绍

iptables 命令的语法结构包括选项和参数。

  • 选项包括:
    • -t <表>:指定要操作的表名。
    • -A:向规则链中添加条目。
    • -D:从规则链中删除条目。
    • -I:向规则链中插入条目(插入位置在链的末尾)。
    • -R:替换规则链中的条目。
    • -L:显示规则链中已有的条目。
    • -F:清除规则链中的所有条目。
    • -Z:清空规则链中的数据包计数器和字节计数器。
    • -N:创建新的用户自定义规则链。
    • -P:定义规则链中的默认目标。
    • -h:显示帮助信息。
    • -p:指定要匹配的数据包协议类型。
    • -s:指定要匹配的数据包源 IP 地址或地址范围。
    • -j <目标>:指定要执行的动作。
    • -i <网络接口>:指定数据包进入本机的网络接口。
    • -o <网络接口>:指定数据包离开本机所使用的网络接口。

2. 表名与规则链

  • 表名包括:

    • raw:用于高级功能,如网址过滤。
    • mangle:用于数据包修改(QoS),实现服务质量保障。
    • net:用于地址转换,常用于网关路由器。
    • filter:用于包过滤,通常用于防火墙规则。
  • 规则链名包括:

    • INPUT:处理输入数据包。
    • OUTPUT:处理输出数据包。
    • FORWARD:处理转发数据包。
    • PREROUTING:用于目标地址转换(DNAT)。
    • POSTROUTING:用于源地址转换(SNAT)。

3. 动作

  • 动作包括:
    • accept:接受数据包。
    • DROP:丢弃数据包。
    • redirect:重定向、映射或透明代理。
    • SNAT:源地址转换。
    • DNAT:目标地址转换。
    • masquerade:IP 伪装(NAT),常用于 ADSL 网络。
    • LOG:日志记录。

4. 实例应用

清除已有规则

  • 使用以下命令清空iptables 规则:
    iptables -F  iptables -X  iptables -Z

开放指定端口

  • 允许本地访问本机:
    iptables -A INPUT -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT
  • 允许已建立或相关连接:
    iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
  • 允许所有本机向外访问:
    iptables -A OUTPUT -j ACCEPT
  • 允许特定端口访问:
    iptables -A INPUT -p tcp --dport 22 -j ACCEPT  iptables -A INPUT -p tcp --dport 80 -j ACCEPT  iptables -A INPUT -p tcp --dport 21 -j ACCEPT  iptables -A INPUT -p tcp --dport 20 -j ACCEPT
  • 禁止未允许的访问:
    iptables -A INPUT -j reject

屏蔽 IP

  • 屏蔽单个 IP:
    iptables -I INPUT -s 123.45.6.7 -j DROP
  • 屏蔽整个 IP 段:
    iptables -I INPUT -s 123.0.0.0/8 -j DROP
  • 屏蔽特定 IP 段:
    iptables -I INPUT -s 124.45.0.0/16 -j DROP
  • 屏蔽特定 IP 段的网络:
    iptables -I INPUT -s 123.45.6.0/24 -j DROP

查看已有规则

  • 查看所有规则:
    iptables -L -n -v
  • 查看规则详情:
    iptables -L -n -v

删除规则

  • 根据规则序号删除:
    iptables -D INPUT 8

通过以上命令,您可以根据需求灵活配置 iptables 防火墙规则,实现网络安全防护。

转载地址:http://trkfk.baihongyu.com/

你可能感兴趣的文章
Nginx配置TCP代理指南
查看>>
Nginx配置——不记录指定文件类型日志
查看>>
nginx配置一、二级域名、多域名对应(api接口、前端网站、后台管理网站)
查看>>
nginx配置中的服务器名称
查看>>
Nginx配置代理解决本地html进行ajax请求接口跨域问题
查看>>
nginx配置全解
查看>>
Nginx配置参数中文说明
查看>>
Nginx配置后台网关映射路径
查看>>
nginx配置域名和ip同时访问、开放多端口
查看>>
Nginx配置多个不同端口服务共用80端口
查看>>
Nginx配置好ssl,但$_SERVER[‘HTTPS‘]取不到值
查看>>
Nginx配置如何一键生成
查看>>
Nginx配置实例-动静分离实例:搭建静态资源服务器
查看>>
Nginx配置实例-反向代理实例:根据访问的路径跳转到不同端口的服务中
查看>>
Nginx配置实例-反向代理实现浏览器请求Nginx跳转到服务器某页面
查看>>
Nginx配置实例-负载均衡实例:平均访问多台服务器
查看>>
Nginx配置文件nginx.conf中文详解(总结)
查看>>
Nginx配置自带的stub状态实现活动监控指标
查看>>
nginx配置详解、端口重定向和504
查看>>
Nginx配置负载均衡到后台网关集群
查看>>