转自

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. 题解 P2026 【求一次函数解析式】

    高中方式轻松解决这个模拟题. 首先我们了解斜率的简单求法: \[k= {y2-y1 \over x2-x1}{=}{\Delta y \over \Delta x}\] 然后我们了解到让我们求解一次函 ...

  2. Day24-part1-原生Ajax

    参考老师博客:http://www.cnblogs.com/wupeiqi/articles/5703697.html 主要讲了:发数据的3种方式以及上传文件的3种方式.(后续需要总结) 一,原生Aj ...

  3. LINQ 模糊搜索

    IList<entity> ls = new List<entity>(); ls = (from k in ls where k.Name.Contains("sa ...

  4. BZOJ 3731: Gty的超级妹子树

    3731: Gty的超级妹子树 Time Limit: 7 Sec  Memory Limit: 32 MBSubmit: 346  Solved: 96[Submit][Status][Discus ...

  5. 洛谷 P5105 不强制在线的动态快速排序

    P5105 不强制在线的动态快速排序 题目背景 曦月最近学会了快速排序,但是她很快地想到了,如果要动态地排序,那要怎么办呢? 题目描述 为了研究这个问题,曦月提出了一个十分简单的问题 曦月希望维护一个 ...

  6. 2017实习【Java研发】面经

    标签: 实习 面经 Java研发 阿里.腾讯.华为 找2017暑假实习,经历过被腾讯拒绝的无奈,也有拿到阿里和华为offer的喜悦,找实习过程也有一段时间了,在此把之前的面试知识点和经历做个小总结,以 ...

  7. mac、linux 查看端口占用程序

    lsof -i:80 列出占用 80 端口的程序 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME mysqld 672 ruby 42u IPv4 ...

  8. 【Asp.net入门5-02】创建数据模型和存储库

  9. php-fpm 重启 nginx单独配置 重启

    nginx单独配置 重启 [root@ssy106c14c190c69 Api]# cd /usr/local/nginx/sbin/[root@ssy106c14c190c69 sbin]# lsn ...

  10. go语言从零学起(一) -- 文档教程篇

    先记录一下自己学go语言的出发点 作为一个phper,精通一门底层语言一直是努力的目标. 相对于c,c++,go语言不需要过多的关注指针,内存释放,一两行代码就能跑起一个server服务,简直不要太简 ...