Difference between revisions of "SSH"
m (→Automatically saying "yes" (NOT WORKING PROPERLY)) |
m (→Automatically saying "yes" (NOT WORKING PROPERLY)) |
||
Line 29: | Line 29: | ||
You can include it in a bash script to iterate over all nodes doing this: | You can include it in a bash script to iterate over all nodes doing this: | ||
− | |||
for i in `uniq hostfile` ; do | for i in `uniq hostfile` ; do | ||
./say-yes.exp $i | ./say-yes.exp $i |
Revision as of 00:51, 26 June 2010
Contents
Passwordless SSH
To set up passwordless SSH, there are three main things to do:
- generate a pair of public/private keys on your local computer
- copy the public key from the source computer to the target computer's authorized_keys file
- check the permissions.
You can repeat that transitively for "A->B->C". You can use the initial pair of keys everywhere.
See here for details:
http://www.stearns.org/doc/ssh-techniques.current.html
Automatically saying "yes" (NOT WORKING PROPERLY)
This expect script automates typing "yes" when asked by SSH if a host should be added to known_hosts
#!/usr/bin/expect -f set arg1 [lindex $argv 0] set timeout 2 spawn ssh $arg1 expect "yes/no" { send "yes\n" send "exit\n" } send "exit\n" send "\r"
You can include it in a bash script to iterate over all nodes doing this:
for i in `uniq hostfile` ; do ./say-yes.exp $i done
Making a cascade of SSH connections easy
Here is a very convenient way to set up the access to any machine directly instead of doing a cascade of SSH calls. If you can not directly access e.g. the machine "heterogeneous", but you can log into "csserver" and then to "heterogeneous", you can put this into your .ssh/config file :
Host csserver User kdichev Hostname csserver.ucd.ie Host heterogeneous User kiril Hostname heterogeneous.ucd.ie ProxyCommand ssh -qax csserver nc %h %p
Since the installation of a new PBS system, you can not directly log into a hclXX node. You can do
ssh heterogeneous
instead and use "qsub"
X11 forwarding
ssh -X hostname