I have already disabled all forms of logging, reverse DNS lookup is disabled in dropbear by default.
I conducted some tests with
ssh -vvv
and tapped enter key repeatedly to capture where it paused for longer. There are two spots actually. I tried googling information about this and found someone else reporting the same issues and a bunch of not helpful armchair professors.
Anyway, here's a sample log I just captured. That's my first attempt of logging in after the virtualbox machine has started.
I tried supplying the correct key so it tries it in the first place and not waste the time trying other keys.
Code: Select all
[mctom@Tomusiomat ~]$ time ssh -Tvvvv virtualbox -i ~/.ssh/id_rsa_passwordless.key -p 11122 whoami
OpenSSH_9.1p1, OpenSSL 3.0.7 1 Nov 2022
debug1: Reading configuration data /home/mctom/.ssh/config
debug1: /home/mctom/.ssh/config line 1: Applying options for *
debug1: Reading configuration data /etc/ssh/ssh_config
debug3: expanded UserKnownHostsFile '~/.ssh/known_hosts' -> '/home/mctom/.ssh/known_hosts'
debug3: expanded UserKnownHostsFile '~/.ssh/known_hosts2' -> '/home/mctom/.ssh/known_hosts2'
debug2: resolving "virtualbox" port 11122
debug3: resolve_host: lookup virtualbox:11122
debug3: ssh_connect_direct: entering
debug1: Connecting to virtualbox [192.168.0.254] port 11122.
debug3: set_sock_tos: set socket 3 IP_TOS 0x48
debug1: Connection established.
debug1: identity file /home/mctom/.ssh/id_rsa_passwordless.key type 0
debug1: identity file /home/mctom/.ssh/id_rsa_passwordless.key-cert type -1
debug1: identity file /home/mctom/.ssh/id_rsa_passwordless.key type 0
debug1: identity file /home/mctom/.ssh/id_rsa_passwordless.key-cert type -1
debug1: identity file /home/mctom/.ssh/id_rsa type 0
debug1: identity file /home/mctom/.ssh/id_rsa-cert type -1
debug1: identity file /home/mctom/.ssh/id_ed25519_passwordless type 3
debug1: identity file /home/mctom/.ssh/id_ed25519_passwordless-cert type -1
debug1: Local version string SSH-2.0-OpenSSH_9.1
debug1: Remote protocol version 2.0, remote software version dropbear_2022.83
debug1: compat_banner: no match: dropbear_2022.83
debug2: fd 3 setting O_NONBLOCK
debug1: Authenticating to virtualbox:11122 as 'mctom'
debug3: put_host_port: [virtualbox]:11122
debug3: record_hostkey: found key type RSA in file /home/mctom/.ssh/known_hosts:29
debug3: load_hostkeys_file: loaded 1 keys from [virtualbox]:11122
debug1: load_hostkeys: fopen /home/mctom/.ssh/known_hosts2: No such file or directory
debug1: load_hostkeys: fopen /etc/ssh/ssh_known_hosts: No such file or directory
debug1: load_hostkeys: fopen /etc/ssh/ssh_known_hosts2: No such file or directory
debug3: order_hostkeyalgs: prefer hostkeyalgs: rsa-sha2-512-cert-v01@openssh.com,rsa-sha2-256-cert-v01@openssh.com,rsa-sha2-512,rsa-sha2-256
debug3: send packet: type 20
debug1: SSH2_MSG_KEXINIT sent
debug3: receive packet: type 20
debug1: SSH2_MSG_KEXINIT received
debug2: local client KEXINIT proposal
debug2: KEX algorithms: sntrup761x25519-sha512@openssh.com,curve25519-sha256,curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group16-sha512,diffie-hellman-group18-sha512,diffie-hellman-group14-sha256,ext-info-c
debug2: host key algorithms: rsa-sha2-512-cert-v01@openssh.com,rsa-sha2-256-cert-v01@openssh.com,rsa-sha2-512,rsa-sha2-256,ssh-ed25519-cert-v01@openssh.com,ecdsa-sha2-nistp256-cert-v01@openssh.com,ecdsa-sha2-nistp384-cert-v01@openssh.com,ecdsa-sha2-nistp521-cert-v01@openssh.com,sk-ssh-ed25519-cert-v01@openssh.com,sk-ecdsa-sha2-nistp256-cert-v01@openssh.com,ssh-ed25519,ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,sk-ssh-ed25519@openssh.com,sk-ecdsa-sha2-nistp256@openssh.com
debug2: ciphers ctos: chacha20-poly1305@openssh.com,aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm@openssh.com,aes256-gcm@openssh.com
debug2: ciphers stoc: chacha20-poly1305@openssh.com,aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm@openssh.com,aes256-gcm@openssh.com
debug2: MACs ctos: umac-64-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,hmac-sha1-etm@openssh.com,umac-64@openssh.com,umac-128@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-sha1
debug2: MACs stoc: umac-64-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,hmac-sha1-etm@openssh.com,umac-64@openssh.com,umac-128@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-sha1
debug2: compression ctos: none,zlib@openssh.com,zlib
debug2: compression stoc: none,zlib@openssh.com,zlib
debug2: languages ctos:
debug2: languages stoc:
debug2: first_kex_follows 0
debug2: reserved 0
debug2: peer server KEXINIT proposal
debug2: KEX algorithms: curve25519-sha256,curve25519-sha256@libssh.org,ecdh-sha2-nistp521,ecdh-sha2-nistp384,ecdh-sha2-nistp256,diffie-hellman-group14-sha256,diffie-hellman-group14-sha1,kexguess2@matt.ucc.asn.au
debug2: host key algorithms: rsa-sha2-256,ssh-rsa
debug2: ciphers ctos: chacha20-poly1305@openssh.com,aes128-ctr,aes256-ctr,aes128-cbc,aes256-cbc
debug2: ciphers stoc: chacha20-poly1305@openssh.com,aes128-ctr,aes256-ctr,aes128-cbc,aes256-cbc
debug2: MACs ctos: hmac-sha1,hmac-sha2-256
debug2: MACs stoc: hmac-sha1,hmac-sha2-256
debug2: compression ctos: zlib@openssh.com,none
debug2: compression stoc: zlib@openssh.com,none
debug2: languages ctos:
debug2: languages stoc:
debug2: first_kex_follows 0
debug2: reserved 0
debug1: kex: algorithm: curve25519-sha256
debug1: kex: host key algorithm: rsa-sha2-256
debug1: kex: server->client cipher: chacha20-poly1305@openssh.com MAC: <implicit> compression: none
debug1: kex: client->server cipher: chacha20-poly1305@openssh.com MAC: <implicit> compression: none
debug3: send packet: type 30
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY
debug3: receive packet: type 31
debug1: SSH2_MSG_KEX_ECDH_REPLY received
debug1: Server host key: ssh-rsa SHA256:By8HIV8cnKChg0Q80nMuijqvFMGWO7JCPzW4q1eaw0o
debug3: put_host_port: [192.168.0.254]:11122
debug3: put_host_port: [virtualbox]:11122
debug3: record_hostkey: found key type RSA in file /home/mctom/.ssh/known_hosts:29
debug3: load_hostkeys_file: loaded 1 keys from [virtualbox]:11122
debug1: load_hostkeys: fopen /home/mctom/.ssh/known_hosts2: No such file or directory
debug1: load_hostkeys: fopen /etc/ssh/ssh_known_hosts: No such file or directory
debug1: load_hostkeys: fopen /etc/ssh/ssh_known_hosts2: No such file or directory
debug1: Host '[virtualbox]:11122' is known and matches the RSA host key.
debug1: Found key in /home/mctom/.ssh/known_hosts:29
debug3: send packet: type 21
debug2: ssh_set_newkeys: mode 1
debug1: rekey out after 134217728 blocks
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug3: receive packet: type 21
debug1: SSH2_MSG_NEWKEYS received
debug2: ssh_set_newkeys: mode 0
debug1: rekey in after 134217728 blocks
debug1: Will attempt key: /home/mctom/.ssh/id_rsa_passwordless.key RSA SHA256:fieUWhBcGSuGQmS2BoPuJqQtm3VBv1dMoYvixzyKUVw explicit
debug1: Will attempt key: /home/mctom/.ssh/id_rsa_passwordless.key RSA SHA256:fieUWhBcGSuGQmS2BoPuJqQtm3VBv1dMoYvixzyKUVw explicit
debug1: Will attempt key: /home/mctom/.ssh/id_rsa RSA SHA256:K1XUQzdCkNKkCKv/hokHO4hYevovSs5Og+C91a0mxtM explicit
debug1: Will attempt key: /home/mctom/.ssh/id_ed25519_passwordless ED25519 SHA256:ZlSR4obh6mv5Ft1zouF1LkFL2h8ehGgCAgou0zeSq4o explicit
debug2: pubkey_prepare: done
debug3: send packet: type 5
debug3: receive packet: type 7
debug1: SSH2_MSG_EXT_INFO received
debug1: kex_input_ext_info: server-sig-algs=<ssh-ed25519,sk-ssh-ed25519@openssh.com,ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,sk-ecdsa-sha2-nistp256@openssh.com,rsa-sha2-256,ssh-rsa>
debug3: receive packet: type 6
debug2: service_accept: ssh-userauth
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug3: send packet: type 50
debug3: receive packet: type 51
debug1: Authentications that can continue: publickey
debug3: start over, passed a different list publickey
debug3: preferred publickey,keyboard-interactive,password
debug3: authmethod_lookup publickey
debug3: remaining preferred: keyboard-interactive,password
debug3: authmethod_is_enabled publickey
debug1: Next authentication method: publickey
debug1: Offering public key: /home/mctom/.ssh/id_rsa_passwordless.key RSA SHA256:fieUWhBcGSuGQmS2BoPuJqQtm3VBv1dMoYvixzyKUVw explicit
debug3: send packet: type 50
debug2: we sent a publickey packet, wait for reply
debug3: receive packet: type 60
debug1: Server accepts key: /home/mctom/.ssh/id_rsa_passwordless.key RSA SHA256:fieUWhBcGSuGQmS2BoPuJqQtm3VBv1dMoYvixzyKUVw explicit
debug3: sign_and_send_pubkey: using publickey with RSA SHA256:fieUWhBcGSuGQmS2BoPuJqQtm3VBv1dMoYvixzyKUVw
debug3: sign_and_send_pubkey: signing using rsa-sha2-256 SHA256:fieUWhBcGSuGQmS2BoPuJqQtm3VBv1dMoYvixzyKUVw
debug3: send packet: type 50
debug3: receive packet: type 52
Authenticated to virtualbox ([192.168.0.254]:11122) using "publickey".
debug1: channel 0: new [client-session]
debug3: ssh_session2_open: channel_new: 0
debug2: channel 0: send open
debug3: send packet: type 90
debug1: Entering interactive session.
debug1: pledge: filesystem
debug3: receive packet: type 91
debug2: channel_input_open_confirmation: channel 0: callback start
debug2: fd 3 setting TCP_NODELAY
debug3: set_sock_tos: set socket 3 IP_TOS 0x20
debug2: client_session2_setup: id 0
debug1: Sending command: whoami
debug2: channel 0: request exec confirm 1
debug3: send packet: type 98
debug2: channel_input_open_confirmation: channel 0: callback done
debug2: channel 0: open confirm rwindow 65536 rmax 32759
debug3: receive packet: type 99
debug2: channel_input_status_confirm: type 99 id 0
debug2: exec request accepted on channel 0
mctom
debug3: receive packet: type 96
debug2: channel 0: rcvd eof
debug2: channel 0: output open -> drain
debug2: channel 0: obuf empty
debug2: chan_shutdown_write: channel 0: (i0 o1 sock -1 wfd 5 efd 6 [write])
debug2: channel 0: output drain -> closed
debug3: receive packet: type 98
debug1: client_input_channel_req: channel 0 rtype exit-status reply 0
debug3: receive packet: type 97
debug2: channel 0: rcvd close
debug2: chan_shutdown_read: channel 0: (i0 o3 sock -1 wfd 4 efd 6 [write])
debug2: channel 0: input open -> closed
debug3: channel 0: will not send data after close
debug2: channel 0: almost dead
debug2: channel 0: gc: notify user
debug2: channel 0: gc: user detached
debug2: channel 0: send close
debug3: send packet: type 97
debug2: channel 0: is dead
debug2: channel 0: garbage collecting
debug1: channel 0: free: client-session, nchannels 1
debug3: channel 0: status: The following connections are open:
#0 client-session (t4 r0 i3/0 o3/0 e[write]/0 fd -1/-1/6 sock -1 cc -1 io 0x00/0x00)
debug3: send packet: type 1
Transferred: sent 3864, received 2140 bytes, in 1.9 seconds
Bytes per second: sent 2012.8, received 1114.8
debug1: Exit status 0
real 0m4,831s
user 0m0,025s
sys 0m0,004s
Nevertheless I added some entries to /etc/hosts and the time was repeatedly under 600ms, so it does look like an improvement, but not conclusive.
Some other voices over the internet pointed out the possible troubles generating random numbers, but I can't see why would that happen only in the scenario when I chroot dropbear from another machine.