我使用 dropbear 设置了 ARM64 qemu 映像。我正在尝试从主机 ssh 登录。我使用以下命令行来启动来宾。
#!/bin/bash
~/repos/qemu-2.6.0-rc3/aarch64-softmmu/qemu-system-aarch64 \
-machine virt \
-cpu cortex-a57 \
-machine type=virt \
-nographic -smp 1 \
-m 2048 \
-kernel ./arch/arm64/boot/Image \
--append "console=ttyAMA0" \
-net nic,model=virtio \
-net user,hostfwd=tcp::10022-:22
在引导日志中我看到以下内容
drivers/rtc/hctosys.c: unable to open rtc device (rtc0)
Freeing unused kernel memory: 7684K (ffffffc000715000 - ffffffc000e96000)
Freeing alternatives memory: 4K (ffffffc000e96000 - ffffffc000e97000)
Starting logging: OK
Initializing random number generator... random: dd urandom read with 1 bits of entropy available
done.
Starting network: OK
Starting dropbear sshd: OK
Welcome to Buildroot
buildroot login: root
此外,我还可以ssh root@localhost
对客人做一个。
但是,当我尝试从主机 ssh 登录时,我得到以下信息:-
$ ssh root@localhost -p10022 -vvv
OpenSSH_7.2p2 Ubuntu-4ubuntu2.1, OpenSSL 1.0.2g 1 Mar 2016
debug1: Reading configuration data /home/mememe/.ssh/config
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug1: auto-mux: Trying existing master
debug1: Control socket "/tmp/ssh_mux_172.16.109.1_10022_root" does not exist
debug2: resolving "172.16.109.1" port 10022
debug2: ssh_connect_direct: needpriv 0
debug1: Connecting to 172.16.109.1 [172.16.109.1] port 10022.
debug1: Connection established.
debug1: identity file /home/mememe/.ssh/id_rsa type 1
debug1: key_load_public: No such file or directory
debug1: identity file /home/mememe/.ssh/id_rsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/mememe/.ssh/id_dsa type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/mememe/.ssh/id_dsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/mememe/.ssh/id_ecdsa type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/mememe/.ssh/id_ecdsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/mememe/.ssh/id_ed25519 type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/mememe/.ssh/id_ed25519-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_7.2p2 Ubuntu-4ubuntu2.1
此时我没有得到任何回应。为什么会出现这个问题呢?我的 ssh 配置只有以下几行,所以我想这不是问题。
ControlMaster auto
ControlPath /tmp/ssh_mux_%h_%p_%r
我已经在虚拟机上设置了 root 密码,并且希望能够使用 root 密码进行 ssh。
编辑
如果我等待足够长的时间,我会在详细输出中得到以下行。
ssh_exchange_identification: read: Connection reset by peer