OpenSSH安全整改防暴力破解解决方案.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
OpenSSH安全整改防暴力破解解决方案

OpenSSH安全整改防暴力破解解决方案编 者: 赵美红 审 核: 部 门: 系统平台开发部 文件版本说明版本发布日期修订章节作者V1.0.02015-12-10赵美红手册目的主要介绍在OpenSSH默认的安全机制上,如何进一步防止远端暴力破解密码的实施。作为内部讨论,技术总结。声明内部资料,不得外泄。名词定义和缩略语说明序号缩写说明1OpenSSHOpen Secure SHell2参考资料1.上海迅时通信系统平台功能设计模板。 【目 录】1背景介绍11.1概述11.2openssh默认实现11.3设备配置环境12openssh实施方案22.1实施方案介绍22.2流程图3背景介绍概述由于新版本的组件openssh移植到我们的设备消耗比较大内存,所以选择目前使用的版本openssh-6.2p2。裁剪后600多K。openssh-6.2p2默认登录,连接成功后,输错3次密码,断开连接,重新可以再继续登录,无限制。由于受到远程黑客的攻击,无限次尝试密码,暴力破解,增加了我们的设备不安全性,现在根据公司安全整改方面的要求,对客户端的连接进行限制,读取配置文件iprule.ini里面的参数LOGIN_ERR_COUNT,该参数说明在限制时间内允许登录的最大次数,设为1~5,和LOGIN_HOLD_TIME,该参数说明限制的时间有多长,比如10分钟(该项目中我设定单位为秒数,比如600秒代表10分钟),比如,根据这2个参数,5次和10分钟,在10分钟内允许客户最大连接5次,如果超过5次,就不允许再登录,超过10分钟才可以登录。OPENSSH默认实现openssh组件包含350多个文件,分为客户端和服务端,服务端进入主程序,开始监听远端的客户端的TCP连接,如果发现有新的连接建立,主程序fork一个子进程来处理这个新连接的认证,包括密码认证。如果3次密码都被认定是错误的,服务端就断开连接,该子进程退出。设备配置环境读取的配置文件iprule.ini存放在我们的设备/var/config/目录下,第一条为LOGIN_ERR_COUNT后面跟空格加上他的值,第二行是LOGIN_HOLD_TIME后面跟空格加上他的值。OPENSSH实施方案实施方案介绍在有客户端连接上来,生成一个日志文件,记录登录失败的客户端的信息,包括ip地址、登录失败次数、首次登录的时间、末次登录的时候、用户和协议,每成功建立连接,就分析日志文件,如果符合阻止条件就阻止他登录,不符合就允许登录,删掉该条记录,清零,重新记录。具体的处理过程分为2部分:第一部分:见图1,客户端建立连接成功后,打开/tmp/sshlog.txt日志文件,为了防止其他进程写该文件,给其加写锁,逐行读取记录,把所有记录写入链表中,查找新建立的ip是否在该链表中,如果在,而且他的次数大于等于LOGIN_ERR_COUNT,检查当前的时间和他初次登录的时间差是不是小于LOGIN_HOLD_TIME,如果小于这个时间,就禁止登录,如果大于这个时间,就删除该ip对于的链表节点,为了防止日志文件过大,只保留最后20条记录在日志文件中,把最新的20条的链表内容重新写入该文件中。第二部分:见图2,客户端3次密码认证失败后,即将断开连接前,打开/tmp/sshlog.txt日志文件,为了防止其他进程写该文件,给其加写锁,逐行读取该文件,查找当前连接是不是与他的ip相同,如果相同,给他的次数加1,修改他最后一次时间、用户和协议。如果当前连接不在日志表中,就新加入一行日志。初始化他的次数为1,记录他的首次登录时间,末次登录时间,用户和协议。流程图1.本任务是服务器端在监听到有客户端连接上来之后,认证之前的行为,为了保证日志文件不能太大,根据公司领导要求,日志保存的最大条数为20条。注:启动主程序前,定义好2个全局变量LOGIN_ERR_COUNT和LOGIN_HOLD_TIME,用来保存从日志文件中读取的2个参数。 【图1】 2.本任务是在3次密码验证失败之后,服务器即将断开与客户端的连接前的行为,断开后,该进程结束。 【图2】3.另外在客户端密码认证成功,也给APP的端口1305发一次消息。所有的消息格式,根据公司讨论为:SSH,IPADDR=192.168.20.150,USER=root,STATUS=3注:SSH表示协议;IPADDR说明客户端的ip;USER说明用户名;STATUS说明登录的状态:0:说明登录成功;1~5说明登录失败的次数。 System platform Dept. 上海迅时通信设备有限公司 New Rock Technologies, Inc 第5页 2015年12月10日

文档评论(0)

2232文档 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档