定位 发表于 2017-1-28 15:10:05

定时断开SSH连接,自动更改SSH密码

看到网上有很多免费提供SSH账号的。他们可以实现自动定时更改SSH密码,比如10分钟改一次。并且隔一段时间,还可以自动定时断开SSH。
于是一时兴起,研究了一下他们是怎么实现自动定时更改SSH密码,自动定时断开SSH。并把研究的结果,分享给大家。
大家先用Root账号登录进VPS, 建立一个autofreessh的文件夹mkdir /usr/share/autofreessh
cd /usr/share/autofreessh

然后大家建立两个文件/usr/share/autofreessh/renew_freessh.sh和/usr/share/autofreessh/close_freessh.sh
renew_freessh.sh文件内容#!/bin/sh
userdel freessh
/usr/bin/php -r '$pwd=substr(md5("saltsecne99cc".time()),5,5);file_put_contents("/usr/share/autofreessh/pwd.txt",$pwd);file_put_contents("/usr/share/autofreessh/crypt.txt",crypt($pwd));'
PASSWORD=$(cat /usr/share/autofreessh/pwd.txt)
CPT=$(cat /usr/share/autofreessh/crypt.txt)
useradd  -N -s /usr/sbin/nologin -p $CPT freessh
echo "User: freessh"
echo "Password: $PASSWORD"
echo ""
unlink /usr/share/autofreessh/crypt.txt
close_freessh.sh文件内容#!/bin/sh
killall -u freessh  //接下来设置他们的执行权限

chmod a+x /usr/share/autofreessh/*.sh  //加入crontab,执行crontab -e输入以下内容*/10 * * * * /usr/share/autofreessh/renew_freessh.sh
*/30 * * * * /usr/share/autofreessh/close_freessh.sh  //每十分钟,自动更改一次freessh账号密码
每30分钟,自动断开freessh的链接。
保存crontab,重启一下cron服务/etc/init.d/cron restart
现在己经实现自动定时更改SSH密码和自动定时断开SSH了。
页: [1]
查看完整版本: 定时断开SSH连接,自动更改SSH密码