在我们的实验室中,我们有一个Linux服务器,可以在本地登录,也可以用特定的IP登录ssh。当我登录到这台机器时,我可以用ifconfig或ip a看到它的内部IP,也可以通过类似于curl icanhazip.com的东西看到它的外部IP。但是,最后一个命令报告的外部IP与我在使用ssh连接到机器时输入的IP不同,我相信报告的IP是我们路由器的IP。
当我在本地登录到机器时,我是否可能知道哪些IP地址可以用于ssh到系统中(不是登录用户的IP地址,而是我可以在ssh ###.###.###.###命令中使用的IP地址)。我想找出这一点,而不登录到路由器管理面板,看看哪些IP地址和端口被转发。ssh地址是存储在一个文件中(我在/etc/sshd_config中找不到任何东西),还是有一个命令可以运行来显示它,就像内部IP一样?
发布于 2017-01-25 01:04:02
许多实用程序将显示用户的IP地址,包括who、w和last -ai。
当然,如果发生了任何形式的重定向,您可能会看到重定向的机器。
发布于 2017-01-25 09:02:38
如果我正确地理解了您,您想知道您是否可以在路由器后面的LAN节点上,并从该机器上查看您的路由器用来转发SSH通信量的端口?如果这就是问题所在,那么在你的场景中,就没有办法做到这一点了。路由器配置对您来说是不可见的,但是有几种方法可以用来探测以找到它。
如果它是一个专用网络,并且您有授权,您可以运行一个标准的网络映射(nmap)和/或在终端中保持netstat处于打开状态。更好的是,获得一个详细的输出(插入像ufw或firewalld这样的防火墙解决方案,或者仅仅是iptables),并启动/停止服务,防火墙将告诉您来自双方的ssh (路由器,您退出)正在准确地单击/阻塞/使用哪些端口。使用Deb/Ubuntu/Mint最简单的方法是将gufw作为sudo打开,并在输入sudo systemctl restart ssh之后查看日志
如果问题是如何找到您的内部或外部IP,我认为这已经涵盖了。但是,如果没有端口,知道这些数字是无用的(我相信您知道SSH的缺省值是22)。
https://unix.stackexchange.com/questions/339919
复制相似问题