转自

25 个常用的 Linux iptables 规则 - 文章 - 伯乐在线
http://blog.jobbole.com/108468/

# 1. 删除所有现有规则

iptables -F

# 2. 设置默认的 chain 策略

iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP

# 3. 阻止某个特定的 IP 地址

BLOCK_THIS_IP="x.x.x.x"
iptables -A INPUT -s "$BLOCK_THIS_IP" -j DROP

# 4. 允许全部进来的(incoming)SSH

iptables -A INPUT -i eth0 -p tcp --dport  -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --sport -m state --state ESTABLISHED -j ACCEPT

# 5. 只允许某个特定网络进来的 SSH

iptables -A INPUT -i eth0 -p tcp -s 192.168.200.0/ --dport  -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --sport -m state --state ESTABLISHED -j ACCEPT

# 6. 允许进来的(incoming)HTTP

iptables -A INPUT -i eth0 -p tcp --dport  -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --sport -m state --state ESTABLISHED -j ACCEPT

# 7. 多端口(允许进来的 SSH、HTTP 和 HTTPS)

iptables -A INPUT -i eth0 -p tcp -m multiport --dports ,, -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp -m multiport --sports ,, -m state --state ESTABLISHED -j ACCEPT

# 8. 允许出去的(outgoing)SSH

iptables -A OUTPUT -o eth0 -p tcp --dport  -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A INPUT -i eth0 -p tcp --sport -m state --state ESTABLISHED -j ACCEPT

# 9. 允许外出的(outgoing)SSH,但仅访问某个特定的网络

iptables -A OUTPUT -o eth0 -p tcp -d 192.168.101.0/ --dport  -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A INPUT -i eth0 -p tcp --sport -m state --state ESTABLISHED -j ACCEPT

# 10. 允许外出的(outgoing) HTTPS

iptables -A OUTPUT -o eth0 -p tcp --dport  -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A INPUT -i eth0 -p tcp --sport -m state --state ESTABLISHED -j ACCEPT

# 11. 对进来的 HTTPS 流量做负载均衡

iptables -A PREROUTING -i eth0 -p tcp --dport  -m state --state NEW -m nth --counter  --every  --packet  -j DNAT --to-destination 192.168.1.101:
iptables -A PREROUTING -i eth0 -p tcp --dport -m state --state NEW -m nth --counter --every --packet -j DNAT --to-destination 192.168.1.102:
iptables -A PREROUTING -i eth0 -p tcp --dport -m state --state NEW -m nth --counter --every --packet -j DNAT --to-destination 192.168.1.103:

# 12. 从内部向外部 Ping

iptables -A OUTPUT -p icmp --icmp-type echo-request -j ACCEPT
iptables -A INPUT -p icmp --icmp-type echo-reply -j ACCEPT

# 13. 从外部向内部 Ping

iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT
iptables -A OUTPUT -p icmp --icmp-type echo-reply -j ACCEPT

# 14. 允许环回(loopback)访问

iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT

# 15. 允许 packets 从内网访问外网

# if eth1 is connected to external network (internet)
# if eth0 is connected to internal network (192.168..x)
iptables -A FORWARD -i eth0 -o eth1 -j ACCEPT

# 16. 允许外出的  DNS

iptables -A OUTPUT -p udp -o eth0 --dport  -j ACCEPT
iptables -A INPUT -p udp -i eth0 --sport -j ACCEPT

# 17. 允许 NIS 连接

# rpcinfo -p | grep ypbind ; This port is  and
#iptables -A INPUT -p tcp --dport -j ACCEPT
#iptables -A INPUT -p udp --dport -j ACCEPT
#iptables -A INPUT -p tcp --dport -j ACCEPT
#iptables -A INPUT -p udp --dport -j ACCEPT
#iptables -A INPUT -p tcp --dport -j ACCEPT
#iptables -A INPUT -p udp --dport -j ACCEPT

# 18. 允许某个特定网络 rsync 进入本机

iptables -A INPUT -i eth0 -p tcp -s 192.168.101.0/ --dport  -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --sport -m state --state ESTABLISHED -j ACCEPT

# 19. 仅允许来自某个特定网络的 MySQL 的链接

#iptables -A INPUT -i eth0 -p tcp -s 192.168.200.0/ --dport  -m state --state NEW,ESTABLISHED -j ACCEPT
#iptables -A OUTPUT -o eth0 -p tcp --sport -m state --state ESTABLISHED -j ACCEPT

# 20. 允许 Sendmail 或 Postfix

iptables -A INPUT -i eth0 -p tcp --dport  -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --sport -m state --state ESTABLISHED -j ACCEPT

# 21. 允许 IMAP 和 IMAPS

#iptables -A INPUT -i eth0 -p tcp --dport  -m state --state NEW,ESTABLISHED -j ACCEPT
#iptables -A OUTPUT -o eth0 -p tcp --sport -m state --state ESTABLISHED -j ACCEPT
#iptables -A INPUT -i eth0 -p tcp --dport -m state --state NEW,ESTABLISHED -j ACCEPT
#iptables -A OUTPUT -o eth0 -p tcp --sport -m state --state ESTABLISHED -j ACCEPT

# 22. 允许 POP3 和 POP3S

#iptables -A INPUT -i eth0 -p tcp --dport  -m state --state NEW,ESTABLISHED -j ACCEPT
#iptables -A OUTPUT -o eth0 -p tcp --sport -m state --state ESTABLISHED -j ACCEPT
#iptables -A INPUT -i eth0 -p tcp --dport -m state --state NEW,ESTABLISHED -j ACCEPT
#iptables -A OUTPUT -o eth0 -p tcp --sport -m state --state ESTABLISHED -j ACCEPT

# 23. 防止 DoS 攻击

iptables -A INPUT -p tcp --dport  -m limit --limit /minute --limit-burst  -j ACCEPT

# 24. 设置 422 端口转发到 22 端口

iptables -t nat -A PREROUTING -p tcp -d 192.168.102.37 --dport  -j DNAT --to 192.168.102.37:
iptables -A INPUT -i eth0 -p tcp --dport -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --sport -m state --state ESTABLISHED -j ACCEPT

# 25. 为丢弃的包做日志(Log)

iptables -N LOGGING
iptables -A INPUT -j LOGGING
iptables -A LOGGING -m limit --limit /min -j LOG --log-prefix "IPTables Packet Dropped: " --log-level
iptables -A LOGGING -j DROP

25 个常用的 Linux iptables 规则【转】的更多相关文章

  1. 25 个常用的 Linux iptables 规则

    # 1. 删除所有现有规则 iptables -F   # 2. 设置默认的 chain 策略 iptables -P INPUT DROP iptables -P FORWARD DROP ipta ...

  2. 常用的 Linux iptables 规则

    一些常用的 Linux iptables 规则,请根据自己的具体需要再修改. 转载自:http://mp.weixin.qq.com/s/uAPzh9_D4Qk6a3zBh7Jq5A # 1. 删除所 ...

  3. linux iptables规则介绍

    今天又学习了一下iptables,做一点总结来方便以后查阅. Netfilter(网络过滤器)是Linux操作系统核心层内部的一个数据包处理模块,主要负责数据包的拦截和转发,而iptables是Net ...

  4. Linux iptables

    一.简介 http://liaoph.com/iptables/ 二.操作 1)查看规则 iptables -t filter -L -n iptables -t nat -L -n iptables ...

  5. Linux iptables 防火墙常用规则

    iptables 安装 yum install iptables iptables 规则清除 iptables -F iptables -X iptables -Z 开放指定的端口允许本地回环接口(即 ...

  6. Linux iptables常用命令的使用

    为什么会有本文 因为最近帮一个朋友布署一个上网梯子,他那边本来用的是v2ray,但是他想用ssr,但是安装配置ssr过程中出了很多问题,比如linux内核版本4.9有点老,不支持bbr加速.无法连接s ...

  7. Linux iptables常用命令

    iptables 是 Linux 中重要的访问控制手段,是俗称的 Linux 防火墙系统的重要组成部分.这里记录了iptables 防火墙规则的一些常用的操作指令. 下面的操作以 CentOS 为基础 ...

  8. linux iptables常用命令之配置生产环境iptables及优化

    在了解iptables的详细原理之前,我们先来看下如何使用iptables,以终为始,有可能会让你对iptables了解更深 所以接下来我们以配置一个生产环境下的iptables为例来讲讲它的常用命令 ...

  9. Linux iptables 配置规则

    Linux iptables 防火墙配置规则 前言:把网上我感觉不错iptables的访问规则都统一在这里,以后做参考. modprobe ipt_MASQUERADE modprobe ip_con ...

随机推荐

  1. 树形DP入门详解+题目推荐

    树形DP.这是个什么东西?为什么叫这个名字?跟其他DP有什么区别? 相信很多初学者在刚刚接触一种新思想的时候都会有这种问题. 没错,树形DP准确的说是一种DP的思想,将DP建立在树状结构的基础上. 既 ...

  2. vs2013 查找进行的过程中被停止

    VS"Find in Files"失效的解决方法一:让VS窗口获得焦点,依次按以下快捷键Ctrl+BreakCtrl+Scroll LockAlt+Break VS"Fi ...

  3. 【刷题】洛谷 P3834 【模板】可持久化线段树 1(主席树)

    题目背景 这是个非常经典的主席树入门题--静态区间第K小 数据已经过加强,请使用主席树.同时请注意常数优化 题目描述 如题,给定N个正整数构成的序列,将对于指定的闭区间查询其区间内的第K小值. 输入输 ...

  4. 洛谷 P2805 [NOI2009]植物大战僵尸 解题报告

    P2805 [NOI2009] 植物大战僵尸 题目描述 Plants vs. Zombies(PVZ)是最近十分风靡的一款小游戏.Plants(植物)和Zombies(僵尸)是游戏的主角,其中Plan ...

  5. 20135239 Linux内核分析 期中总结

    期中总结 链接 网易云课堂 MOOC 摘录与实验内容 第一周: http://www.cnblogs.com/20135239-yxlm/p/5216842.html 第二周: http://www. ...

  6. 构建工具----gradle---可能遇到的问题----Could not reserve enough space for object heap

    Could not reserve enough space for object heap 意思是 jvm的设置内存不足以运行gradle命令了. 分为两种情况,解决的方法也不同. .10/user ...

  7. 构建工具-----Gradle(二)-----myeclipse 10和myeclipse2015安装gradle插件----其他版本的myeclipse类似

    我们需要给myeclipse安装gradle的插件.这样myeclipse就能识别到gradle项目了,直接加载进去即可. 我们先安装配置系统命令行的gradle,挺简单的,下载后配置环境变量即可,详 ...

  8. Java之线程池和Lambda表达式

    线程池和lambda表达式 学习线程池和lambda表达式的理解 补充一个知识点(单例设计模式) 在多线程中,我们只需要一个任务类,为了防止创建多个任务类,这个时候就需要用到单例模式,单例模式有两种设 ...

  9. mysql:InnoDB行/表级锁实现/事务

    转载:http://book.51cto.com/art/200803/68127.htm 20.3.4 InnoDB行锁实现方式 InnoDB行锁是通过给索引上的索引项加锁来实现的,这一点MySQL ...

  10. 在 mac 上添加想要的命令

    习惯了 Linux 下的 ll 命令,Mac 终端没有这个命令很不舒服.可以将 ll 别名解决这个问题: 打开终端,进入到当前根目录 cd ~ 编辑.bash_profile文件 vim .bash_ ...