How to enter ssh password using bash?

Prostak picture Prostak · Jun 4, 2013 · Viewed 401.9k times · Source

Everyday I am connecting to a server through ssh. I go through this routine:

IC001:Desktop user$ ssh [email protected]
[email protected]'s password: 

Last login: Tue Jun  4 10:09:01 2013 from 0.0.0.0
$

I would like to automate this process and create a bash script to do it for me. I don't care about security and okay to store my password openly in the script. I am also okay for it to get typed openly on the screen while the script gets executed. So I've created this:

#!/bin/bash          
ssh [email protected]
echo mypassword

But it doesn't work. I've also tried send instead of echo, but it also didn't work. Please advise if it is possible to do.

Answer

michas picture michas · Jun 5, 2013

Double check if you are not able to use keys.

Otherwise use expect:

#!/usr/bin/expect -f
spawn ssh [email protected]
expect "assword:"
send "mypassword\r"
interact