防止破解SSH密码,保护陪玩平台源码后端安全

发布来源:云豹科技
发布人:云豹科技
2022-01-03 10:01:25

对于陪玩平台源码来说,服务器是系统部署的重要载体,系统运营产生的数据、系统代码等最终都是存放在服务器上,所以服务器安全相当重要。当陪玩平台源码运营出现问题或上线新功能时,会通过远程连接服务器进行操作,为了保证登录安全,就需要输入SSH密码。

SSH并不是绝对安全的,如果是恶意登录的IP,在反复操作的过程中,有可能会破解SSH密码,保证SSH密码安全,就成为陪玩平台源码提高服务器安全的必要一部分。

陪玩平台源码可以用DenyHosts阻止试图猜测SSH登录口令的操作,DenyHosts会分析/var/log/secure等日志文件,当发现同一IP在进行多次SSH密码尝试时,就会记录IP到/etc/hosts.deny文件,从而达到自动屏蔽该IP的目的。接下来,就是具体的操作步骤。

一、yum 安装 denyhosts

yum install repe-release denyhosts -y

二、查看 denyhosts 安装路径:

rpm -ql denyhosts
/etc/cron.d/denyhosts
/etc/denyhosts.conf
/etc/logrotate.d/denyhosts
/etc/rc.d/init.d/denyhosts
/etc/sysconfig/denyhosts
/usr/bin/denyhosts-control
/usr/bin/denyhosts.py

三、denyhost主配置文件/etc/denyhosts.conf 中的配置参数内容:

       ############ THESE SETTINGS ARE REQUIRED ############
# 系统安全日志文件,主要获取ssh信息
SECURE_LOG = /var/log/secure
# 拒绝写入IP文件 hosts.deny
HOSTS_DENY = /etc/hosts.deny
# #过多久后清除已经禁止的,其中w代表周,d代表天,h代表小时,s代表秒,m代表分钟
PURGE_DENY = 4w
# denyhosts所要阻止的服务名称
BLOCK_SERVICE  = sshd
# 允许无效用户登录失败的次数
DENY_THRESHOLD_INVALID = 3
# 允许普通用户登录失败的次数
DENY_THRESHOLD_VALID = 10
# 允许ROOT用户登录失败的次数
DENY_THRESHOLD_ROOT = 6
# 设定 deny host 写入到该资料夹
DENY_THRESHOLD_RESTRICTED = 1
# 将deny的host或ip纪录到Work_dir中 
WORK_DIR = /var/lib/denyhosts
SUSPICIOUS_LOGIN_REPORT_ALLOWED_HOSTS=YES
# 是否做域名反解
HOSTNAME_LOOKUP=YES
# 将DenyHOts启动的pid纪录到LOCK_FILE中,已确保服务正确启动,防止同时启动多个服务
LOCK_FILE = /var/lock/subsys/denyhosts
 
       ############ THESE SETTINGS ARE OPTIONAL ############
# 管理员Mail地址
ADMIN_EMAIL = root
SMTP_HOST = localhost
SMTP_PORT = 25
SMTP_FROM = DenyHosts <nobody@localhost>
SMTP_SUBJECT = DenyHosts Report from $[HOSTNAME]
# 有效用户登录失败计数归零的时间
AGE_RESET_VALID=5d
# ROOT用户登录失败计数归零的时间
AGE_RESET_ROOT=25d
# 用户的失败登录计数重置为0的时间(/usr/share/denyhosts/restricted-usernames)
AGE_RESET_RESTRICTED=25d
# 无效用户登录失败计数归零的时间
AGE_RESET_INVALID=10d
   ######### THESE SETTINGS ARE SPECIFIC TO DAEMON MODE  ##########
# denyhosts log文件
DAEMON_LOG = /var/log/denyhosts
DAEMON_SLEEP = 30s
# 该项与PURGE_DENY 设置成一样,也是清除hosts.deniedssh 用户的时间
DAEMON_PURGE = 1h

四、启动 denyhosts 服务

[root@test scripts]# systemctl start denyhosts

五、测试 denyhosts是否生效

陪玩平台源码允许 invalid 用户只能失败5次、ROOT 用户失败1次、valid用户失败3次

   DENY_THRESHOLD_INVALID = 5
   DENY_THRESHOLD_VALID = 3
   DENY_THRESHOLD_ROOT = 1

故意输错ssh密码3次,查看 /var/log/secure的日志信息

[root@test scripts]# tail -f /var/log/secure
May  8 15:01:21 test sshd[1764]: Failed password for root from 10.0.0.6 port 47358 ssh2
May  8 15:01:23 test sshd[1764]: Failed password for root from 10.0.0.6 port 47358 ssh2
May  8 15:01:24 test sshd[1764]: Failed password for root from 10.0.0.6 port 47358 ssh2
May  8 15:01:24 test sshd[1765]: Connection closed by 10.0.0.6
May  8 15:01:27 test sshd[1766]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=10.0.0.6  user=root
May  8 15:01:28 test sshd[1766]: Failed password for root from 10.0.0.6 port 47360 ssh2
May  8 15:01:33 test sshd[1766]: Failed password for root from 10.0.0.6 port 47360 ssh2
May  8 15:01:37 test sshd[1766]: Failed password for root from 10.0.0.6 port 47360 ssh2
May  8 15:01:37 test sshd[1767]: Connection closed by 10.0.0.6
May  8 15:01:37 test sshd[1766]: PAM 2 more authentication failures; logname= uid=0 euid=0 tty=ssh ruser= rhost=10.0.0.6  user=root

六、清除及添加可登录IP 

如果陪玩平台源码想删除一个已经禁止的主机IP,可以在/etc/hosts.deny文件中删除被禁的ip,但做好的做法是以下操作:

1>停止DenyHosts服务:systemctl stop denyhosts

2>在 /etc/hosts.deny 中删除陪玩平台源码想取消的主机IP

3>编辑 DenyHosts 工作目录的所有文件 /var/lib/denyhosts,并且删除已被添加的主机信息。

/var/lib/denyhosts/hosts
/var/lib/denyhosts/hosts-restricted
/var/lib/denyhosts/hosts-root
/var/lib/denyhosts/hosts-valid
/var/lib/denyhosts/users-hosts
/var/lib/denyhosts/users-invalid
/var/lib/denyhosts/users-valid

七、添加可以登陆的主机的IP

1>添加陪玩平台源码允许的主机IP地址到

/var/lib/denyhosts/allowed-hosts

2>重启DenyHosts服务: systemctl restart denyhosts

经过以上操作,在恶意登录服务器时,就可以有效制止猜测SSH密码的行为,保证陪玩平台源码的服务器安全。

声明:以上内容为云豹科技原创,未经作者本人同意,禁止转载,否则将追究相关法律责任www.yunbaokj.com

声明:
以上内容为云豹科技作者本人原创,未经作者本人同意,禁止转载,否则将追究相关法律责任