从一台计算机通过 ssh 连接到同一子网中的另一台计算机

从一台计算机通过 ssh 连接到同一子网中的另一台计算机

我有两台计算机连接到同一个子网。

第一个(A)运行 14.04,第二个(B)运行 12.04

我可以从第一个 ssh 到第二个,但不能从第二个 ssh 到第一个。

真的不知道从哪里开始才能弄清楚为什么会有这种差异。

然而 nmap 给出了截然不同的结果:

计算机(A),也就是我不能进入:

PORT    STATE SERVICE
631/tcp open  ipp

我可以进入的计算机(B):

PORT    STATE SERVICE
22/tcp  open  ssh
53/tcp  open  domain
139/tcp open  netbios-ssn
445/tcp open  microsoft-ds
631/tcp open  ipp

由于两者上唯一开放的端口是 631,我尝试从 B 到 A 进行 ssh 并指定端口 631,但这也不起作用。

有人可以告知如何进行吗?

答案1

安装openssh serverPC A

sudo apt-get install openssh-server

您有更多详细信息这里

然后你就可以ssh进入PC APC B

SSH从事于port 22

编辑1

ssh-server如果你已经在 PC A 上安装,你可以使用命令检查netstat -at服务器是否期望连接port 22

这是我的电脑的输出

xxx@xxx:~$ netstat -at
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State
tcp        0      0 *:microsoft-ds          *:*                     LISTEN
tcp        0      0 *:netbios-ssn           *:*                     LISTEN
tcp        0      0 *:ssh                   *:*                     LISTEN
tcp        0      0 *:ipp                   *:*                     LISTEN
tcp        0      0 *:telnet                *:*                     LISTEN
tcp        0    320 xxxx:ssh              xxx.xxx.xx.xxx:43423    ESTABLISHED
tcp6       0      0 [::]:microsoft-ds       [::]:*                  LISTEN
tcp6       0      0 [::]:netbios-ssn        [::]:*                  LISTEN
tcp6       0      0 [::]:http               [::]:*                  LISTEN
tcp6       0      0 [::]:ssh                [::]:*                  LISTEN
tcp6       0      0 [::]:ipp                [::]:*                  LISTEN
tcp6       1      0 ip6-localhost:38900     ip6-localhost:ipp       CLOSE_WAIT

重要的是:

tcp        0      0 *:ssh                   *:*                     LISTEN

如果您设置ufwfirewall禁用它然后尝试连接。

还要重启ssh服务

sudo service ssh restart

您将看到服务是否启动。

答案2

非常感谢您的回复。我终于解决了这个问题,这要感谢非常有用的帖子

奇怪的 SSH 问题 - 它甚至无法启动

问题是,在我下载的 sshd_server 版本中

apt-get install sshd_server

安装的 sshd_config 文件底部有三行,这被证明是问题的根源

Host *
    ForwardAgent yes
    ForwardX11   yes

当我删除这些行时,我的远程登录问题就解决了。为了诊断问题,我按照上面线程中的建议,建议使用以下命令关闭 sshd:

service sshd stop

然后以调试模式运行

/usr/sbin/sshd -p 22 -D -d -e

在调试模式下,sshd 标记了默认 sshd_config 文件中的错误选项。

删除这些行并重新启动后,端口 22 就打开了。

相关内容