iptables

iptables -A INPUT -s 0.0.0.0/0 -d 0.0.0.0/0 -p tcp --dport 8910 -j ACCEPT   #允许any到any 8910端口
iptables -A INPUT -s 0.0.0.0/0 -d 0.0.0.0/0 -p tcp --dport 80 -j  ACCEPT      #允许any到any 80端口
 
--------------------------开放22端口-----------------------------------------------------
1
2
3
4
5
6
7
8
9
10
11
iptables -A INPUT -i eth0 -s 172.16.0.0/16 -d 172.16.100.7 -p tcp --dport 22 -j ACCEPT 
# 允许172.16段访问100.7的22端口 -i  eth0  指定从eth0口进入
  
iptables -A OUTPUT -s 172.16.100.7 -d 172.16.0.0/16 -p tcp --sport 22 -j ACCEPT  #允许100.7去访问172.16段
  
iptables -t filter -P INPUT DROP  # 拒绝所有进入
iptables -t filter -P OUTPUT DROP  # 拒绝所有出去
iptables -t filter -P FORWARD DROP  # 拒绝所有转发
  
iptables-save > /etc/sysconfig/iptables  # 保存配置,默认些文件是不存在的
# Centos6上可以使用:service iptables save
 
实时查看命令规则:watch -n 1 'iptables -L -n -v'
 
-------------------centos 6 -------------------------
1
2
3
4
5
iptables -A INPUT  -s 192.168.0.0/16 -d 192.168.11.2 -p tcp --dport 22 -j ACCEPT
iptables -A OUTPUT -s 192.168.11.2 -d 192.168.0.0/16 -p tcp --sport 22 -j ACCEPT
iptables -t filter -P INPUT DROP  # 拒绝所有进入
iptables -t filter -P OUTPUT DROP  # 拒绝所有出去
iptables -t filter -P FORWARD DROP  # 拒绝所有转发
 
修改规则:
例:修改iptables -A OUTPUT -s 172.16.100.7 -d 172.16.0.0/16 -p tcp --sport 22 -j ACCEPT
iptables -R OUTPUT 1 -s 172.16.100.7 -d 172.16.0.0/16 -o eth0 -p tcp --sport 22 -j ACCEPT
# -R 表示修改, 1 表示第一条规则   , 新增 -o eth0
 
插入规则:默认插入为第一条,最上面,刚好与-A相反
    iptables -I INPUT -i lo -j ACCEPT  #插入一条允许进入
    iptables -I OUTPUT -o lo -j ACCEPT  #插入一条允许出去     
 
注意:如果需要放通所有必须先改默认链为ACCEPT ,再使用iptables -F ,切记
 
检查TCP协议包: --tcp-flags
iptables -I INPUT -p tcp --tcp-flags all all -j DROP #没有指定源和目标地址表示所有,
# --tcp-flags all all ,第一个all表示syn,ack,fin,rst ,第二个all表示它们的状态都为1,全1状态不正常
 
iptables -I INPUT -p tcp --tcp-flags all none -j DROP #  none,表示状态都为0,都为0也不正常
 
检查TCP三次握手的第1次旅行:
iptables -I INPUT 3 -d 172.16.100.7 -p tcp --dport 22 --tcp-flags syn,ack,rst,fin syn -j ACCEPT
 
#--tcp-flags syn,ack,rst,fin syn  可以缩写成: --syn
 
放通NDS服务:
iptables -A OUTPUT -s 172.16.100.7 -p udp --dport 53 -j ACCEPT # 自己出去
iptables -A INPUT -d 172.16.100.7 -p udp --sport 53 -j ACCEPT  # 别人进来
 
-----------------------------------------------------------------
iptables -A OUTPUT -s 192.168.11.2 -p udp --dport 53 -j ACCEPT #
 
-----------------------------------------------------------------
dig -t A  www.qq.com
 
icmp 策略:
iptables -I INPUT -d 172.16.100.7 -p icmp -j ACCEPT  # 允许ping进来  
iptables -I OUTPUT -s 172.16.100.7 -p icmp -j ACCEPT # 允许ping出去
 
只允许自己ping出去:
iptables -A OUTPUT -s 172.16.100.7 -p icmp --icmp-type 8 -j ACCEPT #只允许自己ping出去
iptables -A INPUT -d 172.16.100.7 -p icmp --icmp-type 0 -j ACCEPT #只允许自己ping进来
 
multiport:多端口匹配,一次最多指定 不超过15个端口
    可用于匹配非连续或连续端口
    
    专用选项:
        --source-ports   # 源端口,连续端口使用:, 不连续使用,
        --destination-ports,--dports
例:
iptables -I INPUT -d 172.16.100.7 -p tcp -m multiport --dport 22,80 -j ACCEPT  #允许进入,目的IP100.7 ,22,80端口
iptables -I OUTPUT -s 172.16.100.7 -p tcp -m multiport --sport 22,80 -j ACCEPT #允许出去,源IP100.7,从22和80端口
 
posted @   此生逍遥py  阅读(72)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示