iptables 允许特定主机访问本机,其他所有 IP 拒绝

目录


    关闭 fw,开启 iptables

    #关闭 firewalld 防火墙
    systemctl stop firewalld.service
    systemctl disable firewalld.service
    
    #安装 iptables 防火墙 
    yum -y install iptables iptables-services
    
    #设置 iptables 开机启动
    systemctl start iptables.service
    systemctl enable iptables.service
    

    常用命令

    iptables -L  # 查看规则链
    iptables -F  # 清除规则链,只剩默认策略
    iptables -I INPUT -j DROP  # 阻止所有机器访问本机
    iptables -t filter -A INPUT -p icmp -j REJECT  # 不允许任何主机 ping 本主机,REJECT 拒绝
    iptables -I INPUT 1 -p icmp --icmp-type echo-request -j DROP  # 禁止全部 ping 操作,同上
    iptables -I INPUT -p icmp --icmp-type echo-request -s 192.168.10.30 -j ACCEPT  # 允许指定 ip 可以 ping 操作
    iptables -A INPUT -s 192.168.1.0/24 -p tcp -j ACCEPT  # 配置允许某一网段访问本机所有端口
    iptables -I INPUT -p tcp --dport 22 -j DROP  # 拒绝所有主机访问本机 tcp 22 端口
    iptables -I INPUT -s 192.168.10.30 -p tcp --dport 22 -j ACCEPT  # 允许指定主机访问本机 tcp 22 端口
    iptables -A INPUT -p tcp --dport 22 -j ACCEPT  # 配置允许所有 IP 访问本机 22 端口
    iptables -I INPUT -p tcp -m iprange --src-range 192.168.10.10-192.168.10.100 -j ACCEPT  # 允许指定范围 IP 访问本机所有 tcp 端口
    iptables -A INPUT -s 192.168.1.123 -p tcp --dport 80 -j DROP  # 配置禁止某个 ip 访问本机的 80 端口
    service iptables save  # 使配置防火墙策略永久生效,执行保存命令,不然的话重启后会失效
    

    设置白名单

    [root@master ~]#vim /etc/sysconfig/iptables
    *filter
    :INPUT ACCEPT [0:0]
    :FORWARD ACCEPT [0:0]
    :OUTPUT ACCEPT [0:0]
    #
    # #定义白名单群组
    -N whitelist
    #设置白名单IP,开放ip可以访问设备,白名单就按类似规则增加就可以
    -A whitelist -s  192.168.10.20     -j ACCEPT
    -A whitelist -s  192.168.10.30     -j ACCEPT
    #开放所有设备主动访问的服务器,处在RELATED,ESTABLISHED状态可以通信,这样设备需要主动访问的服务器就不用一个一个添加到白名单了
    -A INPUT -m state --state RELATED,ESTABLISHED -j whitelist
    -A INPUT -p icmp -j ACCEPT
    -A INPUT -i lo -j ACCEPT
    # #白名单端口
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j whitelist
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j whitelist
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j whitelist
    #拒绝白名单以外IP访问指定端口
    -A INPUT  -p tcp  -m  multiport --dports  3306,80,22  -j  DROP
    COMMIT
    
    [root@master ~]#systemctl restart iptables
    

    链接1
    链接2
    Linux 使用 iptables 禁止某些 IP 访问
    Linux 防火墙--iptables--白名单配置
    iptables 设置黑白名单


    posted @ 2022-06-28 11:22  公博义  阅读(5575)  评论(0编辑  收藏  举报