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 09:18] jypeter [Launching PuTTY/Pageant] Improved |
other:putty_conf [2022/08/03 13:57] jypeter [Creating ssh keys with PuTTYgen] Added the 'Using the private key in Pageant' section |
||
---|---|---|---|
Line 15: | Line 15: | ||
Starting ''Pageant'': ''Start'' => ''PuTTY'' => ''Pageant'' | Starting ''Pageant'': ''Start'' => ''PuTTY'' => ''Pageant'' | ||
- | * ''Pageant'' is an [[other:ssh#using_an_ssh_agent|ssh agent]] for Windows, but we explain here how to use it for easily creating and using //Sessions// (to connect to remote Linux servers) | + | * ''Pageant'' is an [[other:ssh#using_an_ssh_agent|ssh agent]] for Windows, but this page also explains how to use it for easily creating and using connection profiles (aka //Sessions//) to connect to remote Linux servers |
- | * Some applications (e.g. [[other:win10apps#winscp|WinSCP]]) will automatically try to use ''Pageant'' if it is running and configured properly | + | * Some applications (e.g. [[other:win10apps#winscp|WinSCP]]) will automatically try to use ''Pageant'' as an //ssh-agent//, instead of asking you to type your [[other:putty_conf#using_ssh_keys|ssh passphrase]] |
- | * 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 |}}\\ ''Pageant'' will allow you to create or use existing connection profiles (//Sessions//), and also easily use [[other:putty_conf#using_ssh_keys|ssh keys]] | + | * 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 |}} | ||
Line 24: | Line 24: | ||
===== Configuring PuTTY ===== | ===== Configuring PuTTY ===== | ||
- | Launch the PuTTY Configuration manager: (Right click on) ''Pageant'' => ''Saved Sessions'' or ''New Session''\\ {{ :other:putty_03.png?direct&300 |}} | + | Launch the PuTTY Configuration manager: (Right click on) ''Pageant'' => ''New Session''\\ {{ :other:putty_03.png?direct&300 |}} |
- | * You can keep most PuTTY's default settings. This section will show you how to create your first //session profile//, with some **recommended options**.\\ \\ If you want to add another session later, just ''Load'' an existing (and properly configured) session, ''Save'' it under a new name, change the session details, and then save the session again | + | * You can keep most PuTTY's default settings. This section will show you how to create your first //session profile//, with some **highly recommended options**.\\ \\ If you want to add another session later, just ''Load'' an existing (and properly configured) session, ''Save'' it under a new name, change the session details, and then save the session again. |
- | * When changing a setting, select a (sub-)**Category in the left part** of the PuTTY Configuration window, and change the displayed **settings in the right part** of the window. | + | * When changing a setting, select a (sub-)**Category in the left part** of the ''PuTTY'' Configuration window, and change the displayed **settings in the right part** of the window. |
- | + | ||
- | * After changing the settings of an existing Session, **do not forget to go back to the //Session// category (at the top left of the Putty Configuration window) and click ''Save''!** | + | |
+ | * <wrap hi>After changing the settings of an existing Session, **do not forget to go back to the //Session// category (at the top left of the Putty Configuration window) and click ''Save''!** | ||
+ | </wrap> | ||
==== Creating a new session ==== | ==== Creating a new session ==== | ||
Line 49: | Line 49: | ||
* **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) |
* 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)\\ {{ :other:putty_cascadia_font.png?direct |}} {{ :other:putty_cascadia_styles.png?direct |}} | ||
* In the ''Connection'' => ''Data'' category: | * In the ''Connection'' => ''Data'' category: | ||
Line 62: | Line 62: | ||
* 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 |}} | ||
- | * Click on ''Open'' to connect to the default host with the default settings, and check that things are working properly\\ The first time you connect to a server, you will get a ''PuTTY Security Alert'' window, where you have to click on ''Accept'' to tell PuTTY that you trust the connection to this new server\\ {{ :other:putty_new_host.png?direct |}} | + | * Click on ''Open'' to connect to the specified host with the updated settings, and check that things are working properly\\ The first time you connect to a server, you will get a ''PuTTY Security Alert'' window, where you have to click on ''Accept'' to tell PuTTY that you trust the connection to this new server\\ {{ :other:putty_new_host.png?direct |}} |
- | ==== Adding more sessions ==== | + | ==== Adding more connection profiles ==== |
[[other:putty_conf#launching_putty_pageant|Start Pageant]], and then the //PuTTY Configuration manager//: (Right click on) ''Pageant'' => ''New Session'' | [[other:putty_conf#launching_putty_pageant|Start Pageant]], and then the //PuTTY Configuration manager//: (Right click on) ''Pageant'' => ''New Session'' | ||
- | === 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 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 | ||
- | * connecting to **LSCE from INSIDE LSCE**: | + | * 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)'' | ||
- | * connecting to [[https://documentations.ipsl.fr/MESO_User/Quick_start.html|ciclad]]: | + | * Example: connecting to [[https://documentations.ipsl.fr/MESO_User/Quick_start.html|ciclad]]: |
* ''Host Name'' => ''ciclad.ipsl.upmc.fr'' | * ''Host Name'' => ''ciclad.ipsl.upmc.fr'' | ||
* ''Saved Session'' => ''ciclad'' | * ''Saved Session'' => ''ciclad'' | ||
Line 82: | Line 82: | ||
* Go back to ''Category'' => ''Session'' and **Save** the session | * Go back to ''Category'' => ''Session'' and **Save** the session | ||
- | === Connection through a gateway === | + | === New profile with a connection through a gateway === |
- | * Select an existing //gateway// session 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 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 |}} | ||
Line 113: | Line 113: | ||
* ''%%"C:\Program Files\PuTTY\putty.exe" -load "obelix (direct)"%%'' | * ''%%"C:\Program Files\PuTTY\putty.exe" -load "obelix (direct)"%%'' | ||
* Click **OK** to save the changes | * Click **OK** to save the changes | ||
- | * 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 ===== | ||
Read the [[other:ssh#using_ssh_keys|Using ssh keys]] section if you don't know what //ssh keys// are | Read the [[other:ssh#using_ssh_keys|Using ssh keys]] section if you don't know what //ssh keys// are | ||
- | ==== Existing ssh keys ==== | + | <WRAP center round important 80%> |
+ | * **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! | ||
+ | |||
+ | * **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 | ||
+ | |||
+ | * 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> | ||
+ | |||
+ | |||
+ | |||
+ | Launching the ''PuTTY Key Generator'': ''Start'' => ''PuTTY'' => ''PuTTYgen'' | ||
+ | |||
+ | ==== Converting existing ssh keys with PuTTYgen ==== | ||
+ | |||
+ | 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 | ||
+ | * 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 a ''id_rsa.ppk'' file (or ''any_name_you_want.ppk'')\\ {{ :other:putty_22.png?direct&300 |}} | ||
- | ==== Importing or creating ssh keys with PuTTYgen ==== | + | ==== Creating ssh keys with PuTTYgen ==== |
- | * Launch the PuTTY Key Generator:\\ ''Start'' => ''PuTTY'' => ''PuTTYgen'' | + | If you don't have a set of ssh keys, follow the steps below to **create private and public keys** |
- | * If you already have a private ssh keys generated on another computer, ''id_rsa'', you just have to use PuTTYgen to **import the private key**, and save it to a ''.ppk'' file that ''Pageant'' can use | + | * Make sure that the type of key (at the bottom of the ''PuTTYgen'' window) is ''RSA'' and that the number of bits is ''4096'' |
- | * Import the key (and type the passphrase, when asked) with: ''Conversions''=>''Import key''\\ {{ :other:putty_21.png?direct&300 |}} | + | * Click on the ''Generate'' button and move your mouse to generate some random information |
- | * Then click on the ''Save private key'' button, and create a ''id_rsa.ppk'' file (or ''any_name_you_want.ppk'')\\ {{ :other:putty_22.png?direct&300 |}} | + | * 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 |}} | ||
+ | * 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 ''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 | ||
- | * If you don't have a set of ssh keys, follow the steps below to **create private and public keys** | + | ==== Using the private key in Pageant ==== |
- | * 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 | + | |
- | * 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 |}} | + | |
- | * Click on the ''Save public key'' button, and create a ''id_rsa.pub'' 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 | + | |
+ | 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 */ |