Saving your PuTTY username and password in a Windows Shortcut

Saving your PuTTY username and password in a Windows Shortcut

Last updated on

In this guide we will create a Windows shortcut which will store our PuTTY session information so that we don’t have to enter the username and password every time we log in. If you haven’t already installed PuTTY, you can download it from

1. Create Windows Shortcut

Begin by creating a Windows Shortcut.

Right-click the Desktop, select New and Shortcut.

Click Browse and navigate to the PuTTY folder.
It’s usually located in C:\Program Files\PuTTY or C:\Program Files (x86)\PuTTY

Select putty.exe, click OK and Next.
Enter a name for you shortcut. e.g. LinuxServer and click Finish.

2. Edit Shortcut

Right-click on your new shortcut and click Properties.

Take note of the Target field. It shows the path to putty.exe in Program Files. We are going to add a switch to this.

After the double quotes, paste in the following

-ssh [email protected] -pw PaSsWoRd

Replace john with your username, with your server IP and PaSsWoRd with your own password.

The Target field should now look something like this. (Your path may differ depending on where putty.exe is installed.)

"C:\Program Files\PuTTY\putty.exe" -ssh [email protected] -pw PaSwOrD

Click OK and you’re done!

Now when you double-click the shortcut it will bring you straight into your Linux server without having to enter username or password.

Consider Key-based Authentication

Storing your password in a Windows shortcut is not very secure though, is it? 🤫

As well as offering additional security, SSH key authentication can be more convenient than the more traditional password authentication. SSH keys can allow you to connect to a server, or multiple servers, without having to remember or enter your password for each system.

Disable Sudo Password Prompt or Extend Timeout in Linux

Every time you issue a sudo command, Linux asks for your user password after a certain inactivity timeout, usually 5 minutes. This is the recommended behaviour to prevent unauthorised commands being run by someone or a malicious script in your absence. However, this requirement can be disabled per session or permanently, or you can extend the inactivity timeout.

VNC via a PuTTY SSH Tunnel

If you’re using Ubuntu, I’ve written a guide for installing a VNC server and connecting to it through a secure SSH Tunnel using PuTTY. 😎

Xfce default Desktop via VNC

Let me know in the comments if this helped. Follow me on Twitter, Facebook and YouTube.

p.s. I increased my AdSense revenue by 68% using AI 🤖. Read my Ezoic review to find out how.

1 Star2 Stars3 Stars4 Stars5 Stars 5.00 (5 votes)

Leave a Reply

Your email address will not be published. Required fields are marked *

We use Markdown to style comments, like on Github and Reddit.
To do a line break, type two spaces after the sentence.
You can add inline code by wrapping it in backticks: `code here`

    To do an entire block of code  
    type four spaces before the line
    and it will appear in a block like this.
    <-- four empty spaces

18 replies

I would like to enter my session (“Cole”) details (user name “ME”, password “234”); then on the next screen enter my details (user name “ME”, password “567”). then with the same defined pages, enter there parameters and set to download in excel (3 pages in total) using excel vba.
is this possible?

You can use the -m and -t switches, and a simple text file containing your commands.

Target example:

"C:\Program Files\PuTTY\putty.exe" -ssh [email protected] -pw PasSwOrD -m "C:\Users\john\Desktop\cmd.txt" -t

In cmd.txt, add your command. We also need to run /bin/bash to start the shell:

cd /var/www ; /bin/bash

-m instructs PuTTY and the SSH server to run a command instead of a shell. That’s why we have to use -t override to force PuTTY to start the shell, and /bin/bash in cmd.txt to force the SSH server to also start the shell.

I can get the login part to work just fine – but as soon as I add the -m "C:\Users\john\Desktop\cmd.txt" -t part the shortcut can’t login. The putty is just waiting for me to enter the password manually – any advice?

You may have to escape some special characters such as " with a single backslash \.

For example, if your password is 1234"1234, then your target will be:

"C:\Program Files\PuTTY\putty.exe" -ssh [email protected] -pw 1234\"1234

Thank you for this. I had a profile setup with custom colors and font, is there a way to use this saved name/password with the custom colors/font?

There is no command line switch for font style that I know of but you can instead save a PuTTY session with your IP, username and font preference, and then load the session with password using:

"C:\Program Files\PuTTY\putty.exe" -load "session_name" -pw PaSwOrD

I’ve just tested this and it works.