博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
解除被DenyHosts锁定的IP地址
阅读量:6084 次
发布时间:2019-06-20

本文共 2179 字,大约阅读时间需要 7 分钟。

自己的本本无法ssh上服务器,提示 ssh_exchange_identification: read: Connection reset by peer
仔细回想,自己手贱把~下面的一个ssh文件删掉了,呵呵......瓜了,无法备份了
 
原因:
本来以前设置了无需密码直接ssh,现在没办法,系统的denyhosts就认为这是一个非法ssh用户,就直接列入/etc/hosts.deny,一看,果然自己的ip在里头,唉...
 
解决:(参考大神的方法)
 
忽然间发现自己VPS不SSH了, WinSCP显示Server unexpectedly closed network connection错误. 排除VPS的内存不足的问题, 回想是不是最近用SSH时输错密码导致DenyHosts将IP限制访问了. 本文适用于VPS安装了DenyHosts的站长.

如何查看问题的根源是不是DenyHosts对自己IP的锁定了? 首先访问主机商提供的VPS控制台, 用主机商提供的帐号和密码进入主机(个别VPS有提供单独的SSH帐号, 不是root帐号, 但又root权限, 通常为console-****), 用自己熟悉的Linux口令查看/etc/hosts.deny文件是不是包含了自己的IP, 如果是, 恭喜自己的主机DenyHosts工作正常吧.

 

 

DenyHosts会读取多个记录确保没有漏网之鱼. 网络上流传清空/var/log/secure和/etc/hosts.deny并不能完美解锁自己的IP, 很快就会被DenyHosts重新锁定. 这也是DenyHosts强大的地方.

下面是解锁的步骤,

首先停止DenyHosts, CentOS系统的可以用命令:

# service denyhosts stop

其他系统, 例如Ubuntu/Debian/Fedora/CentOS/Redhat

# /etc/init.d/denyhosts stop

然后请用自己熟悉的方法(通常是vi)在下列文件中找到自己的IP记录并删除, 不推荐这种方法因为用vi在下面的文件中找到自己的IP是非常费时费力的.

/var/log/secure              ×

/etc/hosts.deny             ×  通常只修改这两个文件就OK了
/usr/share/denyhosts/data/hosts
/usr/share/denyhosts/data/hosts-restricted
/usr/share/denyhosts/data/hosts-root
/usr/share/denyhosts/data/hosts-valid

 

可以用sudo sed -i '/ip/d' /var/log/secure 来直接修改,并使用sudo grep "ip" /var/log/secure来查看是否修改成功(已编写脚本)

 

如果不在乎上面的记录文件, 推荐清空上面几个Linux系统日志然后重新开启DennyHosts. 清空这些Linux系统日志不会影响任何功能. 如果你觉得这几个文件记录对你很重要(真的?), 请不要随意清空, 老老实实使用上面的方法.

清空上面几个Linux系统日志很简单, 在SSH中敲入下面的命令:

cat /dev/null > /var/log/secure cat /dev/null > /etc/hosts.deny cat /dev/null > /usr/share/denyhosts/data/hosts cat /dev/null > /usr/share/denyhosts/data/hosts-restricted cat /dev/null > /usr/share/denyhosts/data/hosts-root cat /dev/null > /usr/share/denyhosts/data/hosts-valid cat /dev/null > /usr/share/denyhosts/data/offset cat /dev/null > /usr/share/denyhosts/data/suspicious-logins cat /dev/null > /usr/share/denyhosts/data/users-hosts cat /dev/null > /usr/share/denyhosts/data/users-invalid cat /dev/null > /usr/share/denyhosts/data/users-valid 把日志文件全部清空!要注意的是,清空后一定要 # service rsyslog restart 重启日志记数器!因为如果你不重启服务,你会发现secure日志文件会停止记录一切活动了!那么denyhosts也就无效了。 然后重新开启Deny Hosts # service denyhosts start 其他系统, 例如Ubuntu/Debian/Fedora/CentOS/Redhat # /etc/init.d/denyhosts start 最好 #service sshd restart #service iptables restart

转载地址:http://rvkwa.baihongyu.com/

你可能感兴趣的文章
js遍历
查看>>
简明 Python 教程
查看>>
在mac下启动postgresql
查看>>
家人北京游
查看>>
EJBCA 6 配置使用
查看>>
Nagios自定义报警时间
查看>>
有过故事的那些人
查看>>
Java中的锁详解
查看>>
Java实现单链表_使用链式存储结构
查看>>
同步之条件变量sync.Cond
查看>>
安卓四大组件之二#1-Service的创建,生命周期以及动态调用Service里的方法
查看>>
面筋:3——MySQL binlog 的日志格式
查看>>
spring3-Log4j与J2ee结合
查看>>
php中DOMDocument简单用法(XML创建、添加、删除、修改)
查看>>
【Visual C++】游戏开发笔记十六 讲解一个完整的回合制游戏demo
查看>>
我的友情链接
查看>>
汇编语言总结
查看>>
harbor的加密机制与后台修改登录密码
查看>>
Android IT资讯网络阅读器应用源码
查看>>
Java基础学习总结(23)——GUI编程
查看>>