zoukankan      html  css  js  c++  java
  • iptables自动信任ssh来源IP

    [root@5kohi ~]# crontab -l
    * * * * * sh /home/shells/iptables_auto_accept_ssh_source_ip.sh
    [root@5kohi ~]# cat /home/shells/iptables_auto_accept_ssh_source_ip.sh
    #!/bin/bash
    
    #  该脚本基于centos7操作系统
    #  建议禁用firewalld服务,启用iptables服务
    #    yum install -y iptables-services
    #    systemctl disable firewalld.service
    #    systemctl start firewalld.service
    #    systemctl enable iptables.services
    #    systemctl start iptables.services
    #  修改iptables默认配置文件 /etc/sysconfig/iptables
    #    修改sshd监听端口后,要同时修改防火墙配置,比如我使用的是tcp 2222端口
    #      -A INPUT -p tcp -m state --state NEW -m tcp --dport 2222 -j ACCEPT
    #    修改INPUT和FORWARD默认规则为DROP
    #      -A INPUT -j DROP
    #      -A FORWARD -j DROP
    #    改完配置记得重启下服务
    #      systemctl restart iptables.services
    
    
    #  将该脚本添加到计划任务中,每分钟执行一次
    #    * * * * * sh /home/shells/iptables_auto_accept_ssh_source_ip.sh
    
    
    # 对于当前成功登录ssh的来源IP,放行所有端口
    w 
      | grep pts 
      | awk '{print $3}' 
      | while read sIP
        do
          /usr/sbin/iptables-save 
          |  grep '-A INPUT -s '$sIP'/32 -j ACCEPT' &>/dev/null 
          || /usr/sbin/iptables -I INPUT -s $sIP -j ACCEPT
    done
    
    # 当某IP退出ssh登录后,删除之前的放行策略
    /usr/sbin/iptables-save 
      | grep '-A INPUT -s .*/32 -j ACCEPT' 
      | awk -F ' |/' '{print $4}' 
      | while read sIP
        do
          w  
          |  grep $sIP &>/dev/null 
          || /usr/sbin/iptables -D INPUT -s $sIP -j ACCEPT
    done
    
  • 相关阅读:
    su的使用与退出
    338. Counting Bits
    c语言学习笔记
    Linux命令
    vimrc
    CSS选择器
    链表//设计链表
    数组和字符串//反转字符串中的单词 III
    CSS样式基本知识
    开始学习CSS,为网页添加样式
  • 原文地址:https://www.cnblogs.com/www1707/p/14343579.html
Copyright © 2011-2022 走看看