on my host server I have my user with generated private and public keys.
I have copied public key value to my remote server authorized_keys
file.
I have mapped new docker container instance to use the .ssh folder as a volume and set network to the host's network.
-v /home/jenkins/.ssh:/home/jenkins/.ssh --network host'
Now I try to SSH authenticate myself inside the container towards the remote computer.
ssh -vvv -o StrictHostKeyChecking=no [email protected]
My user does not have SSH pass phrase. Output on the SSH server side:
sshd: Failed none for jenkins from 10.7.148.219 port 42058 ssh2
sshd: Failed password for jenkins from 10.7.148.219 port 42058 ssh2
Output on the client side:
+ ssh -vvv -o 'StrictHostKeyChecking=no' [email protected]
OpenSSH_8.6p1, OpenSSL 1.1.1l 24 Aug 2021
debug1: Reading configuration data /etc/ssh/ssh_config
debug2: resolve_canonicalize: hostname 10.7.175.143 is address
debug3: expanded UserKnownHostsFile '~/.ssh/known_hosts' -> '/root/.ssh/known_hosts'
debug3: expanded UserKnownHostsFile '~/.ssh/known_hosts2' -> '/root/.ssh/known_hosts2'
debug1: Authenticator provider $SSH_SK_PROVIDER did not resolve; disabling
debug3: ssh_connect_direct: entering
debug1: Connecting to 10.7.175.143 [10.7.175.143] port 22.
debug3: set_sock_tos: set socket 3 IP_TOS 0x48
debug1: Connection established.
.................................
debug1: Authentications that can continue: publickey,password,keyboard-interactive
debug3: start over, passed a different list publickey,password,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: Trying private key: /root/.ssh/id_rsa
debug3: no such identity: /root/.ssh/id_rsa: No such file or directory
debug1: Trying private key: /root/.ssh/id_dsa
debug3: no such identity: /root/.ssh/id_dsa: No such file or directory
debug1: Trying private key: /root/.ssh/id_ecdsa
debug3: no such identity: /root/.ssh/id_ecdsa: No such file or directory
debug1: Trying private key: /root/.ssh/id_ecdsa_sk
debug3: no such identity: /root/.ssh/id_ecdsa_sk: No such file or directory
debug1: Trying private key: /root/.ssh/id_ed25519
debug3: no such identity: /root/.ssh/id_ed25519: No such file or directory
debug1: Trying private key: /root/.ssh/id_ed25519_sk
debug3: no such identity: /root/.ssh/id_ed25519_sk: No such file or directory
debug1: Trying private key: /root/.ssh/id_xmss
debug3: no such identity: /root/.ssh/id_xmss: 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
debug3: send packet: type 50
debug2: we sent a keyboard-interactive packet, wait for reply
debug3: receive packet: type 51
debug1: Authentications that can continue: publickey,password,keyboard-interactive
debug3: userauth_kbdint: disable: no info_req_seen
debug2: we did not send a packet, disable method
debug3: authmethod_lookup password
debug3: remaining preferred:
debug3: authmethod_is_enabled password
debug1: Next authentication method: password
debug1: read_passphrase: can't open /dev/tty: No such device or address
debug3: send packet: type 50
debug2: we sent a password packet, wait for reply
debug3: receive packet: type 51
debug1: Authentications that can continue: publickey,password,keyboard-interactive
debug2: we did not send a packet, disable method
debug1: No more authentication methods to try.
[email protected]: Permission denied (publickey,password,keyboard-interactive).
Can I somehow authenticate my self from the docker container?
ssh
command from there (assuming it succeeds) and compare the verbose output between the successful and failedssh
runs, look for differences that might give you some hint. You should also compare/etc/ssh/ssh_config
you have in the docker and the one you have on your host, maybe there are some differences that cause the failure and you you will need to copy it to the docker image./root
instead ofjenkins
home folder. You should tellssh
where it should look for the keys.-i
and now it works! Can you please tell me for the"scp"
how I can reference the private key as well? Because I need to use scp command after the ssh command. If it targets by default /home/jenkins/.ssh I wouldn't have issue but now I don't know how to reference in SCP? Thanksscp
should also have the same-i
flag, just like ssh.