User Tools

Site Tools


wiki:advanced:authentication:passwordless-ssh

Passwordless authentication using ssh-keys

Linux client

You'll need to generate a SSH key via the ssh-keygen command. Please choose which key you want to generate (we recommend dsa):

$ ssh-keygen -t rsa

or

$ ssh-keygen -t dsa

This will create following files inside your $HOME/.ssh/ directory:

~/.ssh/id_{rsa,dsa}
~/.ssh/id_{rsa,dsa}.pub

You'll need to transfer the public part of the key to the wanted server. You can do this using the ssh-copy-id command:

$ ssh-copy-id -i ~/.ssh/id_rsa.pub user@remote-system

or

$ ssh-copy-id -i /.ssh/id_dsa.pub user@remote-system

After the transfer you can add the path to the private part of the key to the session preferences inside x2goclient. x2goclient should now establish the connection without asking for a password by simply clicking on the session card view.

Windows client

Start a command prompt and navigate to the x2goclient folder, in this example it is C:\Program Files\x2goclient.

First we generate a DSA key pair (use an empty password phrase if you want SSO):

C:\Program Files\x2goclient>ssh-keygen.exe -t dsa

:!: ssh-keygen.exe prints the path to the key file(s), you will need that in the next step.

You'll need to transfer the public key file to the wanted server. You can do this using the scp.exe command with the path that ssh-keygen.exe printed (make sure you transfer the id_dsa.pub file):

C:\Program Files\x2goclient>scp.exe /cygdrive/C/DOCUME~1/<username>/.x2go/.ssh/id_dsa.pub username@remoteserver:

When the file has been transferred, log on to the remote server with ssh.exe:

C:\Program Files\x2goclient>ssh.exe username@remoteserver

Go to your .ssh folder, add the contents of the public key file to your authorized_keys file and then remove the public key file:

cd ~/.ssh
cat ~/id_dsa.pub >> authorized_keys
rm ~/id_dsa.pub

You can now add the path to the id_dsa file (the private part of the key) to the session preferences inside x2goclient. x2goclient should now establish the connection without asking for a password by simply clicking on the session card view.

You can also create a desktop shortcut which starts the session with the client window hidden; in x2goclient select Session → “Create session icon on desktop…” → select session from the list and click the “Create session icon on desktop…”-button.

:!: The path to x2goclient.exe in the shortcut may be wrong, edit the shortcut and remove “bin\” from the path and the working directory.

wiki/advanced/authentication/passwordless-ssh.txt · Last modified: 2013/03/08 13:31 (external edit)