bash-scripts 用脚本添加恶意访问IP到防火规则里

#!/bin/bash
#auto drop ssh failed IP address 
#by colink on 2015-05-07

IPTAB_DIR=‘/etc/sysconfig/iptables‘
LOG_DIR=‘/var/log/secure‘
IPADDRS=`tail -n 200 ${LOG_DIR} |grep "Failed password" |grep -Eo ‘([0-9]{1,3}\.){3}[0-9]{1,3}‘ |sort -nr |uniq -c |awk ‘$1>=5 {print $2}‘`
echo -e "\033[32m====================================\033[0m"
echo -e "\033[32mWill update the Iptables\033[0m"
echo -e "\033[32m------------------------------------\033[0m"
#判断iptables文件里面是否已经添加了该IP的规则
function add_iptables(){
        for i in ${IPADDRS}
        do
                IGREP=`grep "${i}" /etc/sysconfig/iptables`
                if [ -z "${IGREP}" ];then
                        sed -i "/lo/a-A INPUT -s ${i} -m state --state NEW -m tcp -p tcp --dport 22 -j DROP" ${IPTAB_DIR}
                        if [ $? -eq 0 ];then
                                echo -e "\033[32m已成功将IP:${i}添加到防火墙...\033[0m"
                        else
                                echo -e "\033[31m添加IP:${i}的防火墙规则失败!\033[0m"
                        fi
                else
                        echo -e "\033[32m防火墙规则里已存在IP:${i}\033[0m"
#                       exit 0
                fi
        done
}
#当有恶意IP的时候,添加到防火墙
if [ ! -z "${IPADDRS}" ];then
        add_iptables
else
    echo -e "\033[31m没有恶意登陆的IP...\033[0m"
    exit 0
fi
#重启iptables服务
/etc/init.d/iptables restart
echo -e "\033[32m====================================\033[0m"
时间: 2024-10-06 01:04:09

bash-scripts 用脚本添加恶意访问IP到防火规则里的相关文章

shell脚本自动加黑恶意攻击IP

shell脚本自动加黑恶意攻击IP 系统环境:Centos 6.5 X64 如果我们对所有用户开放了SSH 22端口,那么我们就可以在/var/log/secure文件里查看,这里面全是恶意攻击的IP ,那么我们又该如何拒绝这些IP在下次攻击时直接把他拉黑,封掉呢? 或者这个IP再试图登陆4次或7次我就把他拒绝了,把他这个IP永久的封掉呢?这个时候我们就可以用这下面这个脚本来实现. [[email protected] ssh]# vi /etc/ssh/blocksship #!/bin/ba

apache 2.4 配置httpd:添加域名禁止IP访问网站

apache 2.4 配置httpd:添加域名禁止IP访问网站 一般来说,网站可以用域名和IP来访问.你的网站可以通过IP直接访问,本来这没什么问题,但是会有些隐患:由于搜索引擎也会收录你的IP地址的页面,所以同一个页面搜索引擎会重复收录,造成页面的权重不如单个收录高.域名恶意指向的可能:还记得google.com.sb 事件吗?google.com.sb 这个域名被恶意指向了百度,后来证实了 google.com.sb 这个域名为第三者恶意指向的,并不是Google所为.当然这只是个玩笑,但是

Linux之linux bash scripts

进程是程序运行时的内存空间和设置,存在于用户空间:用户空间是存放运行的程序和它们的数据的一部分内存空间.shell是用户和Linux内核之间的接口程序,围绕内核的外层.当从shell或其他程序向Linux传递命令时,内核会做出相应的反应.shell也是一个解释型的程序设计语言,支持绝大多数在高级语言中能见到的程序元素,如数据变量.参数传递.判断.流程控制.数据输入和输出,子程序及以中断处理等. shell程序的编译过程分为预处理.编译.汇编.链接等几个阶段 大致的执行过程,图示:        

bash小小小脚本

1.编写脚本/root/bin/systeminfo.sh,显示当前主机系统信息,包括主机名,IPv4地址,操作系统版本,内核版本,CPU型号,内存大小,硬盘大小. [[email protected] scripts]# cat systeminfo.sh #!/bin/bash HostName=`uname -n` Ipv4=`ifconfig |sed -nr '2s#.*addr:(.*)  Bca.*$#\1#gp'` Cpu=`lscpu|sed -n '13p'|tr -s ' 

linux iptables添加mysql访问

用一个shell脚本添加一个IP的mysql 3306端口到防火墙白名单 #!/bin/bash chkconfig --level 235 iptables on iptables -F iptables -A INPUT -s 127.0.0.1 -p tcp --dport 3306 -j ACCEPT iptables -A INPUT -s 192.168.0.11 -p tcp --dport 3306 -j ACCEPT linux iptables添加mysql访问

短信发送接口被恶意访问的网络攻击事件(二)肉搏战-阻止恶意请求

图形验证码+ip(用户id)+https http://www.cnblogs.com/han-1034683568/p/7040417.html 前言 承接前文<短信发送接口被恶意访问的网络攻击事件(一)紧张的遭遇战险胜>,在解决了短信发送的问题后,长长地舒了口气,也就各忙各的事情去了,本以为应该是个完美的收场,哪知道只是泥泞道路的前一段,收场是收不了了,还是要去应付接下来的烂摊子,因为攻击者并没有停止攻击,虽然恶意请求已经可以被识别并且不会被业务服务器处理,也不会去触发短信发送接口,但是请

如何在SSIS的脚本组件中访问变量

原文:如何在SSIS的脚本组件中访问变量 这是一个小问题,我们在SSIS的设计中很多地方都会用到变量,我习惯性地将"变量"和"表达式"称为SSIS的灵魂,虽然不见得绝对准确,但它们确实是保证一个SSIS包灵活性的根本. 同时,我们可能也会在数据流任务中添加"脚本组件",用我们熟知的C#或者VB.NET编写一些数据转换处理的逻辑.这里可能就有一个需求,我们希望在脚本组件中访问变量(读或者写),但默认情况下,这个需求并不是那么容易实现.我们来看下面的

API接口访问频次限制 / 网站恶意爬虫限制 / 网站恶意访问限制 方案

API接口访问频次限制 / 网站恶意爬虫限制 / 网站恶意访问限制 方案 采用多级拦截,后置拦截的方式体系化解决 1 分层拦截 1.1 第一层 商业web应用防火墙(WAF) 直接用商业服务 传统的F5硬件,不过现在用的很少了 云时代就用云时代的产品,典型代表 阿里云 web应用防火墙 1.2 第二层 API 网关(API Gateway)层 API 网关(API Gateway) kong为代表的开源 API 网关 实现 openresty + lua 自实现 windows平台 安全狗.云锁

Discuz教程:X3.1-x3.2后台admin.php防止直接恶意访问

功能说明:admin.php是discuz默认的后台地址,正常情况下可以直接访问,为了防止某些恶意访问的情况,可以修改以下内容进行安全性能提升.适用版本:Discuz!x1-x3.2具体实施方案: admin.php中找到: $discuz->init(); 换行后,添加如下代码,就可以了 if(!$_G['uid'] || !getstatus($_G['member']['allowadmincp'], 1)) { header('Location: /'); } 如果用户非管理员全部返回网