linux防火墙常用命令

参考:http://www.cnweed.com/archives/4131/

一、iptables常用命令

 

 

复制代码
#查看已有的防火墙规则链
iptables -L
#清空已有的防火墙规则链
iptables -F
#把 INPUT 规则链的默认策略设置为拒绝
iptables -P INPUT DROP
#向 INPUT 链中添加允许 ICMP 流量进入的策略规则
iptables -I INPUT -p icmp -j ACCEPT
#删除 INPUT 规则链中刚刚加入的那条策略
iptables -D INPUT 1
#把默认策略设置为允许
iptables -P INPUT ACCEPT
#将 INPUT 规则链设置为只允许指定网段的主机访问本机的 22 端口,拒绝来自其他所有主机的流量
iptables -I INPUT -s 192.168.10.0/24 -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j REJECT
#向 INPUT 规则链中添加拒绝所有人访问本机 12345 端口的策略规则
iptables -I INPUT -p tcp --dport 12345 -j REJECT
iptables -I INPUT -p udp --dport 12345 -j REJECT
#向 INPUT 规则链中添加拒绝 192.168.10.5 主机访问本机 80 端口(Web 服务)的策略规则
iptables -I INPUT -p tcp -s 192.168.10.5 --dport 80 -j REJECT
#向 INPUT 规则链中添加拒绝所有主机访问本机 10001024 端口的策略规则
iptables -A INPUT -p tcp --dport 1000:1024 -j REJECT
iptables -A INPUT -p udp --dport 1000:1024 -j REJECT
#使得命令再服务器重启后还能生效
service iptables save
复制代码

二、Firewalld常用命令

 

 

 

 

复制代码
#查看 firewalld 服务当前所使用的区域
firewall-cmd --get-default-zone
#查询 eno16777728 网卡在 firewalld 服务中的区域:
firewall-cmd --get-zone-of-interface=eno16777728
#把 firewalld 服务中 eno16777728 网卡的默认区域修改为 external,并在系统重启后生效。分别查看当前与永久模式下的区域名称
firewall-cmd --permanent --zone=external --change-interface=eno16777728
firewall-cmd --get-zone-of-interface=eno16777728
firewall-cmd --permanent --get-zone-of-interface=eno16777728
#把 firewalld 服务的当前默认区域设置为 public:
firewall-cmd --set-default-zone=public
#启动/关闭 firewalld 防火墙服务的应急状况模式,阻断一切网络连接
firewall-cmd --panic-on
#查询 public 区域是否允许请求 SSH 和 HTTPS 协议的流量:
firewall-cmd --zone=public --query-service=ssh
firewall-cmd --zone=public --query-service=https
#把 firewalld 服务中请求 HTTPS 协议的流量设置为永久允许,并立即生效:
firewall-cmd --zone=public --add-service=https
firewall-cmd --permanent --zone=public --add-service=https
firewall-cmd --reload
#把 firewalld 服务中请求 HTTP 协议的流量设置为永久拒绝,并立即生效:
firewall-cmd --permanent --zone=public --remove-service=http
firewall-cmd --reload
#把在 firewalld 服务中访问 80808081 端口的流量策略设置为允许,但仅限当前生效:
firewall-cmd --zone=public --add-port=8080-8081/tcp
firewall-cmd --zone=public --list-ports
#把原本访问本机 888 端口的流量转发到 22 端口,要且求当前和长期均有效
firewall-cmd --permanent --zone=public --add-forward-port=port=888:proto=tcp:toport=22:toaddr=192.168.10.10
firewall-cmd --reload
#拒绝192.168.10.0/24 网段的所有用户访问本机的 ssh 服务( 22 端口)
firewall-cmd --permanent --zone=public --add-rich-rule="
rule family="ipv4" source address="192.168.10.0/24" service name="ssh" reject"
firewall-cmd --reload
复制代码

 转自:https://www.linuxprobe.com/chapter-08.html

posted @   Mars.wang  阅读(413)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
点击右上角即可分享
微信分享提示