centos7防火墙设置 ip和端口限制

  1. 使用 netstat -ntulp 查询程序端口占用

    • -n 不解析域名,直接显示ip
    • -tu 只列出 tcp/udp协议的进程
    • -l 只列出listening 状态的进程
    • -p 显示 pid和program name
  2. linux 防火墙放行指定的 端口

    • firewall-cmd --zone=public --add-port=6379/tcp --permanent 开发端口6379
      • --zone=public 共有访问权限
      • -add-port=6379/tcp 指定端口和 协议类型
      • --permanent 持久化的有效(重启不丢失)
    • firewall-cmd --reload 重新加载修改的配置
    • firewall-cmd --complete-reload 重新加载修改的配置(会断开连接)
  3. 查看开发的端口

    • firewall-cmd --list-ports
  4. 添加多个端口(卡通8000-9000的端口)

    firewall-cmd --permanent --zone=public --add-port=8000-9000/tcp

  5. 删除端口(永久删除端口3006)

    • firewall-cmd --permanent --zone=public --remove-port=3306/tcp
  6. 对某个ip开放/禁止

    • firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.100.1" port protocol="tcp" port="3306" accept" #允许指定ip访问指定协议的指定端口
    • firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.100.1" port protocol="tcp" port="6379" reject" #禁止指定ip访问指定协议的指定端口
    • rule family="ipv4" source address="192.168.100.1" port protocol="tcp" port="3306" accept 是一条规则
      image-20230327142516271
    1. 删除某个ip
    • firewall-cmd --permanent --remove-rich-rule="rule family="ipv4" source address="192.168.100.1" port protocol="tcp" port="3306" accept"
    • --remove-rich-rule后面的内容需要和--add-rich-rule后面的完全一样
  7. IP段的访问(192.168.0.0/16 表示 前面16位是网络号,后面的16位是主机号,192.168是网络号,这个网络下面的都允许访问)

    firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.0.0/16" accept"

  8. 端口转发

    • firewall-cmd --add-forward-port=port=80:proto=tcp:toport=8080 # 将80端口的流量转发至8080
    • firewall-cmd --add-forward-port=port=80:proto=tcp:toaddr=192.168.100.1 # 将80端口的流量转发至192.168.100.1
    • firewall-cmd --add-forward-port=port=80:proto=tcp:toaddr=192.168.100.1:toport=8080 #将80端口的流量转发至192.168.100.1的8080端口
  9. 查询zone列表(zone类似于防火墙的家庭网络,区域网络,公用网络,通过切换网络环境切换不同的拦截规则,或者说是一堆拦截规则的集合名字),默认是public

    • firewall-cmd --list-all-zones #查询所有zone,并且或列出里面的配置
    • firewall-cmd --get-zones
      image-20230327112533505
  10. 设置指定区域为默认zone

    • firewall-cmd --set-default-zone=home
    • firewall-cmd --get-default-zone #查询默认的zone
  11. zone和网卡的

    • firewall-cmd --get-zone-of-interface=ens33 #查询某个网卡所在的zone
    • firewall-cmd --zone=public --change-interface=ens33 #把某个网卡设置到指定zone
    • firewall-cmd --zone=public --add-interface=ens33 #给当前zone添加指定网卡(如果网卡已经存在于背的zone 会报错,这时候用--change-interface)
    • firewall-cmd --get-active-zones #查询当前zone下面有哪些网卡
  12. zone和网络规则

    • firewall-cmd --zone=public --list-all #查看指定zone下面的规则
    • firewall-cmd --get-service #查询所有zone下面的服务
    • firewall-cmd --list-service #查询当前zone下面的服务
  13. 防火墙配置文件位置

    • more /etc/firewalld/zones/public.xml #这个文件可以手动修改
      image-20230327135055369

posted on   zhangyukun  阅读(1873)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端
历史上的今天:
2019-03-27 Transaction rolled back because it has been marked as rollback-only 原因 和解决方案
2019-03-27 RabbitMQ 死信队列 延时
2019-03-27 好久没考虑过的 sql 注入

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示