понедельник, июня 30, 2008

Вот подробная инструкция, как обеспечить беспарольный доступ с машин l2.l и l3.l на машину l1.l. (Имена машин взяты для примера). Аналогично обощается на любое количетсво машин в любых комбинациях.

  1. На всех машинах надо взаимно прописать все host-ключи машин:

    for host in l1.l l2.l l3.l ; do ( cat /etc/ssh/ssh_known_hosts ; ssh-keyscan -t rsa1,rsa,dsa $host ) > /tmp/a ; sort -u /tmp/a > /etc/ssh/ssh_known_hosts ; rm -f /tmp/a ; done

  2. На стороне сервера (в моем примере, это машина l1.l) дополнительно нужно разрешить Hostbased authentication и заполнить файл /etc/ssh/shosts.equiv. Для этого в файле /etc/ssh/sshd_config нужно добавить или отредактировать строчку:

    HostbasedAuthentication yes

    И добавить в файл /etc/ssh/shosts.equiv записи о клиентских машинах (в моем случае l2.l и l3.l):

    for host in l2.l l3.l ; do echo $host >> /etc/ssh/shosts.equiv ; done

  3. На стороне клиента (в моем примере это машины l2.l и l3.l) дополнительно нужно разрешить использование hostbased authentication. Для этого нужно отредактировать файл /etc/ssh/ssh_config. Необходимо отредактировать или создать запись для Host * приблизительного следующего содержания, значения остальных параметров для Host * можно не менять:

    Host *
    HostbasedAuthentication yes
    EnableSSHKeysign yes

  4. После этого необходимо перезапустить ssh-сервер на сервере, и можно пользоваться.

This page is powered by Blogger. Isn't yours?