Быстрое подключение по ssh во FreeBSD

Автор: Dark

Всем понятно, что под root-ом работать нехорошо. Но тем не менее, когда речь касается сервера попробуй-ка внеси какие-нибудь изменения от непривелигированного пользователя. А root-у доступ по ssh запрещен. То есть процедура входа выглядит так:

1. Подключаемся от имени user, входящего в группу wheel, вводим пароль.

2. Делаем su, вводим пароль.

Поскольку трудноподбираемый пароль начинается хотя бы от 7 символов (буквы + цифры), а лучше больше, то в итоге имеем при подключении через тот же putty:

1. ввод логина - 4 символа

2. ввод пароля - 8 символов

3. su - 2 cимвола

4. пароль root-a - 10 символов

Итого, в среднем 24 символа на подключение, где мы не имеем права ошибиться ни разу... Удобно? Мне не очень. Но и рисковать, применяя примитивные пароли, тоже не хочется.

Помогут нам сертификаты. Здесь есть два варианта:

1. подключение через shell

2. подключение через putty

Дело в том, что при этих подключениях используются разные сертификаты не подходящие друг к другу. А сертификат может быть только один.

Поскольку putty есть и под линукс, и под виндовс, решено было использовать сертификаты под putty.

У putty в полном комплекте идет софтина по генерированию сертификатов. Вот и генерируем. Получается два файла, один кладем в ~/.ssh/authorized_keys2, а второй прописываем в putty (Connection/SSH/Auth - в разделе Private key file for autentication), путь к второму файлу rsa-key.priv.ppk. Также в putty настраиваем (Connection/Data - в поле Auto-login username) имя для автологина user.

После сохранения настроек подключаемся к серверу и... Ура! Мы залогинились сразу же. Не нажимая ни одной клавиши. Этот метод достаточно безопасен, он не подвержен проблемам безопасности классического ввода паролей: клавиатурного шпиона или подглядывающего за спиной хакера. Но достаточно будет украсть файл сертификата, что иногда проще, чем подсмотреть пароль или установить клавиатурного шпиона, и вся понятие безопасности сразу же исчезнет. Во всяком случае пока вы не поменяете пару ключей. Делайте это для профилактики хотя бы раз в месяц.

Итак половина проблемы решилась. Рекомендуется использовать sudo вместо su. Согласен, но каждый раз вводить пароль (рута или пользователя - не важно) не удобно. Тогда в файле /usr/local/etc/sudoers надо раскомментировать строчку:

%wheel ALL=(ALL) NOPASSWD: ALL

Таким образом мы позволяем всем входящим в группу wheel использовать sudo без пароля вообще. Опять же небольшая уязвимость в безопасности, но в группу wheel не надо ставить кого попало. Пользователи, входящие в эту группу, и так должны знать пароль root, иначе нечего им там делать.

Ну а дальше:

root@localhost# echo "sudo -i" > /usr/local/bin/su2 && chown root:wheel /usr/local/bin/su2 && chmod 750 /usr/local/bin/su2

Созданный файл /usr/local/bin/su2 позволит нам перейти в рута просто набрав su2 в командной строке. Итак, 24 символа против трех. Получается некий турбовход в систему под рутом, без существенной угрозы безопасности.

Последнее изменение: понедельник, 29 октября 2007 г. 14:23:56

http://www.ounix.ru/index.php?page=article&id=13

Обновлено: 12.03.2015