Wireless Hacks. 1917 IndustrialStrength Tips and Tools [Electronic resources] نسخه متنی

اینجــــا یک کتابخانه دیجیتالی است

با بیش از 100000 منبع الکترونیکی رایگان به زبان فارسی ، عربی و انگلیسی

Wireless Hacks. 1917 IndustrialStrength Tips and Tools [Electronic resources] - نسخه متنی

Rob Flickenger

| نمايش فراداده ، افزودن یک نقد و بررسی
افزودن به کتابخانه شخصی
ارسال به دوستان
جستجو در متن کتاب
بیشتر
تنظیمات قلم

فونت

اندازه قلم

+ - پیش فرض

حالت نمایش

روز نیمروز شب
جستجو در لغت نامه
بیشتر
لیست موضوعات
توضیحات
افزودن یادداشت جدید










Hack 95 "Turbo-Mode" SSH Logins


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.


/ 158