• iptables


    网络安全,先来说一下host.allow,host.deny

    这两个文件在大多数linux系统中都存在,其作用是对主机进行访问控制。

    只在如下情况下才用得上这两个文件:

    • xinet管控的服务
    • 调用了libwrap.so的服务

    如何确定一个服务是否调用了libwrap.so

    使用ldd命令,ldd列出程序依赖的共享库

    iptables练习题

    1.1)设定INPUT为ACCEPT
    1.2)设定OUTPUT为ACCEPT
    1.3)设定FORWARD为ACCEPT
    答案:

    1. iptables -P INPUT ACCEPT
    2. iptables -P OUTPUT ACCEPT
    3. iptables -P FORWARD ACCEPT

    2)定制源地址访问策略
    2.1)接收来自192.168.0.3的IP访问
    2.2)拒绝来自192.168.0.0/24网段的访问

    1. iptables -A INPUT -s 192.168.0.3 -j ACCEPT
    2. iptables -A INPUT -s 192.168.0.0/24 -j DROP


    3)目标地址192.168.0.3的访问给予记录,并查看/var/log/message

    1. iptables -A OUTPUT -d 192.168.0.3 -j LOG
      //测试过正确


    4)定制端口访问策略
    4.1)拒绝任何地址访问本机的111端口
    4.2)拒绝192.168.0.0/24网段的1024-65534的源端口访问SSH

    1. iptables -A INPUT -p tcp -dport 111 -j DROP
    2. iptables -A INPUT -p udp -dport 111 -j DROP
    3. iptables -A INPUT -s 192.168.0.0/24 -p tcp --sport 1024:65534 --dport 22 -j DROP


    5)定制CLIENT端的防火墙访问状态
    5.1)清除所有已经存在的规则;
    5.2)设定预设策略,除了INPUT设为DROP,其他为ACCEPT;
    5.3)开放本机的lo可以自由访问;
    5.4)设定有相关的封包状态可以进入本机;

    1. iptables -F
    2. iptables -X
    3. iptables -Z
    4. iptables -t nat -F
    5. iptables -t nat -X
    6. iptables -t nat -Z
    7. iptables -P INPUT DROP
    8. iptables -A INPUT -o lo -j ACCEPT
    9. iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT


    6)定制防火墙的MAC地址访问策略
    6.1)清除所有已存的规则
    6.2)将INPUT设为DROP
    6.3)将目标计算机的MAC设为ACCEPT

    1. iptables -F
    2. iptables -Z
    3. iptables -X
    4. iptables -t nat -F
    5. iptables -t nat -Z
    6. iptables -t nat -X
    7. iptables -P INPUT DROP
    8. iptables -A INPUT -m MAC --mac-source ee-ee-ee-ee-ee-ee -j ACCEPT
      //这个没有成功


    7)设定ICMP包,状态为8的被DROP掉

    1. iptables -A INPUT -p icmp --icmp-type 8 -j DROP


    8)定制防火墙的NAT访问策略
    8.1)清除所有策略
    8.2)重置ip_forward为1
    8.3)通过MASQUERADE设定来源于192.168.6.0网段的IP通过192.168.6.217转发出去
    8.4)通过iptables观察转发的数据包

    1. iptables -F
    2. iptables -Z
    3. iptables -X
    4. iptables -t nat -F
    5. iptables -t nat -Z
    6. iptables -t nat -X
    7. echo 1 > /proc/sys/net/ipv4/ip_forward
    8. iptables -t nat -A POSTROUTING -s 192.168.6.0/24 -o eth0 -j MASQUERADE
    9. iptables -nv
      //这个需要记住


    9)定制防火墙的NAT访问策略
    9.1)清除所有NAT策略
    9.2)重置ip_forward为1
    9.3)通过SNAT设定来源于192.168.6.0网段通过eth1转发出去
    9.4)用iptables观察转发的数据包

    1. echo 1 > /proc/sys/net/ipv4/ip_forward
    2. iptables -t nat -A POSTROUTING -o eth1 -j SNAT --to-source 192.168.6.217
    3. iptables -L -vn

    10)端口转发访问策略
    10.1)清除所有NAT策略
    10.2)重置ip_forward为1
    10.3)通过DNAT设定为所有访问192.168.6.217的22端口,都访问到192.168.6.191的22端口
    10.4)设定所有到192.168.6.191的22端口的数据包都通过FORWARD转发
    10.5)设定回应数据包,即通过NAT的POSTROUTING设定,使通讯正常

    1. lue
    2. lue
    3. iptables -t nat -A PREROUTING -s 192.168.6.217 -p tcp --sport 22 -j DNAT --to-destination 192.168.6.191:22
    4. iptables -t filter -A FORWARD -d 192.168.6.191 -p tcp --dport 22 -j ACCEPT
    5. iptables -t nat -I POSTROUTING -p tcp --dport 22 -j MASQUERADE
      //这个没有做,不明白什么意思

    来源:

    http://www.centos.bz/2012/08/iptables-exercises/

  • 相关阅读:
    HDU 5336 The mook jong (DP)
    HDU 1686 Oulipo (KMP——统计模式串出现次数)
    hdu 1711Number Sequence (KMP——输出模式串第一次出现位置)
    POJ Borg Maze (BFS+最小生成树)
    POJ 2349 Arctic Network (最小生成树第K大(小)边)
    hdu 1712 ACboy needs your help (dp 分组背包)
    hdu 1181 变形课 (bfs)
    hdu 2069 Coin Change (dp 母函数 )
    hdu 1171 Big Event in HDU(dp 01背包 母函数)
    hdu 1398 Square Coins (母函数)
  • 原文地址:https://www.cnblogs.com/silenceli/p/3415871.html
Copyright © 2020-2023  润新知