无法从 Debian 主机 ssh 进入 VirtualBox CentOS 7 guest 虚拟机

无法从 Debian 主机 ssh 进入 VirtualBox CentOS 7 guest 虚拟机

我有一台 Debian 9 主机。我可以毫无问题地通过 ssh 访问我的 Raspberry Pi 和其他服务器。我在 VirtualBox 中安装了 openSUSE 作为虚拟机。我可以毫无问题地 ssh 进入该虚拟机。要在 VirtualBox 中进行设置,我转到:设置 > 网络 > 高级 > 端口转发 > 名称:ssh,协议:TCP,主机 IP:(空白),主机端口:(随机高端口号),访客 IP:(空白),访客端口:22。这是针对适配器 1 的,它“附加到:NAT”。这些说明位于几个不同的论坛帖子上。我对我的 CentOS 虚拟机做了同样的事情,但使用了不同的主机端口(随机高端口号)。我已确保 sshd 服务正在运行sudo systemctl status sshd。但是,我无法通过 ssh 进入 CentOS 虚拟机。我收到以下错误(下面最后一行):

~$ ssh -p 1820 [email protected] -v
OpenSSH_7.4p1 Debian-10, OpenSSL 1.0.2k  26 Jan 2017
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug1: Connecting to 127.0.0.1 [127.0.0.1] port 1820.
debug1: Connection established.
debug1: key_load_public: No such file or directory
debug1: identity file /home/brock/.ssh/id_rsa type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/brock/.ssh/id_rsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/brock/.ssh/id_dsa type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/brock/.ssh/id_dsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/brock/.ssh/id_ecdsa type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/brock/.ssh/id_ecdsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/brock/.ssh/id_ed25519 type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/brock/.ssh/id_ed25519-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_7.4p1 Debian-10
ssh_exchange_identification: read: Connection reset by peer

该问题与 CentOS 的网络或 ssh 配置方式有关。 CentOS VM 连接互联网没有问题。对于使用 VirtualBox 的人来说,这似乎是一个简单的测试。这CentOS 最小 iso是 680 MB。

这是/var/log/secure今天我尝试使用我的用户和 root 进行 ssh 登录时的输出。

May 31 00:58:03 localhost sshd[1141]: Server listening on 0.0.0.0 port 22.
May 31 00:58:03 localhost sshd[1141]: Server listening on :: port 22.
May 31 00:58:14 localhost login: pam_unix(login:session): session opened for user root by LOGIN(uid=0)
May 31 00:58:14 localhost login: ROOT LOGIN ON tty1
May 31 00:58:22 localhost polkitd[656]: Registered Authentication Agent for unix-process:2529:3738 (system bus name :1.30 [/usr/bin/pkttyagent --notify-fd 5 --fallback], object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale en_US.UTF-8)
May 31 00:58:23 localhost login: pam_unix(login:session): session closed for user root
May 31 00:58:23 localhost polkitd[656]: Unregistered Authentication Agent for unix-process:2529:3738 (system bus name :1.30, object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale en_US.UTF-8) (disconnected from bus)
May 31 00:58:25 localhost gdm-launch-environment]: pam_unix(gdm-launch-environment:session): session opened for user gdm by (uid=0)
May 31 00:58:27 localhost polkitd[656]: Registered Authentication Agent for unix-session:c1 (system bus name :1.55 [gnome-shell --mode=gdm], object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale en_US.UTF-8)
May 31 00:58:39 localhost gdm-password]: pam_unix(gdm-password:session): session opened for user jbc by (unknown)(uid=0)
May 31 00:58:40 localhost gdm-launch-environment]: pam_unix(gdm-launch-environment:session): session closed for user gdm
May 31 00:58:40 localhost polkitd[656]: Unregistered Authentication Agent for unix-session:c1 (system bus name :1.55, object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale en_US.UTF-8) (disconnected from bus)
May 31 00:58:40 localhost polkitd[656]: Registered Authentication Agent for unix-session:2 (system bus name :1.69 [/usr/libexec/xfce-polkit], object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale en_US.UTF-8)
May 31 00:59:30 localhost sudo:     jbc : user NOT in sudoers ; TTY=pts/0 ; PWD=/home/jbc ; USER=root ; COMMAND=/bin/yum remove --purge chromium
May 31 00:59:42 localhost su: pam_unix(su-l:session): session opened for user root by jbc(uid=1000)
May 31 01:15:18 localhost polkitd[656]: Registered Authentication Agent for unix-process:4582:105315 (system bus name :1.86 [/usr/bin/pkttyagent --notify-fd 5 --fallback], object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale en_US.UTF-8)
May 31 12:58:19 localhost polkitd[659]: Loading rules from directory /etc/polkit-1/rules.d
May 31 12:58:19 localhost polkitd[659]: Loading rules from directory /usr/share/polkit-1/rules.d
May 31 12:58:19 localhost polkitd[659]: Finished loading, compiling and executing 4 rules
May 31 12:58:19 localhost polkitd[659]: Acquired the name org.freedesktop.PolicyKit1 on the system bus
May 31 12:58:29 localhost sshd[1139]: Server listening on 0.0.0.0 port 22.
May 31 12:58:29 localhost sshd[1139]: Server listening on :: port 22.
May 31 12:58:52 localhost login: pam_unix(login:session): session opened for user jbc by LOGIN(uid=0)
May 31 12:58:52 localhost login: LOGIN ON tty1 BY jbc
May 31 13:02:01 localhost polkitd[659]: Registered Authentication Agent for unix-process:2581:22909 (system bus name :1.34 [/usr/bin/pkttyagent --notify-fd 5 --fallback], object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale en_US.UTF-8)
May 31 13:02:04 localhost polkitd[659]: Operator of unix-process:2581:22909 successfully authenticated as unix-user:root to gain TEMPORARY authorization for action org.freedesktop.systemd1.manage-units for system-bus-name::1.35 [init 5] (owned by unix-user:jbc)
May 31 13:02:05 localhost polkitd[659]: Unregistered Authentication Agent for unix-process:2581:22909 (system bus name :1.34, object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale en_US.UTF-8) (disconnected from bus)
May 31 13:02:05 localhost login: pam_unix(login:session): session closed for user jbc
May 31 13:02:06 localhost gdm-launch-environment]: pam_unix(gdm-launch-environment:session): session opened for user gdm by (uid=0)
May 31 13:02:09 localhost polkitd[659]: Registered Authentication Agent for unix-session:c1 (system bus name :1.64 [gnome-shell --mode=gdm], object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale en_US.UTF-8)
May 31 13:02:15 localhost gdm-password]: pam_unix(gdm-password:session): session opened for user jbc by (unknown)(uid=0)
May 31 13:02:16 localhost gdm-launch-environment]: pam_unix(gdm-launch-environment:session): session closed for user gdm
May 31 13:02:16 localhost polkitd[659]: Unregistered Authentication Agent for unix-session:c1 (system bus name :1.64, object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale en_US.UTF-8) (disconnected from bus)
May 31 13:02:17 localhost polkitd[659]: Registered Authentication Agent for unix-session:4 (system bus name :1.78 [/usr/libexec/xfce-polkit], object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale en_US.UTF-8)
May 31 13:02:33 localhost su: pam_unix(su-l:session): session opened for user root by jbc(uid=1000)
May 31 13:03:18 localhost polkitd[659]: Registered Authentication Agent for unix-process:4348:30623 (system bus name :1.87 [/usr/bin/pkttyagent --notify-fd 5 --fallback], object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale en_US.UTF-8)
May 31 13:03:18 localhost polkitd[659]: Unregistered Authentication Agent for unix-process:4348:30623 (system bus name :1.87, object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale en_US.UTF-8) (disconnected from bus)

另外,/var/log/securessh相关:

[root@localhost ~]# cat /var/log/secure | grep "May 31" | grep ssh
May 31 00:58:03 localhost sshd[1141]: Server listening on 0.0.0.0 port 22.
May 31 00:58:03 localhost sshd[1141]: Server listening on :: port 22.
May 31 12:58:29 localhost sshd[1139]: Server listening on 0.0.0.0 port 22.
May 31 12:58:29 localhost sshd[1139]: Server listening on :: port 22.

答案1

你说:

具有不同的主机端口(随机高端口号)。

但你的日志显示:

服务器监听 0.0.0.0 端口 22。

当您尝试登录时中央操作系统框,您会得到响应:

OpenSSH_7.4p1Debian-10, OpenSSL 1.0.2k 2017 年 1 月 26 日

这就是你的 Ubuntu 盒子在接听电话。

如果您包含了 /etc/ssh/sshd_config,情况会更加明显。那里的“端口”设置必须与您配置用于转发的高端口相匹配。

答案2

看起来密钥身份验证失败(您设置了吗?),并且 /etc/ssh/sshd_config 可能缺少该行:

PasswordAuthentication yes

也许包括 CentOS VM 中的 /etc/ssh/sshd_config 文件以获取更多信息。

相关内容