iptables速查

本文涉及的产品
云防火墙,500元 1000GB
简介: iptables速查

iptables规则链

  • PREROUTE
  • INPUT
  • FORWARD
  • OUTPUT
  • POSTROUTING

防火墙策略

  1. 默认关闭,只有指定数据放行
  2. 默认开启,只有指定的开启

动作

  1. DEOP 丢弃
  2. REJECT 明示拒绝
  3. ACCEPT 接受
  4. custom_chain 转向一个自定义的链
  5. DNAT
  6. SNAT
  7. MASQUERADE  源地址伪装
  8. REDIRECT 端口重定向
  9. MARK 打防火墙的标志
  10. RETURN 返回在自定义链执行完毕后返回 来返回原规则链

iptables默认三个表

  1. filter
  2. nat
  3. manage

iptables基本命令

  • 这些配置就像用命令配置IP一样,重起就会失去作用,所以我们需要去保存这个配置 /etc/rc.d/init.d/iptables save
  • 这样就可以写到/etc/sysconfig/iptables文件里了.
  • 写入后记得把防火墙重起一下,才能起作用.service iptables restart

iptables -L -n           查询当前iptables的规则

iptables -F              清除预设表fliter中的所有规则链的规则

iptabl e -X  (OUTPUT)   可以指定链清理 清除预设表filter中使用者自定链中的规则

设置预设规则

iptables -P INPUT DROP
iptables -P OUTPUT  ACCEPT
iptables -P FORWARD DROP
  • 上面命令的意思就是 输入的和转发的  如果不在我们定义的规则里面就丢弃掉(INPUT FORWARD) 而对于OUTPUT我们没有过多的限制  如果输出的不在我们的规则里面即通过

添加规则

  • 详细限制某个ip访问 iptables -t filter -A OUTPUT  -s 192.168.31.210 -d 192.168.31.211 -p tcp --dport 22 -j ACCEPT

参数效果 -t指定表-s指定输入源-d指定接收-p tcp指定协议--dport指定端口-j指定规则

  • 开启ping
    iptables -A OUTPUT -p icmp -j ACCEPT (OUTPUT设置成DROP的话)
    iptables -A INPUT -p icmp -j ACCEPT  (INPUT设置成DROP的话)
  • 关闭一下不必要端口
    iptables -A OUTPUT -p tcp --sport 31337 -j DROP

这个是可以任何ip访问 只是开放了端口

开启ftp服务

iptables -A INPUT -p tcp --dport 21 -j ACCEPT
iptables -A INPUT -p tcp --dport 20 -j ACCEPT
  • 如果一个ip访问web服务并发20以上就拒绝该连接
    iptables  -I INPUT -p tcp --dport 80 -m connlimit --connlimit-above 20 -j REJECT

ipset

  • ipset安装
    yum安装: yum install ipset
  • 创建一个ipset

ipset create xxx hash:net (也可以是hash:ip ,这指的是单个ip,xxx是ipset名称)

ipset默认可以存储65536个元素,使用maxelem指定数量

ipset create blacklist hash:net maxelem 1000000 #黑名单

ipset create whitelist hash:net maxelem 1000000 #白名单

  • 查看已创建的ipset
    ipset list
  • 加入一个名单ip
    ipset add blacklist 10.60.10.xx
  • 去除名单ip
    ipset del blacklist 10.60.10.xx
  • 创建防火墙规则,与此同时,allset这个IP集里的ip都无法访问80端口(如:CC攻击可用

iptables -I INPUT -m set –match-set blacklist src -p tcp -j DROP

iptables -I INPUT -m set –match-set whitelist src -p tcp -j DROP

service iptables save

iptables -I INPUT -m set –match-set setname src -p tcp –destination-port 80 -j DROP

  • ipset规则保存到文件
    ipset save blacklist -f blacklist.txt
    ipset save whitelist -f whitelist.txt
  • 删除ipset
    ipset destroy blacklist
    ipset destroy whitelist
  • 导入ipset规则
    ipset restore -f blacklist.txt
    ipset restore -f whitelist.txt
    ipset的一个优势是集合可以动态的修改,即使ipsetiptables规则目前已经启动,新加的入ipsetip也生效

本文为作者原创,手码不易,允许转载,转载后请以链接形式说明文章出处。

目录
相关文章
|
存储 网络协议 网络安全
iptables速查
iptables速查
92 0
|
XML 网络协议 网络安全
Nmap 基础命令速查
Nmap 基础命令速查
116 0
|
Linux 网络安全
iptables简介1及常用命令
第一章:简述 iptables是一个用户态工具,用于操作linux内核部分的netfilter模块(包过滤),用来完成防火墙相关的工作。linux的netfilter工作于2层(开启bridge-nf时刻)和3层(ip层),可以对ip包,二层数据链路包进行操作;而市面上还有一种防火墙是应用层防火墙,可以对应用层包进行检查(过滤)。
1212 0
|
网络协议 Linux 网络安全
|
网络协议 网络安全