SSH-доступ по ключам (беспарольный доступ)

Под катом инструкция, как настроить беспарольный SSH-доступ между двумя машинами, используя открытый и закрытый ключи.

Предположим, что у нас есть comp1 и comp2, и нам нужно зайти с comp1 на comp2, при этом пользователь на первом компе – user1, на втором компе – user2.
1. Сначала нужно создать пару ключей на comp1:

user1@comp1$ ssh-keygen -t dsa
Generating public/private dsa key pair.
Enter file in which to save the key (/home/user1/.ssh/id_dsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /home/user1/.ssh/id_dsa.
Your public key has been saved in /home/user1/.ssh/id_dsa.pub.
The key fingerprint is:
9b:b5:1b:e0:1f:d2:ac:45:6c:4a:aa:71:5b:f6:10:00 user1@comp1
The key's randomart image is:
+--[ DSA 1024]----+
|    E            |
|     .           |
|      .          |
|       . .       |
|        S =      |
|       + % .     |
|    . o X B      |
|     + + B +     |
|    . . . +      |
+-----------------+

Вместо DSA можно использовать алгоритм RSA (опция -t rsa), однако он менее надежный.
2. Теперь нужно дописать содержимое публичного ключа id_dsa.pub в файл authorized_keys на втором компьютере:

user1@comp1$ scp ~/.ssh/id_dsa.pub user2@comp2:/home/user2/.ssh/id_dsa.pub
Password:
user1@comp1$ ssh user2@comp2
Password:
user2@comp2$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
user2@comp2$ rm ~/.ssh/id_dsa.pub
user2@comp2$ logout
Connection to comp2 closed.

3. Вуаля – пароль не спрашивается:

user1@comp1$ ssh user2@comp2
user2@comp2$

Похожие статьи

6 thoughts on “SSH-доступ по ключам (беспарольный доступ)”

  1. Спасибо. Раньше хотелось это реализовать, но гуглить было совсем лень 🙂

  2. Запускаю свой скрипт, соединение прошло успешно, но с офисом не соединился для связи использую данную строку:
    echo “Соединяемся с сервером … ”
    COMA_START_FUSE=’sshfs ‘$NAME_USER’@###.###.###.###:/home/user/change /home/’$NAME_USER’/change -o nonempty’
    # echo $COMA_START_FUSE
    if !(test -d /home/$NAME_USER/change/magtest) ;then
    if ! ( $COMA_START_FUSE ) ; then
    my_kill
    err_connect
    fi
    fi

    в этом месте скрипт с начало встал, подождал минут 10, вырубил терминал;
    запустил еще раз на выполнение, интернет подключился опять;
    дальше он мне выдал connect reset by peer, не вопрос перезапустим)- все родной для только для тебя);
    запустил еще раз на выполнение, интернет подключился опять, жду 10 минут все стоит на одном месте..

    Ладно идем дальше:
    подключаем через терминал интернет^
    ifup ppp0
    все завелось
    подключаемся через ssh
    ssh user@IP-адрес —- ключи в директории клиента (/home/user/.ssh/id_rsa.pub) и на сервере(home/user/.ssh/authorized_keys)присутствуют..

    Запустил так еще раз
    ssh -v user@IP-адрес (-v ключ что бы видеть детально подсоединение)
    Либо сразу пишет Connection closed by “мой ip”, либо запрашивает пароль, ввожу и опять Connection closed by “мой ip”, хотя не должен же, ключи присутствуют..
    Да и еще 1 нюанс ip-ник к которому подсоединяюсь это статический адрес–естественно при конекте он с начало заходит на модем, а потом уже на мой сервер убунты, но проброску порта сделана норм.
    В чем проблема?

  3. Почему то у меня не работает ни cat ни scp. Получаю разные ошибки. Просто вообще не работает. Почему это так сложно?? я не понимаю. Какое то дерьмо и такое оказывается сложное. это пиздец. Пацаны, посоветуйте мне институт нормально выучить это.

  4. Thanks for some other fantastic post. The place else may anybody get that kind of info in such an ideal approach
    of writing? I’ve a presentation next week, and I am on the search for
    such information.

  5. Simply wish to say your article is as surprising. The clearness
    to your submit is simply cool and i could think you are a professional in this subject.
    Fine along with your permission allow me to grab your feed to
    stay updated with impending post. Thanks 1,000,000 and please continue the gratifying work.

  6. I relish, result in I discovered just what I was taking a
    look for. You’ve ended my 4 day lengthy hunt! God Bless you man. Have a nice day.
    Bye

Leave a Reply

Your email address will not be published. Required fields are marked *