1. CentOS

查看防火墙状态

systemctl status firewalld

firewall-cmd --state

启停防火墙

# 开启
systemctl start firewalld # 重启
systemctl restart firewalld # 关闭
systemctl stop firewalld # 开机自启
systemctl enable firewalld # 取消开机自启
systemctl disable firewalld

查看防火墙规则

firewall-cmd --list-all

开放端口

firewall-cmd --permanent --add-port=80/tcp
firewall-cmd --reload

关闭端口

firewall-cmd --permanent --remove-port=80/tcp
firewall-cmd --reload

查询端口是否开放

firewall-cmd --query-port=80/tcp

2. Ubuntu

查看防火墙状态:

 ufw status

启停防火墙:

# 启动、并开机自启

ufw enable

# 关闭、并关闭开机自启
ufw disable

ufw 命令似乎没什么 luan 用:UFW(iptables)规则的匹配基于规则出现的顺序,一旦匹配到某个规则,检查便会停止。

直接在 /etc/ufw/before.rules 文件中添加规则即可。

...
# End required lines # 开放 80 端口
-A ufw-before-input -p tcp --dport 80 -j ACCEPT # 关闭 8080 端口
-A ufw-before-input -p tcp --dport 8080 -j DROP # 拒绝主机 222.201.187.189 的访问
-A ufw-before-input -s 222.201.187.189 -j DROP # 拒绝子网 222.201.187.0/24 中的主机的访问
-A ufw-before-input -s 222.201.187.0/24 -j DROP

重新加载配置信息:

ufw reload

3. iptables

主要用法
iptables [-t table] {-A|-C|-D} chain rule-specification
iptables [-t table] -D chain rulenum
iptables [-t table] -I chain [rulenum] rule-specification
iptables [-t table] {-F|-L} [chain]
iptables [-t table] -P chain target
iptables [-t table] -R chain rulenum rule-specification
  • table:在指定的表上执行操作。当前有 filter (默认)、nat、mangle、raw、security 五张表。
  • chain:每张表上都有多条规则链,目前有 PREROUTING、POSTROUTING、INPUT、OUTPUT、FORWARD 五条链。
    • filter表3条链:INPUT、FORWARD、OUTPUT
    • nat表3条链:PREROUTING、POSTROUTING、OUTPUT
    • mangle表5条链:PREROUTING、POSTROUTING、INPUT、OUTPUT、FORWARD
    • raw表2条链:OUTPUT、PREROUTING
    • security表3条链:INPUT、FORWARD、OUTPUT
  • -A:在链的末尾追加一条规则。
  • -C:查看是否存在指定的规则。
  • -D:删除指定的规则。
  • -I:在指定位置(默认为链头)插入一条规则。
  • -F:清空指定的链;
  • -L:列出链中的所有规则。
  • -P:修改链的默认 target。
  • -R:替换某条规则。

target

  • ACCEPT:接受数据包。
  • DROP:丢弃数据包,不做任何响应。

常用的条件匹配

  • -p protocol:指定协议。
  • -s source:指定源地址。
  • -d destination:指定目的地址。
  • -i interface:指定进入的接口。
  • -o interface:指定出去的接口。
  • --sport port:指定源端口。
  • --dport port:指定目的端口。
  • -m match:使用其他扩展匹配。

支持取反操作 !,如,! -p icmp 即非 ICMP 协议。

# 默认丢弃所有数据包
iptables -P INPUT DROP # 在链头插入规则
iptables -I INPUT 1 -s 192.168.1.1 -j ACCEPT # 替换规则
iptables -R INPUT 1 -p icmp -s 222.201.189.0/24 -j DROP # 指定多个端口
iptables -A INPUT -p tcp -m multiport --dport 20,21,25,110,1250:1280 -j ACCEPT # 指定多个IP地址
iptables -A FORWARD -p tcp -m iprange --src-range 192.168.1.20-192.168.1.99 -j DROP

清空所有规则:

iptables -F

保存、恢复规则:

# 保存
iptables-save > iptables.txt # 恢复
iptables-restore < iptables.txt

参考资料

https://www.cnblogs.com/xxoome/p/7115614.html

https://www.cnblogs.com/zhaojingyu/p/11458744.html

https://www.cnblogs.com/metoy/p/4320813.html

Linux防火墙和iptables的更多相关文章

  1. Linux防火墙简介 – iptables配置策略

    Linux防火墙简介 – iptables配置策略 Netfilter/iptables简介 要想真正掌握Linux防火墙体系,首先要搞清楚Netfilter和iptables的关系,Netfilte ...

  2. linux防火墙之iptables

    linux防火墙之iptables 1.1.1 关于iptables简介 IPTABLES 是与最新的 3.5 版本 Linux 内核集成的 IP 信息包过滤系统.如果 Linux 系统连接到因特网或 ...

  3. Linux防火墙(iptables/firewalld)

    Linux防火墙(iptables/firewalld) 目录 Linux防火墙(iptables/firewalld) 一.iptables 1. iptables概述 2. netfilter和i ...

  4. Linux防火墙配置(iptables, firewalld)

    netfilter和底层实现 iptables firealld Linux中的防火墙 RHEL中有几种防火墙共存: iptables firewalld ip6tables ebtables 这些软 ...

  5. Linux防火墙:iptables禁IP与解封IP常用命令

    在Linux服务器被攻击的时候,有的时候会有几个主力IP.如果能拒绝掉这几个IP的攻击的话,会大大减轻服务器的压力,说不定服务器就能恢复正常了. 在Linux下封停IP,有封杀网段和封杀单个IP两种形 ...

  6. linux防火墙相关 iptables

    1. root用户查看防火墙状态(非root用户无权限查看) 查看防火墙状态: service iptables status 2.开启和关闭防火墙 //开启防火墙: service iptables ...

  7. Linux防火墙设置——iptables

    防火墙用于监控往来流量,并根据用户定义的规则来过滤数据包以保证安全.iptables是Linux下设置防火墙规则的常用工具,它可以让你设置.维护以及查看防火墙的规则表.你可以定义多个表,每个表可以包含 ...

  8. Linux防火墙之iptables入门

    一.防火墙的概念 什么是防火墙?防火墙是一台或一组设备,用以在网络间实施访问控制策略:事实上一个防火墙能够包含OSI模型中的很多层,并且可能会涉及进行数据包过滤的设备,它可以实施数据包检查和过滤,在更 ...

  9. Linux防火墙之iptables常用扩展匹配条件(二)

    上一篇博文我们讲到了iptables的一些常用的扩展匹配模块以及扩展模块的一些选项的说明,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/12273755.htm ...

  10. Linux防火墙之iptables基本匹配条件和隐式扩展匹配条件

    一.iptables的基本匹配条件 上一篇博文我们说到了iptables的基本工作原理.数据报文在内核的走向和管理链.管理规则.以及查看规则.导入和导出规则:回顾请参考https://www.cnbl ...

随机推荐

  1. UWP 自定义RadioButton实现Tab底部导航

    先看效果: 参照Android的实现方式用RadioButton来实现,但是Uwp的RadioButton并没有安卓的Selector选择器 下面是一个比较简单的实现,如果有同学有更好的实现,欢迎留言 ...

  2. vue API 知识点(4) --- 指令、特殊 attribute 、内置组件

    一.指令 1.v-text <span v-text="msg"></span> <!-- 两种写法是一样的 --> <span>{ ...

  3. 每日CSS_发光文本效果

    每日CSS_发光文本效果 2020_12_22 源码 1. 代码解析 1.1 html 代码片段 <h1> <span>今</span> <span>天 ...

  4. 从零实现Linux一键自动化部署.netCore+Vue+Nginx项目到Docker中

    环境搭建 1.安装Linux,这里我用的阿里云服务器,CentOS7版本 2.进入Linux,安装Docker,执行以下命令 sudo yum update #更新一下yum包 sudo yum in ...

  5. (十)、cat--查看文件命令

    一.命令描述与格式 将文件或标准输入组合输出到标准输出,所以注定了其可以配合管道应用, 格式:cat    [选项]    [files] 选项: -A   --show-all            ...

  6. 将Maven镜像更换为国内阿里云仓库

    1.国内访问maven默认远程中央镜像特别慢 2.用阿里的镜像替代远程中央镜像 3.大部分jar包都可以在阿里镜像中找到,部分jar包在阿里镜像中没有,需要单独配置镜像 换为国内镜像,让你感受飞一般的 ...

  7. c#——ToString()的各种用法

    ToString()的各种用法 string str = ""; str = 123456.ToString("N"); //生成 12,3456.00 str ...

  8. Atlas 2.1.0 实践(2)—— 安装Atlas

    在完成Atlas编译以后,就可以进行Atlas的安装了.Atlas的安装主要是安装Atlas的Server端,也就Atlas的管理页面,并确保Atlas与Kafka Hbase Solr等组件的集成. ...

  9. SQL语句实现增删改查

    查询语句SELECT *FROM mydriect WHERE id=1; 删除语句DELETE FROM mydriect WHERE id=1; 修改语句UPDATE mydriect SET 自 ...

  10. 1.简单使用两片74HC595实现动态显示数码管

    本篇文章主要是讲解如何简单示用74HC595,更具体的讲解请移步 https://www.cnblogs.com/lulipro/p/5067835.html#undefined 这篇文章讲解的更加详 ...