添加规则 -A 在链末尾追加一条规则
-I 在链开头或某序号前插入一条规则
查看规则 -L 列出所有规则
-n 数字显示地址和端口信息
-v 详细信息
-line-numbers 显示规则序号
删除规则 -D 删除某个序号的规则
-F 清空规则
默认规则 -P 指定默认规则

1.查看规则
iptables -L -n
以数字形式查看filter表INPUT链的所有规则
iptables -nL INPUT
查看filter表INPUT链的所有规则,并显示规则序号
iptables -L INPUT --line-numbers

2.增加规则
iptables -A INPUT -p tcp -j ACCEPT //在filter表INPUT链的末尾添加一条规则,允许TCP协议的数据包通过
iptables -I INPUT -p udp -j ACCEPT //在filter表INPUT链的首行添加一条规则,允许UDP协议的数据包通过
iptables -I INPUT 2 -p icmp -j ACCEPT //在filter表INPUT链的第二行添加一条规则,允许icmp协议的数据包通过

3.清除原规则
iptables -F 清除预设表filter中的所有规则链的规则
iptables -X 清除预设表filter中使用者自定链中的规则
iptables -D INPUT 2 删除filter表INPUT链的第二条规则

4.设置规则
iptables -P FORWARD DROP //将filter表FORWARD链的默认策略设为丢弃
iptables -P OUTPUT ACCEPT //将filter表OUTPUT链的默认策略设为允许

设置ssh访问
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT

iptables -I INPUT -p icmp -j DROP //丢弃通过icmp协议访问本机的数据包
iptables -A FORWARD ! -p icmp -j ACCEPT //允许转发除了icmp协议之外的数据包
iptables -A INPUT -p tcp --tcp-flags ALL FIN,URG,PSH -j DROP //防止Xmas扫描
iptables -A INPUT -p tcp --tcp-flags ALL NONE -j DROP //防止TCP Null扫描
iptables -A INPUT -p tcp --tcp-flags SYN,ACK SYN,ACK -m state --state NEW -j DROP //拒绝TCP标记为SYN/ACK,但连接状态为NEW的数据包,防止ACK欺骗
iptables -A INPUT -p icmp --icmp-type 8 -j DROP //禁止从其他主机ping本机,但允许本机ping其他主机
iptables -A INPUT -p icmp --icmp-type 0 -j ACCEPT
iptables -A INPUT -p icmp --icmp-type 3 -j ACCEPT
iptables -A INPUT -p icmp -j DROP
iptables -p icmp -h //查看可用的ICMP协议类型

允许loopback!(不然会导致DNS无法正常关闭等问题)
iptables -A INPUT -i lo -p all -j ACCEPT (如果是INPUT DROP)
iptables -A OUTPUT -o lo -p all -j ACCEPT(如果是OUTPUT DROP)

iptables -P INPUT DROP //开放相关端口,对发给本机的TCP应答数据包予以放行,其他入站数据包都丢弃
iptables -I INPUT -p tcp -m multiport --dport 80,20,21,53 -j ACCEPT
iptables -I INPUT -p tcp -m state --state ESTABLISHED -j ACCEPT

iptables -A OUTPUT -p tcp --sport 31337 -j DROP //减少不安全的端口连接
iptables -A OUTPUT -p tcp --dport 31337 -j DROP //减少不安全的端口连接

service iptables save //保存
systemctl restart iptables.service //重启
systemctl enable iptables.service //开机启动

5.其他用法
iptables -A INPUT -p tcp -m multiport --dport 25,80,110,143 -j ACCEPT //允许本机开放25、80、110、143端口,以便提供电子邮件服务
iptables -A INPUT -s 192.168.10.1 -p tcp --dport 22 -j ACCEPT //设置只允许某个ip的端口访问
iptables -A FORWARD -p tcp -m iprange --src-range 192.168.10.1-192.168.10.100 -j ACCEPT //允许转发192.168.10.1-192.168.10.100之间的TCP数据包
iptables -A INPUT -m mac --mac-source 00:50:2e:cf:44:3f -j DROP //禁止其MAC地址访问本机的任何应用

linux的iptables设置的更多相关文章

  1. Linux中iptables设置详细(转)

    无论如何,iptables是一个需要特别谨慎设置的东西,万一服务器不在你身边,而你贸然设置导致无法SSH,那就等着被老板骂吧,呵呵... 以下内容是为了防止这种情况发生而写的,当然很初级,不过一般服务 ...

  2. Linux中iptables设置详细

    无论如何,iptables是一个需要特别谨慎设置的东西,万一服务器不在你身边,而你贸然设置导致无法SSH,那就等着被老板骂吧,呵呵... 一下内容是为了防止这种情况发生而写的,当然很初级,不过一般服务 ...

  3. Linux使用iptables设置黑白名单

    使用ipset工具 1,下面我先说下iptables的基本配置规则,然后再说ipset以下使用C7 x86_64为实验环境CentOS7默认的防火墙不是iptables,而是firewalle.如果你 ...

  4. linux的iptables设置---防火墙

    1.首先介绍一下指令和相关配置文件 启动指令:service iptables start 重启指令:service iptables restart 关闭指令:service iptables st ...

  5. 详解Linux下iptables中的DNAT与SNAT设置(转)

    详解Linux下iptables中的DNAT与SNAT设置 这篇文章主要介绍了Linux下iptables中的DNAT与SNAT设置,是Linux网络配置中的基础知识,需要的朋友可以参考下   原文连 ...

  6. Linux防火墙(Iptables)的开启与关闭

    Linux防火墙(iptables)的开启与关闭 Linux中的防火墙主要是对iptables的设置和管理. 1. Linux防火墙(Iptables)重启系统生效 开启: chkconfig ipt ...

  7. linux 防火墙iptables简明教程

    前几天微魔部落再次遭受到个别别有用心的攻击者的攻击,顺便给自己充个电,复习了一下linux下常见的防火墙iptables的一些内容,但是无奈网上的很多教程都较为繁琐,本着简明化学习的目的,微魔为大家剔 ...

  8. Linux防火墙iptables简明教程

    前几天微魔部落再次遭受到个别别有用心的攻击者的攻击,顺便给自己充个电,复习了一下linux下常见的防火墙iptables的一些内容,但是无奈网上的很多教程都较为繁琐,本着简明化学习的目的,微魔为大家剔 ...

  9. Linux防火墙iptables学习笔记(三)iptables命令详解和举例[转载]

     Linux防火墙iptables学习笔记(三)iptables命令详解和举例 2008-10-16 23:45:46 转载 网上看到这个配置讲解得还比较易懂,就转过来了,大家一起看下,希望对您工作能 ...

随机推荐

  1. AcWing 1250. 格子游戏

    #include<bits/stdc++.h> using namespace std; int n,m; int fa[1000000]; int found(int x) { if(f ...

  2. python 正则表达式 中级

    1.子表达式 将几个字符的组合形式看做一个大的字符,例如匹配IP地址,形如 127.0.0.1 答案一:p1='\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}' pattern1 ...

  3. redis学习笔记(三)——redis的命令大全总结

    总结了一些redis五种存储类型的常用命令以及一些通用操作命令,不是很全,是在学习的时候将学到的做了个汇总,使用的时候可以查一下. 笔记写在表格里面了,不好粘贴.......后面的直接截图了..... ...

  4. CG-CTF Our 16bit wars

    一题纯看汇编的题 INT 21H, ah为0A时,是输入字符串到缓冲区DS:DX,DX+1地址存放着字符串长度 说明了长度为35 这里加密是右移3位异或左移5位, 告诉了我们加密后的字符串是什么,写个 ...

  5. python使用笔记14--商品管理小练习

    1 import json 2 import pymysql 3 IP = '127.0.0.1' 4 PORT = 3306 5 USER_NAME = 'root' 6 PASSWORD = '1 ...

  6. [007] - JavaSE面试题(七):异常

    第一期:Java面试 - 100题,梳理各大网站优秀面试题.大家可以跟着我一起来刷刷Java理论知识 [007] - JavaSE面试题(七):异常 第1问:Error和Exception的区别? E ...

  7. 替代Infinity绝佳的自主开发chrome插件

    最近闲来无事在好朋(da)友(shen)的帮助下开发一个chrome插件,目的是为了替换infinity主页插件, 当然在此也推荐一波infinity确实不错,界面和易用性都是非常好用的水准了. 主页 ...

  8. React组件三大属性之 props

    React组件三大属性之 props 理解1) 每个组件对象都会有props(properties的简写)属性2) 组件标签的所有属性都保存在props中 作用1) 通过标签属性从组件外向组件内传递变 ...

  9. 动态 WebApi 引擎使用教程(3行代码完成动态 WebApi 构建)

    目录 什么是 WebApiEngine? 开源地址 使用方法 使用 [ApiBind] 标签让任何方法变成 WebApi 对 API 进行分类 自定义 API 名称 复制特性 为整个类配置 WebAp ...

  10. Oracle导入dmp文件:ORACLE错误12899而拒绝行的问题如何解决

    原文链接:https://www.2cto.com/database/201804/736027.html