SSH - 识别哪些用户仍然使用密码登录

Pet*_*erB 32 ssh

我有一个允许对 SSH 进行密码验证的 Ubuntu Linux 服务器,我想将其切换为仅使用 SSH 密钥并禁用密码登录。

在禁用密码登录之前,如何查看哪些用户仍在使用密码,哪些已切换到密钥验证?

Sve*_*ven 48

你不能 100% 可靠地做到这一点,但有两个强有力的迹象:

  • 首先,.ssh/authorized_keys文件的存在暗示用户至少准备使用基于密钥的登录
  • 其次,在身份验证日志文件中(/var/log/secure在 CentOS 上,/var/log/auth.log在 Debian/Ubuntu 上),将记录 auth 方法:

    Sep 28 13:44:28 hostname sshd[12084]: Accepted publickey for sven
    
    Run Code Online (Sandbox Code Playgroud)

    对比

    Sep 28 13:47:36 hostname sshd[12698]: Accepted password for sven
    
    Run Code Online (Sandbox Code Playgroud)

    扫描日志中提到的密码条目以了解谁仍在使用密码。这当然不适用于很少登录的用户,除非您的日志保留时间很长。

  • @djsmiley2k:是的,没错。或者您喜欢该任务的任何其他方法。 (8认同)

小智 19

最快的方法是禁用它,看看谁敲你办公室的门;p

  • 这不是最快的方式,因为不是每个用户都可能每天都登录,而日志可以清楚地显示有人登录的时间,因此它们会立即给出结果 (6认同)
  • 这是最慢的方式。人们只有在他们的应用程序关闭时才登录到服务器。这可能需要数年时间才能实现。 (3认同)