User Tools

Site Tools


other:putty_conf

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
other:putty_conf [2022/08/03 13:57]
jypeter [Creating ssh keys with PuTTYgen] Added the 'Using the private key in Pageant' section
other:putty_conf [2024/02/15 13:27] (current)
jypeter [Changing some useful settings]
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 8: Line 8:
  
 You can install the latest version of PuTTY directly from [[https://​apps.microsoft.com/​store/​detail/​XPFNZKSKLBP7RJ|Microsoft Store]], or download the latest [[https://​www.chiark.greenend.org.uk/​~sgtatham/​putty/​latest.html|64-bit msi installer]] You can install the latest version of PuTTY directly from [[https://​apps.microsoft.com/​store/​detail/​XPFNZKSKLBP7RJ|Microsoft Store]], or download the latest [[https://​www.chiark.greenend.org.uk/​~sgtatham/​putty/​latest.html|64-bit msi installer]]
 +
 +==== Updating PuTTY ====
 +
 +Download the latest version, or just type ''​winget upgrade --id XPFNZKSKLBP7RJ''​ in a [[other:​win10apps#​windows_terminal|Windows Terminal]]
  
 ===== Launching PuTTY/​Pageant ===== ===== Launching PuTTY/​Pageant =====
  
-You could directly launch PuTTY (''​Start''​ => ''​PuTTY''​ => ''​PuTTY''​),​ but it is actually **more efficient** to launch ​''​Pageant'',​ especially if you are often going to connect to the same server(s)+You could directly launch PuTTY (''​Start''​ => ''​PuTTY''​ => ''​PuTTY''​),​ but it is actually **more efficient** to use ''​Pageant'' ​for opening terminals, especially if you are often going to connect to the same server(s)
  
 Starting ''​Pageant'':​ ''​Start''​ => ''​PuTTY''​ => ''​Pageant''​ Starting ''​Pageant'':​ ''​Start''​ => ''​PuTTY''​ => ''​Pageant''​
Line 20: Line 24:
   * It will seem that nothing happens when you start ''​Pageant'',​ but you should get the ''​Pageant''​ icon at the bottom right of your screen.\\ {{ :​other:​putty_01_notes_v2.png?​direct |}}   * It will seem that nothing happens when you start ''​Pageant'',​ but you should get the ''​Pageant''​ icon at the bottom right of your screen.\\ {{ :​other:​putty_01_notes_v2.png?​direct |}}
  
-  * If you right click on the ''​Pageant''​ icon, you can manage sessions with the ''​New Session''​ option, use ''​Saved Sessions''​ profiles and manage ​ //ssh keys// (''​View Keys'',​ ''​Add Key''​).\\ You can also view/add //ssh keys// by double clicking on the pageant ​icon\\ {{ :​other:​putty_02.png?​direct |}}+  * If you right click on the ''​Pageant''​ icon, you can manage sessions with the ''​New Session''​ option, use ''​Saved Sessions''​ profiles and manage ​ //ssh keys// (''​View Keys'',​ ''​Add Key''​).\\ You can also view/add //ssh keys// by double-clicking on the ''​Pageant'' ​icon\\ {{ :​other:​putty_02.png?​direct |}}
  
 ===== Configuring PuTTY ===== ===== Configuring PuTTY =====
Line 49: Line 53:
       * **Paste** text with the **middle button**\\ {{ :​other:​putty_05.png?​direct |}}       * **Paste** text with the **middle button**\\ {{ :​other:​putty_05.png?​direct |}}
   * In the ''​Window''​ => ''​Appearance''​ category:   * In the ''​Window''​ => ''​Appearance''​ category:
-    * You can **choose a font more readable than the default one**!\\ We recommend the **Cascadia Code** font that comes with the [[other:​win10apps#​windows_terminal|Windows Terminal]] application (which means that you first have to **install //Windows Terminal// first**, but you will probably need it anyway) +    * You can **choose a font more readable than the default one**!\\ We recommend the **Cascadia Code** font that comes with the [[other:​win10apps#​windows_terminal|Windows Terminal]] application (which means that you first have to **install //Windows Terminal// first**, but you will probably need it anyway)\\ IF //Windows Terminal// is not installed yet, you can select the modern **[[https://​en.wikipedia.org/​wiki/​Consolas|Consolas]]** font in the list of available fonts 
-    * Use the ''​Change...''​ button in the ''​Font settings''​ section, and select ''​Cascadia Code''​ and ''​Regular''​ (you can also experiment with styles different from ''​Regular'',​ and different font sizes)\\ {{ :​other:​putty_cascadia_font.png?​direct |}} {{ :​other:​putty_cascadia_styles.png?​direct |}}+    * Use the ''​Change...''​ button in the ''​Font settings''​ section, and select ''​Cascadia Code''​ and ''​Regular''​ (you can also experiment with styles different from ''​Regular'',​ and different font sizes), or ''​Consolas''​ and ''​Regular''​ or ''​Bold''​\\ {{ :​other:​putty_cascadia_font.png?​direct |}} {{ :​other:​putty_cascadia_styles.png?​direct |}}
   * In the ''​Connection''​ => ''​Data''​ category:   * In the ''​Connection''​ => ''​Data''​ category:
-    * 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_v2.png?​direct ​|}} 
 +    * You should also specify ''​xterm-256color''​ instead of the default ''​xterm''​ terminal type in the ''​Terminal-type string''​ field. This will allow you to display nicer colors in the terminals (for the applications that use fancy colors) 
 +      * You can later open a terminal and type ''​msgcat %%--%%color=test'',​ and check if you get something like\\ {{ :​other:​putty_256colors.png?​direct&​200 ​|}}
   * 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 70: Line 76:
 === New profile for a direct connection to a remote server === === New profile for a direct connection to a remote server ===
  
-  * Select an existing session (e.g. the [[#​creating_a_new_session|ssh1 profile]] defined above) and click on **Load**+  * Select an existing ​(and correctly configured) ​session (e.g. the [[#​creating_a_new_session|ssh1 profile]] defined above) and click on **Load**
   * Update the values of the **Host Name** and **Saved Session** (the name of the new profile you want) text fields, and settings   * Update the values of the **Host Name** and **Saved Session** (the name of the new profile you want) text fields, and settings
     * Example: connecting to **LSCE from INSIDE LSCE**\\ (inside <=> computer connected to the wired network):     * Example: connecting to **LSCE from INSIDE LSCE**\\ (inside <=> computer connected to the wired network):
       * ''​Host Name''​ => ''​obelix''​       * ''​Host Name''​ => ''​obelix''​
       * ''​Saved Session''​ => ''​obelix (direct connection)''​       * ''​Saved Session''​ => ''​obelix (direct connection)''​
-    * Example: connecting to [[https://​documentations.ipsl.fr/​MESO_User/Quick_start.html|ciclad]]: +    * Example: connecting to [[https://​documentations.ipsl.fr/​spirit/spirit_clusters/​head_nodes.html|spirit]]: 
-      * ''​Host Name''​ => ''​ciclad.ipsl.upmc.fr''​ +      * ''​Host Name''​ => ''​spirit1.ipsl.fr''​ 
-      * ''​Saved Session''​ => ''​ciclad''​ +        * <wrap em>​WARNING!</​wrap>​ You can only connect to spirit using a pair of //ssh keys//. Be sure to read the [[other:​putty_conf#​using_ssh_keys_with_putty_pageant|Using ssh keys with PuTTY/​Pageant]] section below 
-      * do not forget to **specify your ciclad ​login** in: ''​Connection''​ => ''​Data''​ => ''​Auto-login username''​ +        * You can also use ''​spirit2'',​ ''​spiritx1''​ or ''​spiritx2''​ depending on [[https://​documentations.ipsl.fr/​spirit/​spirit_clusters/​head_nodes.html|which IPSL server you want to access]] 
-      * you will also need an [[other:​putty_conf#​using_ssh_keys|ssh key]] if you want to connect to ''​ciclad''​ !! +      * ''​Saved Session''​ => ''​spirit1''​ 
-  * Go back to ''​Category''​ => ''​Session''​ and **Save** the session+      * do not forget to **specify your IPSL login** in: ''​Connection''​ => ''​Data''​ => ''​Auto-login username''​ 
 +  * Go back to ''​Category''​ => ''​Session''​ and <wrap em>**Save** the session</​wrap>​
  
 === New profile with a connection through a gateway === === New profile with a connection through a gateway ===
  
   * Select an existing //gateway// session (e.g. ''​ssh1''​) and click on **Load**.\\ For connecting to LSCE **from OUTSIDE LSCE**, select the [[#​creating_a_new_session|ssh1 profile]]\\ If you are at LSCE, but use the //eduroam// or the //guest// **WiFi network**, you are considered as being //outside LSCE//!   * Select an existing //gateway// session (e.g. ''​ssh1''​) and click on **Load**.\\ For connecting to LSCE **from OUTSIDE LSCE**, select the [[#​creating_a_new_session|ssh1 profile]]\\ If you are at LSCE, but use the //eduroam// or the //guest// **WiFi network**, you are considered as being //outside LSCE//!
-  * In the ''​Connection''​ => ''​SSH''​ category, specify the command used to connect to the target server in the **Remote command** field\\ e.g. **for LSCE**, use:+  * In the ''​Connection''​ => ''​SSH''​ category, specify the command used to connect to the target server ​from the //​gateway//, ​in the **Remote command** field\\ e.g. **for LSCE**, use:
     * ''​ssh -X -A obelix''​ (check the [[other:​ssh#​standard_usage|useful ssh options]] for more details on the options)\\ {{ :​other:​putty_10b.png?​direct |}}     * ''​ssh -X -A obelix''​ (check the [[other:​ssh#​standard_usage|useful ssh options]] for more details on the options)\\ {{ :​other:​putty_10b.png?​direct |}}
-  * Go back to ''​Category''​ => ''​Session'',​ <wrap hi>​specify a new profile name</​wrap>​ in **Saved Sessions** (e.g. ''​obelix via ssh1''​) and **Save** the session\\ {{ :​other:​putty_11.png?​direct |}}+  * Go back to ''​Category''​ => ''​Session'',​ <wrap hi>​specify a new profile name</​wrap>​ in **Saved Sessions** (e.g. ''​obelix via ssh1''​) and <wrap em>**Save** the session</​wrap>​\\ {{ :​other:​putty_11.png?​direct |}}
    
 ===== Daily usage of PuTTY/​Pageant ===== ===== Daily usage of PuTTY/​Pageant =====
Line 115: Line 122:
   * You can now connect to the remote server just by clicking on the desktop shortcut, instead of right-clicking on the ''​Pageant''​ icon!   * You can now connect to the remote server just by clicking on the desktop shortcut, instead of right-clicking on the ''​Pageant''​ icon!
  
-===== Using ssh keys =====+===== Using ssh keys with PuTTY/​Pageant ​=====
  
-Read the [[other:​ssh#​using_ssh_keys|Using ssh keys]] section if you don't know what //ssh keys// are+<WRAP center round alert 60%> 
 +In this section, we will use //key// files that have the same base name, and **different extensions**:​ e.g. ''​id_ed25519'',​ ''​id_ed25519**.pub**''​ and ''​id_ed25519**.ppk**''​ 
 + 
 +You should **make sure that you can [[other:​win10config#​displaying_hidden_folders_and_files_and_the_files_extension|see hidden folders, and files' extensions]]** before you go further! 
 +</​WRAP>​ 
 + 
 + 
 +Read the [[other:​ssh#​using_ssh_keys|Using ssh keys]] section if you don'​t ​already ​know what //ssh keys// are
 <WRAP center round important 80%> <WRAP center round important 80%>
   * **Do not lose** the (existing) ssh keys files you have, or the keys that you will create   * **Do not lose** the (existing) ssh keys files you have, or the keys that you will create
-    * It's a very good idea to **keep a copy of these files** on another computer!+    * It is recommended ​to **keep a copy of these files** on another computer!
  
   * **Do not forget** the passphrase that will be used to unlock the private key   * **Do not forget** the passphrase that will be used to unlock the private key
 +    * If you save the passphrase in a file, **do not** put this file in the same place as the ssh keys
 +    * Read [[other:​ssh#​some_common_sense_advice|Do not forget your passphrase!]] if you need some advice about passphrases
  
-  * If you save the passphrase in a file, **do not** put this file in the same place as the ssh keys +  * The best thing to do is probably to **store the //key// files in the standard ​[[other:ssh#configuration_files|ssh configuration directory]]** of each desktop/​laptop/​servers you use!
- +
-  * Easiest ​thing to do is probably to store the key files in an ''​ssh''​ sub-directory somewhere +
-    * We assume below that they keys are in a sub-directory of your [[other:win10config#the_most_important_folders|local HOME FOLDER]]\\ \\ <​some_disk_different_from_c>:​\Users\<​your_login>​\ssh\+
 </​WRAP>​ </​WRAP>​
 +==== Converting existing ssh keys with PuTTYgen ====
  
 +If you already have a private ssh key generated on another computer (e.g. an ''​id_ed25519''​ text file), you just have to use ''​PuTTYgen''​ to **import the existing private key**, and then export it to a //​converted//​ ''​id_ed25519.ppk''​ file that ''​Pageant''​ can use
  
 +  * Move the ''​id_ed25519''​ key file to the [[other:​ssh#​configuration_files|Windows ssh configuration directory]]
 +    * => ''​C:​\Users\your_windows_login\.ssh\id_ed25519''​
  
-Launching ​the ''​PuTTY Key Generator'':​ ''​Start''​ => ''​PuTTY''​ => ''​PuTTYgen''​+  * Launch ​the ''​PuTTY Key Generator'':​ ''​Start''​ => ''​PuTTY''​ => ''​PuTTYgen''​
  
-==== Converting existing ssh keys with PuTTYgen ====+  * Open the ''​Conversions''​=>''​Import key''​ menu\\ {{ :​other:​putty_21b.png?​direct&​300 |}}
  
-If you already have a private ssh keys generated on another computer (e.g. an ''​id_rsa''​ text file), you just have to use ''​PuTTYgen''​ to **import ​the existing ​private key**, and then export it to a //​converted// ​''​.ppk''​ file that ''​Pageant''​ can use +  ​Select ​the existing ''​id_ed25519'' ​private key file (or another valid private ​keyand type the passphrase ​to unlock and import it 
-  * Import the key (and type the passphrase, when asked) with: ''​Conversions''​=>''​Import key''​\\ {{ :​other:​putty_21.png?​direct&​300 |}} + 
-  * Then click on the ''​Save private key''​ button, and create ​''​id_rsa.ppk''​ file (or ''​any_name_you_want.ppk''​)\\ {{ :​other:​putty_22.png?​direct&​300 |}}+  * Click on the ''​Save private key''​ button, and create ​an ''​id_ed25519.ppk''​ file in the [[other:​ssh#​configuration_files|Windows ssh configuration directory]] 
 +    * => ''​C:​\Users\your_windows_login\.ssh\id_ed25519.ppk''​
  
 ==== Creating ssh keys with PuTTYgen ==== ==== Creating ssh keys with PuTTYgen ====
  
-If you don't have 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**
 + 
 +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: 
 + 
 +  * Launch the ''​PuTTY Key Generator'':​ ''​Start''​ => ''​PuTTY''​ => ''​PuTTYgen''​ 
 + 
 +  * 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 to access the [[https://​documentations.ipsl.fr/​spirit/​spirit_clusters/​head_nodes.html|IPSL servers]]
  
-  * Make sure that the type of key (at the bottom of the ''​PuTTYgen''​ window) is ''​RSA''​ and that the number of bits is ''​4096''​ 
   * 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&​400 |}} +    * 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 + 
-    * 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 +  ​* Click on the ''​Save private key''​ button, and create ​the ''​id_ed25519**.ppk**''​ **Pageant //private// key 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 Linux computer+    * We recommend that you save this file in the the Windows [[other:​ssh#​configuration_files|ssh configuration directory]]\\ => ''​C:​\Users\your_windows_login\.ssh\id_ed25519.ppk''​ 
 +    * 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 the ''​id_ed25519''​ **standard //private// key file** (a text file with **no** ​''​.ppk'' ​extension) 
 +    * => ''​C:​\Users\your_windows_login\.ssh\id_ed25519''​ 
 +    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 ​the ''​id_ed25519**.pub**''​ **standard //public// key file** 
 +    * => ''​C:​\Users\your_windows_login\.ssh\id_ed25519.pub''​ 
 +    * Save the content of the ''​Public key for pasting into OpenSSH authorized_keys file''​ field in the ''​id_ed25519**.pub**''​ file\\ Something looking like\\ <​code>​ssh-ed25519 AAAAC3NzaC1lZDI[... lots of characters ...]vwjLNmY eddsa-key-20230310</​code>​ 
 +    * This is the **//​public//​ key** that you will need to [[other:​ssh#​installing_ssh_keys|install]] on all the remote Linux server that you want to connect to using the ssh agent, instead of typing your password 
 + 
 +  * **WARNING!** Do **not** use the ''​Save public ​key'' ​button to create ​the public key file, because the resulting ​file will not be standard enough ​to be used directly ​on Linux computers
  
 ==== Using the private key in Pageant ==== ==== Using the private key in Pageant ====
other/putty_conf.1659535022.txt.gz · Last modified: 2022/08/03 13:57 by jypeter