美文网首页
Linux防火墙

Linux防火墙

作者: 意大利大炮 | 来源:发表于2022-08-22 11:38 被阅读0次

firewalld

  • 查看防火墙状态
    systemctl status firewalld
  • 查看端口是否开放
    firewall-cmd --query-port=80/tcp
  • 移除端口
- 查看开放端口列表
`firewall-cmd --list-port`
firewall-cmd --zone=public --remove-port=80/tcp --permanent
# 
firewall-cmd --permanent --remove-port=123/tcp
  • 关闭
    systemctl stop firewalld.service
  • 开启
    systemctl start firewalld.service
  • 开启开机启动
    systemctl enable firewalld.service
  • 关闭开机启动
    systemctl disable firewalld.service
  • 开启端口
#(--permanent永久生效,没有此参数重启后失效)
#注:可以是一个端口范围,如1000-2000/tcp
firewall-cmd --zone=public --add-port=80/tcp --permanent
  • 重启
    firewall-cmd --reload

iptables

  • 查看状态
    service iptables status
  • 开启
    service iptables start
  • 关闭
    service iptables stop
  • 查看所有规则
    查看filter表规则: 普通查看:iptables -t filter --list, 详细信息:iptables -nvL
    查看mangle表: iptables -t mangle --list
    查看NAT表: iptables -t nat --list
    查看ROW表: iptables -t raw --list
-L 查看当前表的所有规则,默认查看的是filter表,如果要查看NAT表,可以加上-t NAT参数
-n 不对ip地址进行反查,加上这个参数显示速度会快很多
-v 输出详细信息,包含通过该规则的数据包数量,总字节数及相应的网络接口
–line-number 显示规则的序列号,这个参数在删除或修改规则时会用到
  • 添加(添加规则有两个参数:-A和-I。其中-A是添加到规则的末尾;-I可以插入到指定位置,没有指定位置的话默认插入到规则的首部。
    )
    添加到尾部
    iptables -A INPUT -s ${ip} -j DROP
    添加到第三行
    iptables -I INPUT 3 -s ${ip} -j DROP
    新增参数
-p 协议(protocol)
  指定规则的协议,如tcp, udp, icmp等,可以使用all来指定所有协议。
  如果不指定-p参数,则默认是all值。这并不明智,请总是明确指定协议名称。
  可以使用协议名(如tcp),或者是协议值(比如6代表tcp)来指定协议。映射关系请查看/etc/protocols
  还可以使用–protocol参数代替-p参数
-s 源地址(source)
  指定数据包的源地址
  参数可以使IP地址、网络地址、主机名
  例如:-s 192.168.1.101指定IP地址
  例如:-s 192.168.1.10/24指定网络地址
  如果不指定-s参数,就代表所有地址
  还可以使用–src或者–source
-d 目的地址(destination)
  指定目的地址
  参数和-s相同
  还可以使用–dst或者–destination
-j 执行目标(jump to target)
  -j代表”jump to target”
  -j指定了当与规则(Rule)匹配时如何处理数据包
  可能的值是ACCEPT, DROP, QUEUE, RETURN
  还可以指定其他链(Chain)作为目标
-i 输入接口(input interface)
  -i代表输入接口(input interface)
  -i指定了要处理来自哪个接口的数据包
    这些数据包即将进入INPUT, FORWARD, PREROUTE链
  例如:-i eth0指定了要处理经由eth0进入的数据包
  如果不指定-i参数,那么将处理进入所有接口的数据包
  如果出现! -i eth0,那么将处理所有经由eth0以外的接口进入的数据包
  如果出现-i eth+,那么将处理所有经由eth开头的接口进入的数据包
  还可以使用–in-interface参数
-o 输出(out interface)
  -o代表”output interface”
  -o指定了数据包由哪个接口输出
  这些数据包即将进入FORWARD, OUTPUT, POSTROUTING链
  如果不指定-o选项,那么系统上的所有接口都可以作为输出接口
  如果出现! -o eth0,那么将从eth0以外的接口输出
  如果出现-i eth+,那么将仅从eth开头的接口输出
  还可以使用–out-interface参数

相关文章

网友评论

      本文标题:Linux防火墙

      本文链接:https://www.haomeiwen.com/subject/drqggrtx.html