Even faster logins from the command line.
If you’ve just come
from the previous two hacks,
you’ve only seen half of the solution! Even with
client keys, you still have to needlessly type SSH server
every time you want to SSH in. Back in the dark,
insecure, unenlightened days of rsh, there was an obscure feature
that I happened to love, which hasn’t (yet) been
ported to SSH. It used to be possible to symlink
/usr/bin/rsh to a file of the same name as your
server. rsh was smart enough to realize that if it
wasn’t called as rsh, that it should rsh to whatever
name it was called as.
Of course, this is trivial to implement in shell. Create a file
called SSH-to
with these two lines in it:
#!/bin/sh ssh `basename $0` $*
(Those are backticks around basename $0
.) Now put
that in your PATH (if ~/bin
doesn’t exist or isn’t in your PATH
already, it should be) and set up symlinks to all of your favorite
servers to it:
$cd bin
$ln -s ssh-to server1
$ln -s ssh-to server2
$ln -s ssh-to server3
Now, to SSH to server1
(assuming
you’ve copied your public key over as just
described), simply type server1
and
you’ll magically end up with a shell on
server1
, without typing
ssh
, and without entering your password. That
$*
at the end allows you to run arbitrary commands
in a single line (instead of spawning a shell), like this:
server1 uptime
This will simply show the uptime, number of users, and load average
on server1
, then exit. Wrap it in a
for
loop and iterate over a list of servers to get
a pinpoint status of all of your machines.
I believe that this is the quickest way to use SSH, short of setting up single character aliases to do it for you (which is excessively hackish, unmaintainable, and unnecessary, although it does seem to impress some people):
$alias a='ssh alice'
$alias b='ssh bob'
$alias e='ssh eve'
...
At any rate, SSH has many options that make it a very flexible tool for securely navigating between any number of servers. Now if we can just find a way to make it log in and actually fix the machine for you, we’d have a real hack.
18.222.69.152