在运行Debian 7的VPS上,我在默认端口22上启用ssh,只启用私钥身份验证,所有其他端口都使用iptables过滤。我经常收到中国用假用户名登录的尝试,如"plesk“或"r00t",出现在我的/var/log/auth.log中。
唯一的问题是,对于不显示私钥的身份验证尝试,并试图以有效的用户名登录,日志中出现的唯一行将读取
sshd四三六四:连接关闭123.45.67.89 普罗
当sshd日志记录级别设置为详细时,会打印一条额外的行,说明用户已连接并从端口连接。
是否有任何方法使sshd日志因用户缺少私钥而断开连接?
发布于 2014-07-07 23:04:44
你的问题的答案是否定的。至少,必须采取比一些明智的替代方案更困难的英勇措施(例如,运行调试级别并使用脚本处理)。如果没有密钥或无效密钥,则报告相同的[preauth]错误。
另一方面,如果它们实际连接,您的日志将显式地表示
Jul 7 15:59:38 ws6 sshd[9578]: Accepted password for robohacker...或
Jul 7 15:59:38 ws6 sshd[9578]: Accepted publickey for robohacker...您可以做的是进一步强化您的配置。您已经需要一个密钥,您还可以使用AllowUsers和AllowGroups命令来防止任何未经特别授权的人进行连接。
就我个人而言,我总是安装DenyHosts,尽管它似乎没有最近的更新。我听说Fail2Ban也很好
发布于 2014-07-08 05:02:54
您可以使用“欺骗”--在您的/etc/panam.d/ssh(D)中,在auth部分中,您可以在pam_unix或@include公共-auth语句之前添加一个日志语句(Pam_unix)。如果命中此语句,则尝试进行密码身份验证。
发布于 2014-02-20 16:13:12
sshd可以做的任何日志记录都将记录在man sshd_config中。尝试搜索"log",但是我没有看到任何具体的东西--主要是LogLevel和SyslogFacility,尽管MaxAuthTries可能会有所帮助。
https://serverfault.com/questions/577047
复制相似问题