A SSH, Telnet and Rlogin client featuring an xterm terminal emulator in order to provide an effective environment for advanced users.
- PuTTY
- License :MIT License
- OS :Windows All
- Publisher :Simon Tatham
PuTTY is a free, open-source terminal emulator used primarily for SSH (Secure Shell) connections to remote servers. It’s widely used by system administrators, developers, and anyone who needs to securely manage Linux/Unix servers from Windows.
🔑 What PuTTY Is Used For
- Securely connect to remote servers using SSH
- Run command-line tasks on remote Linux/Unix machines
- Connect via Telnet, rlogin, or raw TCP (less common)
- Generate and manage SSH key pairs for authentication
- Forward ports (SSH tunneling) for secure networking
✅ How to Use PuTTY
1. Download & Install
- Official website: https://www.chiark.greenend.org.uk/~sgtatham/putty/
- No installation required for the standalone
.exefile — just download and run
2. Connect to a Remote Server via SSH
- Open PuTTY
- In the Host Name (or IP address) field, enter your server’s address (e.g.,
example.comor192.168.1.10) - Make sure Port is set to
22(default for SSH) - Connection type should be set to SSH
- Click Open
3. Log In
- A terminal window opens, prompting you for your username (e.g.,
root,ubuntu,admin) - Then enter your password (note: it won’t show characters as you type, for security)
- You are now connected to your server’s command line
4. Using SSH Keys for Authentication
- Use PuTTYgen (PuTTY Key Generator) to create SSH key pairs (
.ppkfiles) - Steps:
- Run PuTTYgen (included in PuTTY package)
- Click Generate and move your mouse randomly to create randomness
- Save the private key (.ppk)
- Copy the public key and add it to your server’s
~/.ssh/authorized_keysfile
- In PuTTY, under
Connection > SSH > Auth, browse for your private key file before connecting
5. Basic PuTTY Features
| Feature | How to Access / Use |
|---|---|
| Save sessions | Enter host, then go to Session > Save |
| Load saved sessions | Select session > Load |
| Change font and colors | Window > Appearance |
| Enable SSH agent forwarding | Connection > SSH > Auth > Allow agent forwarding |
| Port forwarding (tunneling) | Connection > SSH > Tunnels |
| Logging session output | Session > Logging |
6. Port Forwarding Example
- Local port forwarding: Forward local port 8080 to remote server port 80
- In PuTTY, go to
Connection > SSH > Tunnels - Source port:
8080 - Destination:
localhost:80 - Click Add
- Now browsing to
localhost:8080routes through SSH tunnel to remote port 80
7. Copy & Paste
- Copy: Select text with mouse (copies automatically)
- Paste: Right-click in PuTTY window
⚙️ Advanced Usage
- Automate login with saved sessions and keys
- Run remote commands with Plink (command-line PuTTY)
- Use PuTTY with tools like WinSCP for file transfer + terminal access
🆚 PuTTY vs Other SSH Clients
| Feature | PuTTY | OpenSSH (Linux/macOS) | MobaXterm |
|---|---|---|---|
| GUI | Basic terminal | CLI | Advanced GUI + tools |
| SSH Key Management | Yes (via PuTTYgen) | Built-in | Built-in |
| Port forwarding | Yes | Yes | Yes |
| Multi-tab support | No (single session) | CLI | Yes |
| Built-in X11 server | No | Depends on setup | Yes |
