一个简单的ssh安全shell脚本

这篇具有很好参考价值的文章主要介绍了一个简单的ssh安全shell脚本。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

  • 自动化禁止恶意IP访问

    • 应用场景:防止恶意IP尝试ssh登录。

    • 脚本说明:将密码输入错误超过4次的IP地址通过iptables防火墙阻止访问。

      • 首先,需要知道ssh远程访问记录在哪个文件中/var/log/secure

      • 其次,模拟远程访问输错密码,查看日志文件,Dec 26 11:34:53 agent1 sshd[3060]: Failed password for root from 192.168.211.1 port 2075 ssh2

      • 再次,通过日志可以看到关键信息“Failed password”表示密码错误,有可能是手误输错,所以就需要设定几次错误为恶意试探密码,建议设置为4,另一个关键信息是需要将密码错误的IP地址提取出来,对提取出来的IP地址进行统计次数

      • 最后,需要明确怎么在脚本中通过iptables策略设置阻止恶意IP访问

    • 策略添加到哪里合适

    • 防火墙配置文件等

  • 创建secury.sh文件:

    #! /bin/bash
    ​
    uniq_hosts=`sed -n "/.* Failed password/p" /var/log/secure | awk '{print $11}' | uniq`
    over_time=5
    ​
    for host in ${uniq_hosts[*]};do
        sum=`sed -n "/.* Failed password/p" /var/log/secure | awk '{print $11}' | sed -n '/'"${host}"'/p' | wc -l`
        if [ ${sum} -gt ${over_time} ];then
            echo "${host}客户端有安全问题,进行禁止访问"
            # 先添加服务
            firewall-cmd --add-service=ssh &> /dev/null
            # 再添加富规则
            firewall-cmd --add-rich-rule 'rule family="ipv4" source address="${host}" service name="ssh" reject' &> /dev/null
            # 查看
            firewall-cmd --list-all
        fi
    done    
  • 在例行任务中,执行脚本文章来源地址https://www.toymoban.com/news/detail-481940.html

    cat << eof >> /var/spool/cron/root
    0 0,12 * * * root ~/secury.sh
    eof
    systemctl restart crond

到了这里,关于一个简单的ssh安全shell脚本的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • shell自动化脚本,启动、停止应用程序

    准确的讲/etc下的rc.local文件是rc.d文件中rc.local文件的软链接,找到rc.d下的rc.local文件,添加可执行选项。如果没有该文件可以自己创建。 要想你的脚本文件开机自启动还需要用到rc-local.service这个服务。

    2024年02月03日
    浏览(55)
  • ansible相比shell脚本自动化有什么优势

    Ansible自动化与Shell脚本自动化相比,具有以下几个显著的优势: 轻量级与无需代理 :Ansible的一个关键优势在于其轻量级和无需在被控制服务器上安装任何代理或客户端的特点。这极大地简化了部署和维护的流程,降低了复杂性和出错的可能性。而Shell脚本通常需要在每台服

    2024年04月25日
    浏览(48)
  • shell脚本——服务器巡检(自动化运维)

     目的   自动 获取集群内 多个主机 的内存、磁盘、cpu等信息 生成日志  准备    VMware虚拟主机IP在同一个网段(互相能ping通)             虚拟主机都有公钥免登录            修改主机IP  vi/etc/sysconfig/netwoek-scripts/ifcfg-ens160            设置主机名 hostnamectl set-ho

    2024年02月15日
    浏览(55)
  • Shell脚本入门实战:探索自动化任务与实用场景

    引言 Shell脚本作为一种强大的自动化工具,在现代操作系统中具有广泛的应用。无论是简单的文件操作,还是复杂的系统管理,Shell脚本都能提供高效、快速的解决方案。在本文中,我们将探索Shell脚本的基础知识,并通过实战场景示例,一起深入了解Shell脚本编程。 1. Shell脚

    2024年02月02日
    浏览(47)
  • DevOps自动化平台开发之 Shell脚本执行的封装

    基于如下技术栈开发DevOps平台 Spring Boot Shell Ansible Git Gitlab Docker K8S Vue  1、spring boot starter的封装使用 2、Shell脚本的编写 3、Ansible 脚本的编写 4、Docker 的使用与封装设计 本篇介绍如何使用Java封装Linux命令和Shell脚本的使用 将其设计成spring boot starter maven依赖pom文件 具体的封装

    2024年02月15日
    浏览(48)
  • 【Linux编程Shell自动化脚本】03 shell四剑客(find、sed、grep、awk)

    语法格式 参数说明 : path 是要查找的目录路径,可以是一个目录或文件名,也可以是多个路径,多个路径之间用空格分隔,如果未指定路径,则默认为当前目录。 expression 是可选参数,用于指定查找的条件,可以是文件名、文件类型、文件大小等等。 1. 常用expression 以下列出

    2024年02月09日
    浏览(54)
  • 简单的jmeter脚本自动化

    1、创建线程组,定义自定义变量,保存请求默认值 2、用csv编写测试用例 备注:如果单元格内本身就有引号,则格式会有点小问题,不能直接修改为csv   用txt打开后 有引号的需要在最外层多包一层引号,每个引号前面也要加一层引号 3、使用csv文件读取测试用例 4、创建h

    2024年04月27日
    浏览(30)
  • “Linux免除系统交互操作方法、expect自动化交互工具” 及 “SSH批量修改主机密码脚本”

    案例:为机器磁盘进行分区并实现挂载,免交互式操作,如何实现? 注意:有些命令的交互操作提示是不算在标准输出和错误输出中的,此时该方法不适用 注意:命令的交互操作提示是不算终端窗口的,此时该方法不适用 一. expect 简介 expect 工具是一个根据脚本与其他交互

    2024年02月08日
    浏览(60)
  • Latex图表制作:关于EPS文件转PDF文件及PDF裁剪自动化的Shell脚本制作

    很快就要步入研二了,在写完一篇论文以后,即将进入第二篇论文写作时,察觉到之前的一篇论文还有许多可以改进的地方,一个方面就是绘图,一篇论文图画的好不好、能否吸引审稿人的眼球并获得其青睐是一个值得琢磨的问题,而在这种收益和付出正相关的事情上,就更

    2024年02月09日
    浏览(54)
  • 使用Python+selenium实现第一个自动化测试脚本

    这篇文章主要介绍了使用Python+selenium实现第一个自动化测试脚本,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧 最近在学web自动化,记录一下学习过程。 此处我选用python3.6+selenium3.0,均用

    2024年02月03日
    浏览(60)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包