在多服务器架构中,是否可以找出用户使用哪台机器登录到当前机器ssh
?
例如,user1
登录host1
.从那里,用户host2
使用sruser
登录ssh
。
在上面的示例中,是否可以跟踪back 到session insruser
的会话?host2
user1
host1
是否可以获得user1
会话的主机名或终端?
答案1
who
和命令last
对于显示用户连接的主机可能很有用。
答案2
如果您是普通用户host2
,您可以查看当前谁通过该命令从何处登录who
,以及过去谁通过该last
命令从何处登录。两者都显示 ssh 登录的远程主机名或 IP 地址;这通常是host1
,但也可以是中继 ssh 连接的网关。
原则上不可能知道user1
是谁。毕竟,host1
甚至可能没有运行多用户系统,或者可能是匿名中继。这并不意味着 的user2
已知用户拥有绝对的隐私host1
;例如,如果您是 的管理员host2
,并且用户使用公钥身份验证,并且您已将 ssh 服务器配置为转储有关所使用的公钥的信息,那么您可以找到用户的公钥,并可能将其关联起来从其他地方获得的信息。
过去的一些问题超级用户您可能感兴趣:
答案3
不确定是否适用于 Solaris,但在 Linux 上lsof -u user | grep \:ssh
应该可以正常工作