0

I had SSH working with keys, but for some reason it stopped and I can't figure out why. I've tried reconfiguring by copying over my public key, I've tried making sure its loaded in the client, and I've even messed a little with the SSH config on the remote machine. I have ssh -v but I'm not sure what the issue is. Here is my output (with some masking)

[USER]@[USER]s-MBP ~ % ssh -v [USER]@[SERVER]
OpenSSH_8.1p1, LibreSSL 2.7.3
debug1: Reading configuration data /Users/[USER]/.ssh/config
debug1: /Users/[USER]/.ssh/config line 1: Applying options for *
debug1: Reading configuration data /usr/local/etc/ssh_config
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 47: Applying options for *
debug1: Connecting to [SERVER] port 22.
debug1: Connection established.
debug1: identity file /Users/[USER]/.ssh/id_rsa type 0
debug1: identity file /Users/[USER]/.ssh/id_rsa-cert type -1
debug1: identity file /Users/[USER]/.ssh/id_dsa type -1
debug1: identity file /Users/[USER]/.ssh/id_dsa-cert type -1
debug1: identity file /Users/[USER]/.ssh/id_ecdsa type -1
debug1: identity file /Users/[USER]/.ssh/id_ecdsa-cert type -1
debug1: identity file /Users/[USER]/.ssh/id_ed25519 type -1
debug1: identity file /Users/[USER]/.ssh/id_ed25519-cert type -1
debug1: identity file /Users/[USER]/.ssh/id_xmss type -1
debug1: identity file /Users/[USER]/.ssh/id_xmss-cert type -1
debug1: Local version string SSH-2.0-OpenSSH_8.1
debug1: Remote protocol version 2.0, remote software version OpenSSH_7.6p1 Ubuntu-4ubuntu0.3
debug1: match: OpenSSH_7.6p1 Ubuntu-4ubuntu0.3 pat OpenSSH_7.0*,OpenSSH_7.1*,OpenSSH_7.2*,OpenSSH_7.3*,OpenSSH_7.4*,OpenSSH_7.5*,OpenSSH_7.6*,OpenSSH_7.7* compat 0x04000002
debug1: Authenticating to [SERVER]:22 as '[USER]'
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: algorithm: curve25519-sha256
debug1: kex: host key algorithm: ecdsa-sha2-nistp256
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
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY
debug1: Server host key: ecdsa-sha2-nistp256 SHA256:C3ILGqhuYcsr/6Vox2PCpZ05JKr/gUQI3y8RpB7Ai9U
debug1: Host '[SERVER]' is known and matches the ECDSA host key.
debug1: Found key in /Users/[USER]/.ssh/known_hosts:12
debug1: rekey out after 134217728 blocks
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: rekey in after 134217728 blocks
debug1: Will attempt key: [1] touchid-mac ECDSA SHA256:D2nlwjzZ/l7+0ruNCKJ2uTaVD2kkcRghhVW1MBCcpK0 agent
debug1: Will attempt key: /Users/[USER]/.ssh/id_rsa RSA SHA256:g5VEpqkXbAcFYTJwtLiIk+4f84Bshudqx9CXLEfo9rg
debug1: Will attempt key: /Users/[USER]/.ssh/id_dsa 
debug1: Will attempt key: /Users/[USER]/.ssh/id_ecdsa 
debug1: Will attempt key: /Users/[USER]/.ssh/id_ed25519 
debug1: Will attempt key: /Users/[USER]/.ssh/id_xmss 
debug1: SSH2_MSG_EXT_INFO received
debug1: kex_input_ext_info: server-sig-algs=<ssh-ed25519,ssh-rsa,rsa-sha2-256,rsa-sha2-512,ssh-dss,ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521>
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey,password
debug1: Next authentication method: publickey
debug1: Offering public key: [1] touchid-mac ECDSA SHA256:D2nlwjzZ/l7+0ruNCKJ2uTaVD2kkcRghhVW1MBCcpK0 agent
debug1: Authentications that can continue: publickey,password
debug1: Offering public key: /Users/[USER]/.ssh/id_rsa RSA SHA256:g5VEpqkXbAcFYTJwtLiIk+4f84Bshudqx9CXLEfo9rg
debug1: Authentications that can continue: publickey,password
debug1: Trying private key: /Users/[USER]/.ssh/id_dsa
debug1: Trying private key: /Users/[USER]/.ssh/id_ecdsa
debug1: Trying private key: /Users/[USER]/.ssh/id_ed25519
debug1: Trying private key: /Users/[USER]/.ssh/id_xmss
debug1: Next authentication method: password
  • What are the access flags on the .ssh directory of the target id on the server (should be drwx------), and on the .ssh/authorized_keys (should be -rw-------)? Also ssh -v shows you the client's point of view, but what happens on the server is just as important, check the /var/log/auth.log or /var/log/authlog files. – xenoid Apr 7 at 8:21
  • @xenoid thank you! Auth.log told me what I need to know and I was able to fix this – trever Apr 7 at 23:01
1

Check /var/log/auth.log or /var/log/authlog

In my case, I had

Authentication refused: bad ownership or modes for directory /home/[USER]

Then I ran

chmod go-w ~/
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys

And now it works

| improve this answer | |
  • Which is why I asked about the access flags... – xenoid Apr 7 at 23:13
  • Yes- if you would like the credit feel free to add an answer I'm happy to accept it. I wasn't aware of the logs for this. – trever Apr 8 at 0:05
  • Keep the credit :) – xenoid Apr 8 at 5:50
0

Have you tried ssh-copy-id ? first execute this command:

ssh-copy-id user@server-ip

It will ask for your password. Then execute the regular SSH command:

ssh user@server-ip
| improve this answer | |
  • Yes I have done this, it is successful but still does not work. – trever Apr 7 at 7:25

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.