我有一个 /etc/ssh/sshrc 文件,每次 SSH 登录后都会给我发送电子邮件。它使用 $SSH_CLIENT 获取 IP 地址,但尝试了所有方法后,我得到的 IP 是 ::1。我如何获取 ssh 客户端的真实 IP,为什么它会给我本地主机的 IP?我刚刚意识到问题是由 sslh 引起的,它会将所有 ssh 连接从端口 443 转发到 22。有什么办法可以解决这个问题吗?
答案1
使用命令
sudo netstat -at | grep ssh
您可以查看谁已连接到SSH
服务器。这可以写入一些 .log 文件
sudo netstat -at | grep ssh >> ssh.log
或者你可以创建脚本,类似这样的
nano ssh.sh
或者取一些不同的名字
#!/bin/bash
date >> ssh.log
netstat -at | grep ssh >> ssh.log
给chmod 777
。此脚本将首先写入日期和 ssh 会话此日志 cen 发送到电子邮件....
答案2
谢谢大家的帮助。我发现问题出在 sslh 上,解决方案是使用透明转发。