任何地方都可以在日志中查找连接到的 sshd IP 地址

任何地方都可以在日志中查找连接到的 sshd IP 地址

在多宿主系统上,是否有日志指示客户端连接到本地系统的 ssh 服务器时使用的 IP 地址?这是一个“事后”问题,因此配置不同的 IP 地址以使用 ssh 服务器上的不同端口没有任何帮助。

例如,假设一个多宿主系统的 IP 地址为 192.168.0.4 和 172.16.31.4,我要查找的是 VPN IP 地址 10.100.100.17 上的 Road-warrior 客户端连接的 IP 地址(这两个地址)当两个 IP 地址对它们同等可用时。

答案1

检查下的审核日志/var/日志/审计或者/var/log/auth.log,它们将包含条目:

主机名=主机名|ip_addr

地址=ip_地址

答案2

在“man ssh”中找到了答案,sshd为客户端设置了几个变量,其中之一就是SSH_CONNECTION。为了捕获此服务器端,您可以使用

ForceCommand /path/to/a/script

在 sshd 配置中。脚本内容的示例可以是:

#!/bin/bash
/bin/echo "$SSH_CONNECTION" >> /path/to/documentation/file
case $SSH_ORIGINAL_COMMAND in
     "")
        /bin/bash
        ;;
     *)
        $SSH_ORIGINAL_COMMAND
        ;;
esac

注意:上面的“文件”需要是组可写的,并且所有 ssh 用户都需要在该组中,“ssh”命令本身会导致空的 $SSH_ORIGINAL_COMMAND,在这种情况下启动 shell。

相关内容