我安装了 Ubuntu 9.10 sshd
,我可以使用登录名和密码成功连接到它。我配置了RSA
密钥登录,现在如预期的那样出现了“服务器拒绝我们的密钥”。好的,现在我想检查sshd
日志以找出问题。我已经检查过了/etc/ssh/sshd_config
,它有
SyslogFacility AUTH
LogLevel INFO
好的。我看了看/var/log/auth.log
……它是空的 O_O。更改Loglevel
为也VERBOSE
无济于事——auth.log
仍然是空的。有什么提示可以告诉我如何检查sshd
日志吗?
答案1
如果目前没有其他人使用该系统,您可以按照我在这种情况下所做的事情进行操作:
- 停止 sshd 服务(至少我可以通过 ssh 登录时执行此操作)
- 手动启动 sshd 并添加一些 -d 选项以获取更详细的调试输出。除非你遇到了一些奇怪的事情,否则它应该使用与正常启动时相同的键和配置
答案2
根据以上评论创建答案,感谢@Prof. Moriarty 和@Eye of Hell
SSH 身份验证失败记录在此处/var/log/auth.log
下面应该只会给出与 ssh 相关的日志行:
grep 'sshd' /var/log/auth.log
为了安全起见,请获取最后几百行然后搜索(因为如果日志文件太大,对整个文件进行 grep 会消耗更多的系统资源,更不用说运行时间会更长)
查看sshd日志最后500行的条目:
tail -n 500 /var/log/auth.log | grep 'sshd'
或者在测试时跟踪日志输出:
tail -f -n 500 /var/log/auth.log | grep 'sshd'
答案3
查看日志的现代方式:
全部
sshd
关于:
journalctl -t sshd
或
journalctl -u ssh
哪里 的消息-u == unit
sshd
关于上次启动的消息:
journalctl -t sshd -b0
sshd
从上次启动开始按相反顺序显示的消息:
journalctl -t sshd -b0 -r
答案4
如果您想查看有关 sshd 的所有日志消息,请运行以下命令:
grep -rsh sshd /var/log |sort