Linux防火墙和iptables
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的更多相关文章
- Linux防火墙简介 – iptables配置策略
Linux防火墙简介 – iptables配置策略 Netfilter/iptables简介 要想真正掌握Linux防火墙体系,首先要搞清楚Netfilter和iptables的关系,Netfilte ...
- linux防火墙之iptables
linux防火墙之iptables 1.1.1 关于iptables简介 IPTABLES 是与最新的 3.5 版本 Linux 内核集成的 IP 信息包过滤系统.如果 Linux 系统连接到因特网或 ...
- Linux防火墙(iptables/firewalld)
Linux防火墙(iptables/firewalld) 目录 Linux防火墙(iptables/firewalld) 一.iptables 1. iptables概述 2. netfilter和i ...
- Linux防火墙配置(iptables, firewalld)
netfilter和底层实现 iptables firealld Linux中的防火墙 RHEL中有几种防火墙共存: iptables firewalld ip6tables ebtables 这些软 ...
- Linux防火墙:iptables禁IP与解封IP常用命令
在Linux服务器被攻击的时候,有的时候会有几个主力IP.如果能拒绝掉这几个IP的攻击的话,会大大减轻服务器的压力,说不定服务器就能恢复正常了. 在Linux下封停IP,有封杀网段和封杀单个IP两种形 ...
- linux防火墙相关 iptables
1. root用户查看防火墙状态(非root用户无权限查看) 查看防火墙状态: service iptables status 2.开启和关闭防火墙 //开启防火墙: service iptables ...
- Linux防火墙设置——iptables
防火墙用于监控往来流量,并根据用户定义的规则来过滤数据包以保证安全.iptables是Linux下设置防火墙规则的常用工具,它可以让你设置.维护以及查看防火墙的规则表.你可以定义多个表,每个表可以包含 ...
- Linux防火墙之iptables入门
一.防火墙的概念 什么是防火墙?防火墙是一台或一组设备,用以在网络间实施访问控制策略:事实上一个防火墙能够包含OSI模型中的很多层,并且可能会涉及进行数据包过滤的设备,它可以实施数据包检查和过滤,在更 ...
- Linux防火墙之iptables常用扩展匹配条件(二)
上一篇博文我们讲到了iptables的一些常用的扩展匹配模块以及扩展模块的一些选项的说明,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/12273755.htm ...
- Linux防火墙之iptables基本匹配条件和隐式扩展匹配条件
一.iptables的基本匹配条件 上一篇博文我们说到了iptables的基本工作原理.数据报文在内核的走向和管理链.管理规则.以及查看规则.导入和导出规则:回顾请参考https://www.cnbl ...
随机推荐
- tkinter + 爬虫 实现影视在线资源系统
应吾爱朋友现公布代码如下: import tkinter as tk import requests,re,sys,asyncio from tkinter import scrolledtext,E ...
- Python面向对象:封装和多态
一.封装 封装是隐藏对象的属性和实现细节,仅对外公开接口,控制在程序中属性的读取和修改的访问级别. 封装就是将抽象得到的数据和行为(或功能)相结合,形成一个有机的整体,也就是将数据与操作数据的源代码进 ...
- vue-element-admin项目核心总结
1.搭建项目 按照官方文档把整个项目下载下来,安装依赖包npm install, 然后npm run dev 启动项目. 2.项目自定义优化 删除不要的文件,启动项目登录后,发现里面有很多页面,对我们 ...
- [LeetCode]231. Power of Two判断是不是2\3\4的幂
/* 用位操作,乘2相当于左移1位,所以2的幂只有最高位是1 所以问题就是判断你是不是只有最高位是1,怎判断呢 这些数-1后形成的数,除了最高位,后边都是1,如果n&n-1就可以判断了 如果是 ...
- mysql数据库连接java
1 1.创建配置文件jdbc.properties 2 3 jdbc.driver=com.mysql.jdbc.Driver 4 jdbc.url=jdbc:mysql://localhost:33 ...
- centos7下mysql安装与卸载
彻底卸载mysql 一.chak 是否有安装mysql a) rpm -qa | grep -i mysql // 查看命令1 b) yum list install mysql* ...
- SLA
服务级别协议[编辑] 维基百科,自由的百科全书 跳到导航跳到搜索 本条目可参照外语维基百科相应条目来扩充. 若您熟悉来源语言和主题,请协助参考外语维基扩充条目.请勿直接提交机械翻译,也不要翻译 ...
- JavaScript同步模式,异步模式及宏任务,微任务队列
首先JavaScript是单线程的语言,也就是说JS执行环境中,负责执行代码的线程只有一个.一次只能执行一个任务,如果有多个任务的话, 就要排队,然后依次执行,优点就是更安全,更简单.缺点就是遇到耗时 ...
- Linux 下 swap 分区及作用详解
我们在安装系统的时候已经建立了 swap 分区.swap 分区是 Linux 系统的交换分区,当内存不够用的时候,我们使用 swap 分区存放内存中暂时不用的数据.也就是说,当内存不够用时,我们使用 ...
- U盘使用技巧篇 制作一般人删除不了的文件(宣传视频) (量产开卡)
一. 视频制作成ISO ,放好 视频 图标文件 制作工具 : UltraISO 图标制作: 插入光盘状态:用autorun.inf格式:[autorun]open=Install.exe 点击光盘时 ...