[OT] SSH login script - Help

Sharpe, Sam J sam.sharpe+lists.redhat at gmail.com
Fri Apr 24 10:16:04 UTC 2009


Dan Track wrote:
> 2009/4/24 Manuel Aróstegui <manuel at todo-linux.com>:
> > On Fri, 2009-04-24 at 10:12 +0100, Dan Track wrote:
> >> Hi Guys,
> >>
> >> I've written a simple for loop see below:
> >>
> >> for i in orion earth;do scp /etc/hosts /etc;done
> >>
> >> I have a small scripting knowledge so would appreciate some help. What
> >> I'd like to do is somehow change the above so that the script prompts
> >> me for a password and when I give the script the password it will use
> >> it to auto-reply to any password promtps that scp asks for when
> >> logging into all the servers. If I am right I believe readline needs
> >> to be used. If it can't be done in bash can you give me a perl
> >> alternative please.
> >>
> >> Thanks for your help.
> >>
> >> Dan
> >>
> > Hi Dan,
> >
> > You might want to use autoexpect for that.
> >
> > This can get you in security problems since you'd need to write your
> > password in the script, but as long as you use user and groups perms
> > correctly you should kinda safe.
> >
> > Manuel.
> >
> Hi Manuel,
>
> Thankyou for your suggestion, is there any chance of getting the above
> scripted by yourself. I've never used autoexpect before. I appreciate
> the advice anyway.
If security is not a concern, write a simple script that accepts the 
password and provides it to sshpass (which isn't packaged for Fedora as 
it's a huge huge security nightmare): http://freshmeat.net/projects/sshpass/

e.g.:
[sam at sam ~]$ export SSHPASS=mypass
[sam at sam ~]$ sshpass -e ssh unixdb2-vm
[sam at unixdb2-vm ~]$

In your case, you'd want something like "sshpass -e scp /etc/hosts 
orion:/etc/"

--
Sam




More information about the fedora-list mailing list