Automate your SSH logins with this .bat script for your private network.
Tags: devops, ssh, automation, windows
Published: 2022-02-10 09:45:05

## If you're work requires a lot of interactions with private servers, this might come handy.

`A simple bash script to automate your login process, really handful for backend-devs or Dev-Ops engineers`.

## Let's get into it 

### Requirement :
putty.exe 
"PuTTY" is open source software that is available with source code and is developed and supported by a group of volunteers. You can download PuTTY [here](https://www.putty.org/)].

> I'm presenting scripts in 3 ways, use what suits your need best. All these scripts are available [here](https://github.com/rahulnegi20/Automate-ssh-logins).

## Three ways

### 1. Single server login

> This is the best method if you have mostly or only used one server, this is just one click away method.

```
@echo off
@REM Use this if you have single server to login only, provide your sysyem address to puty.exe below.

@REM Provide your system's address to the putty.exe here
set putty="C:\Program Files\PuTTY\putty.exe

@REM Provide your username@address here
set id=eclairs@192.xxx.xx.174

@REM Provide your password here
set password=passwrd@123

%putty% -pw %password% %id%

@echo 
```
### 2. Enter the last three digits to your address. 

> This method is helpful if you have multiple machine in same network, you can just enter last three digits of the address.

```
@echo off
@REM Enter last three number of your server's IP address only to login.

@REM Provide your system's address to the putty.exe here
set putty="C:\Program Files\PuTTY\putty.exe

@REM Provide your username@address here
set id=eclairs@192.xxx.xx.174

@REM Provide your password here
set password=passwrd@123

set /p id="Enter the suffix of IP Address you want to login: "
%putty% -pw %password% %id%

@echo 
```

### 3. Just enter a number .

> This is the best method if you have multiple logins, you can just create a hash-map type relation.

Example:

![Automate ssh logins for your private network](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/c9qghefbewe4vull5cfd.png)

```
@echo off
@REM Provide your username@address here
set id1=hello@192.168.xx.145
set id2=candy@192.xxx.xxx.173
set id3=eclairs@192.xxx.xx.174

@REM Provide your password here
set password1=passwrd@123
set password2=mypassword@123
set password3=mypassword@123

echo 1 : %id1%
echo 2 : %id2%
echo 3 : %id3%

set /p id="Enter Number to the Address you want to login: "

@REM Provide your system's address to the putty.exe here
set putty="C:\Program Files\PuTTY\putty.exe"

if %id%==1 %putty% -pw %password1% %id1%
if %id%==2 %putty% -pw %password2% %id2%
if %id%==3 %putty% -pw %password3% %id3%

@echo
```
That's it for now, though I want to mention one important thing which is, 
**If you're desktop has multiple users, it is advisable to not store your password in the script instead use this to take input manually.**

`set /p password="Enter password: "`

```
@echo off

@REM Provide your system's address to the putty.exe here 
set putty="C:\Program Files\PuTTY\putty.exe

@REM Provide your username@address here
set id=eclairs@192.xxx.xx.174

set /p password="Enter password: " 
%putty% -pw %password% %id%

@echo 
```
I know it kills the half the fun of automation but still security is must.

Open to feedback and suggestions.
_Thanks :') for reading._