vps安全相关
查看试图暴力破解你的vps的root密码的ip地址
sudo grep "Failed password for root" /var/log/secure | awk '{print $11}' | sort | uniq -c | sort -nr修改ssh端口
修改/etc/ssh/sshd_config文件,将其中的Port 22改为随意的端口比如Port 47832,port的取值范围是 0 - 65535(即2的16次方),0到1024是众所周知的端口(知名端口,常用于系统服务等,例如http服务的端口号是80)。
修改后重启ssh服务,CentOs重启ssh服务的命令是:service sshd restart。
不要使用简单密码
可以考虑使用密码管理器生成的丧心病狂般的复杂密码。
禁止使用密码登陆,使用RSA私钥登陆
这条是最重要最有效的。 跟之前写的debian ssh 连接android 通过termux里登陆部分是一样的。rsa的原理也不再赘述,wiki上的条目描述的很清楚。 先通过ssh-keygen -t rsa生成你的客户端的密钥,包括一个私钥和公钥,用scp id_rsa.pub [email protected]:~/把公钥拷贝到服务器上,注意,生成私钥的时候,文件名是可以自定义的,且可以再加一层密码,所以建议文件名取自己能识别出哪台机器的名字。然后在服务器上,你的用户目录下,新建.ssh文件夹,并将该文件夹的权限设为600,chmod 600 .ssh,并新建一个authorized_keys,这是默认允许的key存储的文件。如果已经存在,则只需要将上传的id_rsa.pub文件内容追加进去即可:cat id_rsa.pub >> authorized_keys,如果不存在则新建并改权限为400即可。 然后编辑ssh的配置文件:
# vi /etc/ssh/sshd_config
RSAAuthentication yes #RSA认证
PubkeyAuthentication yes #开启公钥验证
AuthorizedKeysFile .ssh/authorized_keys #验证文件路径
PasswordAuthentication no #禁止密码认证
PermitEmptyPasswords no #禁止空密码
# 最后保存,重启
/etc/init.d/sshd restart禁止root用户登录
你可以新建一个用户来管理,而非直接使用root用户,防止密码被破解。 还是修改/etc/ssh/sshd_config
使用denyhosts
Denyhosts是一个Linux系统下阻止暴力破解SSH密码的软件,它的原理与DDoS Deflate类似,可以自动拒绝过多次数尝试SSH登录的IP地址,防止互联网上某些机器常年破解密码的行为,也可以防止黑客对SSH密码进行穷举。
在CentOs7安装denyhosts
安装依赖包ipaddr(如果没有找到包,请使用yum update升级yum)
去仓库下载包,解压安装
修改安装配置
daemon-control
1、DENYHOSTS_BIN默认路径为/usr/sbin/denyhosts,启动时会报错 No such file or directory。追踪了一下/usr/bin/denyhosts,并没有找到这个文件。直接改成/usr/bin/denyhosts.py即可。 2、DENYHOSTS_LOCK是运行后生成的文件,不用管。 3、DENYHOSTS_CFG配置文件,之前我们已经将配置文件copy到/etc文件夹下,所以这个默认路径是对的。
启动时报错: No such file or directory: ‘/var/log/auth.log’ 追踪到目录下时,并没有发现auth.log文件,直接创建一个auth.log文件即可。
启动Denyhosts
设置开机自启
修改配置项
修改/etc/denyhosts.conf文件
解除已禁止的主机ip
停止DenyHosts服务:
在 /etc/hosts.deny 中删除你想取消的主机IP
编辑 DenyHosts 工作目录的所有文件,通过
然后一个个删除文件中你想取消的主机IP所在的行:
*/usr/share/denyhosts/data/hosts
*/usr/share/denyhosts/data/hosts-restricted
*/usr/share/denyhosts/data/hosts-root
*/usr/share/denyhosts/data/hosts-valid
*/usr/share/denyhosts/data/users-hosts
添加你想允许的主机IP地址到 /var/lib/denyhosts/allowed-hosts
启动DenyHosts服务:
service denyhosts start
Last updated
Was this helpful?