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.
For ssh you can use sshpass : sshpass -p yourpassphrase ssh user@host .
Combining the use of SSHPASS and SSH to access a remote server, router, or firewall gets rid of unnecessary two-liner commands that lead to an additional password entry prompt. It makes your remote access to other Linux environments faster and efficient.
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
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With