常用服务iptables设置

运维 系统运维
iptables 是与最新的 2.6.x 版本Linux 内核集成的 IP 信息包过滤系统。本文解析下iptables常用服务是如何设置的。

 

  #查看已经存在的条目

  Java代码

 

  1.   sudo iptables -L -n --line-number  
  2.  
  3.   sudo iptables -L -n --line-number  
  4.  

 

  #也可以简单的

  Java代码

 

  1.   sudo iptables -L -n  
  2.  
  3.   sudo iptables -L -n  
  4.  

 

  #禁用全部

  Java代码

 

  1.   sudo iptables -P INPUT DROP  
  2.  
  3.   sudo iptables -P OUTPUT DROP  
  4.  
  5.   sudo iptables -P FORWARD DROP  
  6.  
  7.   sudo iptables -P INPUT DROP  
  8.  
  9.   sudo iptables -P OUTPUT DROP  
  10.  
  11.   sudo iptables -P FORWARD DROP  
  12.  

 

  #环回口全部允许

  Java代码

 

  1.   sudo iptables -A INPUT -i lo -j ACCEPT  
  2.  
  3.   sudo iptables -A OUTPUT -o lo -j ACCEPT  
  4.  
  5.   sudo iptables -A INPUT -i lo -j ACCEPT  
  6.  
  7.   sudo iptables -A OUTPUT -o lo -j ACCEPT  
  8.  

 

  #允许已建立连接的包直接通过

  Java代码

 

  1.   sudo iptables -I INPUT 1 -m state --state ESTABLISHED,RELATED -j ACCEPT  
  2.  
  3.   sudo iptables -I INPUT 1 -m state --state ESTABLISHED,RELATED -j ACCEPT  
  4.  

 

  #ssh配置

  Java代码

 

  1.   sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT  
  2.  
  3.   sudo iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT  
  4.  
  5.   sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT  
  6.  
  7.   sudo iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT  
  8.  

 

  #为了安全可以绑定本机地址,网卡

  Java代码

 

  1.   sudo iptables -A INPUT -i eht0 -p tcp -d 10.3.37.100 --dport 22 -j ACCEPT  
  2.  
  3.   sudo iptables -A OUTPUT -o eth0 -p tcp -s 10.3.37.100 --sport 22 -j ACCEPT  
  4.  
  5.   sudo iptables -A INPUT -i eht0 -p tcp -d 10.3.37.100 --dport 22 -j ACCEPT  
  6.  
  7.   sudo iptables -A OUTPUT -o eth0 -p tcp -s 10.3.37.100 --sport 22 -j ACCEPT  
  8.  

 

  #更安全的配置是过滤发出信息包。

  Java代码

 

  1.   sudo iptables -A OUTPUT -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT  
  2.  
  3.   sudo iptables -A OUTPUT -p tcp --sport 80 -m state --state ESTABLISHED -j ACCEPT  
  4.  
  5.   sudo iptables -A OUTPUT -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT  
  6.  
  7.   sudo iptables -A OUTPUT -p tcp --sport 80 -m state --state ESTABLISHED -j ACCEPT  
  8.  

 

  #过滤进入数据包(-p tcp ! --syn)

  Java代码

 

  1.   iptables -A INPUT -i eth0 -p tcp ! --syn -d 10.3.37.100 --dport 80 -j ACCEPT  
  2.  
  3.   iptables -A INPUT -i eth0 -p tcp ! --syn -d 10.3.37.100 --dport 80 -j ACCEPT  
  4.  

 

  #mysql配置

  Java代码

 

  1.   sudo iptables -A INPUT -p tcp --dport 3306 -j ACCEPT  
  2.  
  3.   sudo iptables -A OUTPUT -p tcp --sport 3306 -j ACCEPT  
  4.  
  5.   sudo iptables -A INPUT -p tcp --dport 3306 -j ACCEPT  
  6.  
  7.   sudo iptables -A OUTPUT -p tcp --sport 3306 -j ACCEPT  
  8.  

 

  #拒绝个别ip

  Java代码

 

  1.   sudo iptables -A INPUT -s XX.XX.XX.XX -j DROP  
  2.  

 

  #封ddos用REJECT,可以降低对方发包速度

 

  1.   sudo iptables -A INPUT -s XX.XX.XX.XX -j DROP  
  2.  

 

  #封ddos用REJECT,可以降低对方发包速度

  #DNS设置

  Java代码

 

  1.   sudo iptables -A INPUT -p udp --dport 53 -j ACCEPT  
  2.  
  3.   sudo iptables -A INPUT -p udp --sport 53 -j ACCEPT  
  4.  
  5.   sudo iptables -A OUTPUT -p udp --dport 53 -j ACCEPT  
  6.  
  7.   sudo iptables -A OUTPUT -p udp --sport 53 -j ACCEPT  
  8.  
  9.   sudo iptables -A INPUT -p udp --dport 53 -j ACCEPT  
  10.  
  11.   sudo iptables -A INPUT -p udp --sport 53 -j ACCEPT  
  12.  
  13.   sudo iptables -A OUTPUT -p udp --dport 53 -j ACCEPT  
  14.  
  15.   sudo iptables -A OUTPUT -p udp --sport 53 -j ACCEPT  
  16.  

#p#

  #red hat的NFS设置

  ——————————————————————————

  [root@client53 ~]# cat /etc/sysconfig/nfs |grep $#

  LOCKD_TCPPORT=4002

  LOCKD_UDPPORT=4002

  MOUNTD_PORT=4003

  STATD_PORT=4004

  #STATD_OUTGOING_PORT=2020

  ——————————————————————————

  6)iptables配置文件的修改:/etc/sysconfig/iptables

  ——————————————————————————

  [root@client53 ~]# cat /etc/sysconfig/iptables

  ……前面省略

  -A RH-Firewall-1-INPUT -p tcp --dport 4002:4004 -j ACCEPT

  -A RH-Firewall-1-INPUT -p udp --dport 4002:4004 -j ACCEPT

  -A RH-Firewall-1-INPUT -p tcp --dport 2049 -j ACCEPT

  -A RH-Firewall-1-INPUT -p udp --dport 2049 -j ACCEPT

  -A RH-Firewall-1-INPUT -p tcp --dport 111 -j ACCEPT

  -A RH-Firewall-1-INPUT -p udp --dport 111 -j ACCEPT

  ……后面省略

  #ubuntu的nfs,暂时不知道怎么个别服务怎么指定端口,所以只好开2049和32768-65535端口

  #FTP设置

  #vsftpd先设定数据传输端口。

  Java代码

 

  1.   sudo vi /etc/vsftpd.conf  
  2.  
  3.   sudo vi /etc/vsftpd.conf  
  4.  

 

  #最后加入

  Java代码

 

  1.   pasv_min_port = 30000  
  2.  
  3.   pasv_min_port = 31000  
  4.  
  5.   pasv_min_port = 30000  
  6.  
  7.   pasv_min_port = 31000  
  8.  

 

  #pureftpd设置数据传输端口

  Java代码

 

  1.   PassivePortRange 30000 31000 
  2.  
  3.   PassivePortRange 30000 31000 
  4.  

 

  #iptables设置

  Java代码

 

  1.   sudo iptables -A INPUT -p tcp --dport 21 -j ACCEPT  
  2.  
  3.   sudo iptables -A OUTPUT -p tcp --sport 21 -j ACCEPT  
  4.  

 

  # Enable active ftp transfers

 

  1.   sudo iptables -A INPUT -p tcp --dport 20 -j ACCEPT  
  2.  
  3.   sudo iptables -A OUTPUT -p tcp --sport 20 -j ACCEPT  
  4.  

 

  # Enable passive ftp transfers

 

  1.   sudo iptables -A INPUT -p tcp --dport 30000:31000 -j ACCEPT  
  2.  
  3.   sudo iptables -A OUTPUT -p tcp --sport 30000:31000 -j ACCEPT  
  4.  
  5.   sudo iptables -A INPUT -p tcp --dport 21 -j ACCEPT  
  6.  
  7.   sudo iptables -A OUTPUT -p tcp --sport 21 -j ACCEPT  
  8.  

 

  # Enable active ftp transfers

  sudo iptables -A INPUT -p tcp --dport 20 -j ACCEPT

  sudo iptables -A OUTPUT -p tcp --sport 20 -j ACCEPT

  # Enable passive ftp transfers

  sudo iptables -A INPUT -p tcp --dport 30000:31000 -j ACCEPT

  sudo iptables -A OUTPUT -p tcp --sport 30000:31000 -j ACCEPT

  #ubuntu保存与开机加载

  Java代码   sudo cp iptables.up.rules /etc/

 

  1.   sudo vi /etc/network/interfaces  
  2.  
  3.   sudo iptables-save > iptables.up.rules  
  4.  
  5.   sudo cp iptables.up.rules /etc/  
  6.  
  7.   sudo vi /etc/network/interfaces  
  8.  

 

  #在interfaces末尾加入

  Java代码

 

  1.   pre-up iptables-restore < /etc/iptables.up.rules  
  2.  
  3.   pre-up iptables-restore < /etc/iptables.up.rules  
  4.  

 

  #也可以设置网卡断开的rules。

  Java代码

 

  1.   post-down iptables-restore < /etc/iptables.down.rules  
  2.  
  3.   post-down iptables-restore < /etc/iptables.down.rules  
  4.  

 

  #CentOS保存

  Java代码

  service iptables save

通过文章的描写和代码的分析,我们可以清楚的知道常用服务iptables设置情况,以便以后会用到!

【编辑推荐】

  1. Iptables性能测试
  2. iptables nat实验
  3. iptables 简单学习笔记
  4. 在Red Hat上安装iptables
  5. 搭建基于netfilter/iptables的实验环境
  6. 用IPtables限制BT、电驴等网络流量
  7. 如何使用IPTables实现字符串模式匹配
  8. iptables相关脚本

 

责任编辑:赵鹏 来源: 网络转载
相关推荐

2011-03-15 09:59:54

2011-03-15 09:59:54

2011-03-16 10:07:00

2011-03-16 13:09:10

iptables 端口

2011-03-15 17:46:43

2011-03-15 09:59:57

2017-09-11 20:16:58

2011-03-17 15:44:21

2011-03-15 09:02:01

IPtables常用命令

2011-03-16 09:05:33

2013-06-21 14:20:00

IISWeb服务器

2009-06-02 14:15:44

myeclipse jmyeclipse设置

2011-08-22 15:33:44

2011-03-15 17:25:38

2010-02-24 15:10:18

2010-01-07 11:19:31

2009-07-09 17:58:21

MyEclipse常用

2011-03-17 17:19:24

iptables

2011-03-18 09:26:13

Iptables规则

2011-08-18 10:22:44

点赞
收藏

51CTO技术栈公众号