0

I was looking for some assistance with SSH.

I have a Mac and on it, I have virtualbox installed. I have 2 VM's on it, one is a windows 10 VM and another one is Ubuntu. Both exposed to each other on host-only network.

I used PuttyGen on Windows VM and generated an ssh key, copied to clipboard, opened up authorized_keys file on my ubuntu vm and pasted it as-s. After this i was successfully able to ssh from Windows to Linux (Ubuntu).

Now, I wanted the same behaviour with my Mac, to be able to SSH to the Ubuntu VM. Unfortunately it does not work. It says permission_denied. I have tried everything possible, did a lot of scouring on the web, but to no avail:( Here are the steps which i followed - Please can someone assist. Thanks in advance!

  1. I generated ssh key on my Mac - using "ssh-keygen -t rsa -b 4096" command which stored the keys on my id_rsa.pub file.

  2. This is how the .ssh folder looks on my Mac

    drwx------   5 JK  staff   170 Nov 14 21:27 .
    drwxr-xr-x+ 36 JK  staff  1224 Nov 14 20:10 ..
    -rw-------   1 JK  staff  3243 Nov 14 21:27 id_rsa
    -rw-r--r--   1 JK  staff   756 Nov 14 21:27 id_rsa.pub
    -rw-r--r--   1 JK  staff   345 Nov 14 16:42 known_hosts
    
  3. Now I copied the key from id_rsa.pub onto the authorized_keys file on mu ubuntu

  4. This is how the Ubuntu /.ssh directory looks like

    drwx------ 2 vagrant vagrant 4096 Nov 14 21:53 .
    drwx------ 4 vagrant vagrant 4096 Nov 15 01:40 ..
    -rw-r--r-- 1 vagrant vagrant 1557 Nov 15 03:47 authorized_keys
    
  5. I even tried doing a chmod 700 authorized_keys and it did not work

  6. I can confirm that the public key from Mac has been successfully copied to the authorized_keys on Ubuntu

  7. This is the ssh output

    ssh vagrant@192.168.58.1 -vvv
    OpenSSH_6.9p1, LibreSSL 2.1.8
    debug1: Reading configuration data /etc/ssh/ssh_config
    debug1: /etc/ssh/ssh_config line 21: Applying options for *
    debug2: ssh_connect: needpriv 0
    debug1: Connecting to 192.168.58.1 [192.168.58.1] port 22.
    debug1: Connection established.
    debug1: identity file /Users/JK/.ssh/id_rsa type 1
    debug1: key_load_public: No such file or directory
    debug1: identity file /Users/JK/.ssh/id_rsa-cert type -1
    debug1: key_load_public: No such file or directory
    debug1: identity file /Users/JK/.ssh/id_dsa type -1
    debug1: key_load_public: No such file or directory
    debug1: identity file /Users/JK/.ssh/id_dsa-cert type -1
    debug1: key_load_public: No such file or directory
    debug1: identity file /Users/JK/.ssh/id_ecdsa type -1
    debug1: key_load_public: No such file or directory
    debug1: identity file /Users/JK/.ssh/id_ecdsa-cert type -1
    debug1: key_load_public: No such file or directory
    debug1: identity file /Users/JK/.ssh/id_ed25519 type -1
    debug1: key_load_public: No such file or directory
    debug1: identity file /Users/JK/.ssh/id_ed25519-cert type -1
    debug1: Enabling compatibility mode for protocol 2.0
    debug1: Local version string SSH-2.0-OpenSSH_6.9
    debug1: Remote protocol version 2.0, remote software version OpenSSH_6.9
    debug1: match: OpenSSH_6.9 pat OpenSSH* compat 0x04000000
    debug2: fd 3 setting O_NONBLOCK
    debug1: Authenticating to 192.168.58.1:22 as 'vagrant'
    debug3: hostkeys_foreach: reading file "/Users/JK/.ssh/known_hosts"
    debug3: record_hostkey: found key type ECDSA in file /Users/JK/.ssh/known_hosts:1
    debug3: load_hostkeys: loaded 1 keys from 192.168.58.1
    debug3: order_hostkeyalgs: prefer hostkeyalgs: ecdsa-sha2-nistp256-cert-v01@openssh.com,ecdsa-sha2-nistp384-cert-v01@openssh.com,ecdsa-sha2-nistp521-cert-v01@openssh.com,ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521
    debug1: SSH2_MSG_KEXINIT sent
    debug1: SSH2_MSG_KEXINIT received
    debug2: kex_parse_kexinit: curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha1,diffie-hellman-group1-sha1
    debug2: kex_parse_kexinit: ecdsa-sha2-nistp256-cert-v01@openssh.com,ecdsa-sha2-nistp384-cert-v01@openssh.com,ecdsa-sha2-nistp521-cert-v01@openssh.com,ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,ssh-ed25519-cert-v01@openssh.com,ssh-rsa-cert-v01@openssh.com,ssh-dss-cert-v01@openssh.com,ssh-rsa-cert-v00@openssh.com,ssh-dss-cert-v00@openssh.com,ssh-ed25519,ssh-rsa,ssh-dss
    debug2: kex_parse_kexinit: chacha20-poly1305@openssh.com,aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm@openssh.com,aes256-gcm@openssh.com,arcfour256,arcfour128,aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,aes256-cbc,arcfour,rijndael-cbc@lysator.liu.se
    debug2: kex_parse_kexinit: chacha20-poly1305@openssh.com,aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm@openssh.com,aes256-gcm@openssh.com,arcfour256,arcfour128,aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,aes256-cbc,arcfour,rijndael-cbc@lysator.liu.se
    debug2: kex_parse_kexinit: 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,hmac-md5-etm@openssh.com,hmac-ripemd160-etm@openssh.com,hmac-sha1-96-etm@openssh.com,hmac-md5-96-etm@openssh.com,hmac-md5,hmac-ripemd160,hmac-ripemd160@openssh.com,hmac-sha1-96,hmac-md5-96
    debug2: kex_parse_kexinit: 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,hmac-md5-etm@openssh.com,hmac-ripemd160-etm@openssh.com,hmac-sha1-96-etm@openssh.com,hmac-md5-96-etm@openssh.com,hmac-md5,hmac-ripemd160,hmac-ripemd160@openssh.com,hmac-sha1-96,hmac-md5-96
    debug2: kex_parse_kexinit: none,zlib@openssh.com,zlib
    debug2: kex_parse_kexinit: none,zlib@openssh.com,zlib
    debug2: kex_parse_kexinit: 
    debug2: kex_parse_kexinit: 
    debug2: kex_parse_kexinit: first_kex_follows 0 
    debug2: kex_parse_kexinit: reserved 0 
    debug2: kex_parse_kexinit: curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group14-sha1
    debug2: kex_parse_kexinit: ssh-rsa,ssh-dss,ecdsa-sha2-nistp256,ssh-ed25519
    debug2: kex_parse_kexinit: chacha20-poly1305@openssh.com,aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm@openssh.com,aes256-gcm@openssh.com
    debug2: kex_parse_kexinit: chacha20-poly1305@openssh.com,aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm@openssh.com,aes256-gcm@openssh.com
    debug2: kex_parse_kexinit: 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: kex_parse_kexinit: 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: kex_parse_kexinit: none,zlib@openssh.com
    debug2: kex_parse_kexinit: none,zlib@openssh.com
    debug2: kex_parse_kexinit: 
    debug2: kex_parse_kexinit: 
    debug2: kex_parse_kexinit: first_kex_follows 0 
    debug2: kex_parse_kexinit: reserved 0 
    debug1: kex: server->client chacha20-poly1305@openssh.com <implicit> none
    debug1: kex: client->server chacha20-poly1305@openssh.com <implicit> none
    debug1: expecting SSH2_MSG_KEX_ECDH_REPLY
    debug1: Server host key: ecdsa-sha2-nistp256 SHA256:Yjfn7E49YWk/EE22fYrJvLusCs+VbvDDzppSUCHDBt8
    debug3: hostkeys_foreach: reading file "/Users/JK/.ssh/known_hosts"
    debug3: record_hostkey: found key type ECDSA in file /Users/JK/.ssh/known_hosts:1
    debug3: load_hostkeys: loaded 1 keys from 192.168.58.1
    debug1: Host '192.168.58.1' is known and matches the ECDSA host key.
    debug1: Found key in /Users/JK/.ssh/known_hosts:1
    debug2: set_newkeys: mode 1
    debug1: SSH2_MSG_NEWKEYS sent
    debug1: expecting SSH2_MSG_NEWKEYS
    debug2: set_newkeys: mode 0
    debug1: SSH2_MSG_NEWKEYS received
    debug1: SSH2_MSG_SERVICE_REQUEST sent
    debug2: service_accept: ssh-userauth
    debug1: SSH2_MSG_SERVICE_ACCEPT received
    debug2: key: /Users/JK/.ssh/id_rsa (0x7f8241e15210),
    debug2: key: /Users/JK/.ssh/id_dsa (0x0),
    debug2: key: /Users/JK/.ssh/id_ecdsa (0x0),
    debug2: key: /Users/JK/.ssh/id_ed25519 (0x0),
    debug1: Authentications that can continue: publickey,keyboard-interactive
    debug3: start over, passed a different list publickey,keyboard-interactive
    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 RSA public key: /Users/JK/.ssh/id_rsa
    debug3: send_pubkey_test
    debug2: we sent a publickey packet, wait for reply
    debug1: Authentications that can continue: publickey,keyboard-interactive
    debug1: Trying private key: /Users/JK/.ssh/id_dsa
    debug3: no such identity: /Users/JK/.ssh/id_dsa: No such file or directory
    debug1: Trying private key: /Users/JK/.ssh/id_ecdsa
    debug3: no such identity: /Users/JK/.ssh/id_ecdsa: No such file or directory
    debug1: Trying private key: /Users/JK/.ssh/id_ed25519
    debug3: no such identity: /Users/JK/.ssh/id_ed25519: No such file or directory
    debug2: we did not send a packet, disable method
    debug3: authmethod_lookup keyboard-interactive
    debug3: remaining preferred: password
    debug3: authmethod_is_enabled keyboard-interactive
    debug1: Next authentication method: keyboard-interactive
    debug2: userauth_kbdint
    debug2: we sent a keyboard-interactive packet, wait for reply
    debug2: input_userauth_info_req
    debug2: input_userauth_info_req: num_prompts 1
    Password:
    debug1: Authentications that can continue: publickey,keyboard-interactive
    debug2: userauth_kbdint
    debug2: we sent a keyboard-interactive packet, wait for reply
    debug2: input_userauth_info_req
    debug2: input_userauth_info_req: num_prompts 1
    Password:
    debug1: Authentications that can continue: publickey,keyboard-interactive
    debug2: userauth_kbdint
    debug2: we sent a keyboard-interactive packet, wait for reply
    debug2: input_userauth_info_req
    debug2: input_userauth_info_req: num_prompts 1
    Password:
    debug1: Authentications that can continue: publickey,keyboard-interactive
    debug2: we did not send a packet, disable method
    debug1: No more authentication methods to try.
    Permission denied (publickey,keyboard-interactive)
    
0

According to your post, you installed your public key in /.ssh/authorized_keys and you are connecting as user "vagrant", this means that you have to install your public key in /home/vagrant/.ssh/authorized_keys instead

| improve this answer | |
  • Hi there, Thanks for getting back to me. By /.ssh/authorized_keys, I mean /home/vagrant/.ssh/authorized_keys only. i.e they both denote the same. Any other ideas? – DevNovice Nov 17 '18 at 3:33
  • what are the perms of /home/vagrant/.ssh ? ls -ld /home/vagrant/.ssh Also have a look at /var/log/syslog or /var/log/messages or /var/log/secure on the destination host, you may have interesting stuff about sshd deny reason. – Chaoxiang N Nov 17 '18 at 14:28

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.