This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
other:putty_conf [2022/08/03 13:13] jypeter [Existing ssh keys] Some warnings before starting |
other:putty_conf [2023/03/14 17:03] jypeter [Creating ssh keys with PuTTYgen] More changes |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== Configuring and using PuTTY/Pageant ====== | ====== Configuring and using PuTTY/Pageant ====== | ||
- | PuTTY is a free and easy to use [[other:ssh|ssh client]] for **Windows**. You can use it to connect to your favorite remote Linux servers in text mode, and start remote graphical applications if you also have a running [[other:win10wsl#installing_an_x_server|X server]] | + | PuTTY is a free and easy to use [[other:ssh|ssh client]] for **Windows**. You can use it to connect to your favorite remote Linux servers in text mode, and start remote graphical applications if you also have a running [[other:x_conf|X server]] |
===== Installation ===== | ===== Installation ===== | ||
Line 54: | Line 54: | ||
* Specify your login name (on the LSCE servers) in **Auto-login username**. This way you won't have to type it when you connect to the Linux server!\\ {{ :other:putty_06.png?direct |}} | * Specify your login name (on the LSCE servers) in **Auto-login username**. This way you won't have to type it when you connect to the Linux server!\\ {{ :other:putty_06.png?direct |}} | ||
* In the ''Connection'' => ''SSH'' => ''Kex'' category: | * In the ''Connection'' => ''SSH'' => ''Kex'' category: | ||
- | * **<wrap hi>Unselect Attempt GSAPPI key exchange</wrap>**!\\ If you forget to do this, connecting to a server will seem to take forever (if it works at all)...\\ {{ :other:putty_gssapi.png?direct |}} | + | * **<wrap hi>Unselect Attempt GSSAPI key exchange</wrap>**!\\ If you forget to do this, connecting to a server will seem to take forever (if it works at all)...\\ {{ :other:putty_gssapi.png?direct |}} |
* In the ''Connection'' => ''SSH'' => ''Auth'' category: | * In the ''Connection'' => ''SSH'' => ''Auth'' category: | ||
* Select **Allow agent forwarding**. This is the same as [[/other:ssh#standard_usage|using ssh with the -A option]]\\ {{ :other:putty_07.png?direct |}} | * Select **Allow agent forwarding**. This is the same as [[/other:ssh#standard_usage|using ssh with the -A option]]\\ {{ :other:putty_07.png?direct |}} | ||
* In the ''Connection'' => ''SSH'' => ''X11'' category: | * In the ''Connection'' => ''SSH'' => ''X11'' category: | ||
- | * Select **Enable X11 forwarding**. This is the same as [[/other:ssh#standard_usage|using ssh with the -X option]]\\ {{ :other:putty_08.png?direct |}} | + | * Select **Enable X11 forwarding**. This is the same as [[/other:ssh#standard_usage|using ssh with the -X option]]\\ Note: remember that you will also need an [[other:x_conf|X server running]] in order to display graphics!\\ {{ :other:putty_08.png?direct |}} |
* When you have finished updating the settings, **do not forget to go back to ''Category'' => ''Session'' and Save the session**!\\ {{ :other:putty_09.png?direct |}} | * When you have finished updating the settings, **do not forget to go back to ''Category'' => ''Session'' and Save the session**!\\ {{ :other:putty_09.png?direct |}} | ||
Line 142: | Line 142: | ||
==== Creating ssh keys with PuTTYgen ==== | ==== Creating ssh keys with PuTTYgen ==== | ||
- | If you don't have a set of ssh keys, follow the steps below to **create private and public keys** | + | If you don't already have an existing set of //recent-enough// ssh keys, follow the steps below to **create a set of private and public keys**. |
- | * Make sure that the type of key (at the bottom of the ''PuTTYgen'' window) is ''RSA'' and that the number of bits is ''4096'' | + | Notes: |
+ | * by //recent-enough//, we mean ssh keys of type //rsa// and preferably //ed25519// (//dsa// is deprecated) | ||
+ | * extra technical details (that you can probably safely ignore) are available in the official [[https://the.earth.li/~sgtatham/putty/0.78/htmldoc/Chapter8.html#pubkey-puttygen|Using PuTTYgen, the PuTTY key generator]] documentation | ||
+ | |||
+ | Steps: | ||
+ | * Make sure that the selected //Type of key to generate// (at the bottom of the ''PuTTYgen'' window) is ''EdDSA'' (short for //Edwards-curve DSA//), with the default ''255'' bits.\\ This will generate **//ed25519// keys** that are now recommended on the IPSL servers | ||
+ | * {{:other:putty_23b.png?direct&500|}} | ||
+ | * You could also use ''RSA'' and ''4096'' bits, but ''ed25519'' keys are now recommended on the IPSL servers | ||
* Click on the ''Generate'' button and move your mouse to generate some random information | * Click on the ''Generate'' button and move your mouse to generate some random information | ||
* Type your ''Key passphrase'' and confirm it | * Type your ''Key passphrase'' and confirm it | ||
- | * Click on the ''Save private key'' button, and create a ''id_rsa.ppk'' file (or ''any_name_you_want.ppk'')\\ {{ :other:putty_23.png?direct&300 |}} | + | * Read [[other:ssh#some_common_sense_advice|Do not forget your passphrase!]] if you need some advice about passphrases |
- | * Click on the ''Save public key'' button, and create a ''id_rsa.pub'' file | + | * Click on the ''Save private key'' button, and create an ''id_ed25519**.ppk**'' file |
- | * Click on ''Conversions''=>''Export OpenSSH key'', and create a (standard) ''id_rsa'' file\\ You will not need this file with Putty, but it is just in case you need to use your private key later on a Linux computer | + | * Note: files with a ''.ppk'' extension can only be used by ''PuTTY''/''pageant''. That's why you also need to //export// the private key, as shown below |
+ | * **Important!** Click ''Conversions''=>''Export OpenSSH Key'' and create an ''id_ed25519'' file (a text file with **no** ''.ppk'' extension) | ||
+ | * You will not need this file when you use ''PuTTY'', but you may need to use this private key in a standard text format later, on Linux computers/servers | ||
+ | * Open a text editor and create an ''id_ed25519**.pub**'' file | ||
+ | * Save the content of the ''Public key for pasting into OpenSSH authorized_keys file'' field in the file\\ Something looking like\\ <code>ssh-ed25519 AAAAC3NzaC1lZDI[... lots of characters ...]vwjLNmY eddsa-key-20230310</code> | ||
+ | * Click on the ''Save public key'' button, and create a ''id_ed25519**.pub**'' file | ||
+ | * You will need to [[other:ssh#installing_ssh_keys|install the public key]] on all the remote Linux server that you want to connect to using the ssh agent, instead of typing your password | ||
+ | |||
+ | ==== Using the private key in Pageant ==== | ||
+ | We assume that the **private key file** is available locally in ''<some_disk_different_from_c>:\Users\<your_login>\ssh\'' | ||
+ | * Start ''Pageant'' and open the ''Pageant Key List'' window by: | ||
+ | * Double-clicking (left mouse button) on ''Pageant'' | ||
+ | * Or right-clicking on ''Pageant'' and choosing ''View keys'' | ||
+ | * Click on ''Add Key'', navigate to the directory where you have stored the ''.ppk'' converted private key file (e.g. ''\Users\<your_login>\ssh\''), open it and type your passphrase. You can ''Close'' the ''Pageant Key List'' once the key appears there\\ {{ :other:putty_private.png?direct&300 |}} | ||
+ | * If everything was done correctly, you should now be able to open the //Sessions// defined in ''Pageant'', on remote servers where the **public key matching the private key** used in ''Pageant'' was [[other:ssh#installing_ssh_keys|installed correctly]] | ||
/* standard page footer */ | /* standard page footer */ |