是否有任何日志文件可以保存谁以及何时使用 ssh、sshfs 或其他方法登录到我的计算机的信息?是否也可以找到一些关于他在做什么的信息(例如传输到其他机器的文件......)?
我正在使用 Ubuntu 14.04。
是的,(远程)登录被记录,即在/var/log/auth.log.
您可以通过以下方式轻松搜索文件以获取密码 SSH 登录
grep sshd.\*password.\* /var/log/auth.log
Run Code Online (Sandbox Code Playgroud)
或通过以下方式进行公钥身份验证:
grep sshd.\*publickey.\* /var/log/auth.log
Run Code Online (Sandbox Code Playgroud)
例子:
1 月 19 日 22:22:29 awesome-no-standard-model-server sshd[12883]:从 1d01:2031:3284:be99:c34d:d7ae:fa1:d4ba 端口 33324 ssh2: RSA SHAJnaGO7B3RbJbJbJF2AVCYbJFZAVC56EhZaVcG56EhCybc56Ehc 开始接受 nostandardmodel 的公钥
用户是否使用 SSH 来获取 shell 和运行命令、访问文件系统上的文件、作为连接到其他机器的隧道、作为访问 VNC 的隧道、推送到 git repo 或执行其他任何操作,无所谓。它们都以示例显示的方式显示。如果用户使用 SFTP 并在同一分钟内推送到一个 repo 10 次并在终端上打开 20 个会话,您会在日志中看到 31 个这样的条目,其中提到了该分钟的用户、时间、用户的 IP 地址等。
是否有用户进行的其他活动的记录取决于具体的活动。它可能默认启用或需要时需要启用。例如,通过 SFTP 记录文件传输活动:https : //serverfault.com/questions/73319/sftp-logging-is-there-a-way