PuTTY: Безопасный вход на сервер FreeBSD по SSH без пароля

У моего бывшего начальника под руководством несколько серверов на FreeBSD. Каждый раз, ковыряясь с ними, мне приходилось вводить логин и пароль. Делал я это не каждый день, но если получал «тревожный» звонок от него, то я мог зависнуть в консоли надолго, а главное по несколько раз в день. Чтобы каждый раз не вводить цепочку логин-пароль, я решил добавить свой комп в доверенные.
1. Из комплекта PuTTY запускаем файл puttygen.exe.
2. Нажимаем на кнопку «Generate»:

3. Далее нужно водить в окне программы мышкой до тех пор, пока шкала прогресса не дойдет до конца:

4. На поле с ключом нажимаем правую кнопку мыши и выбираем «Select All», будет выделен весь текст ключа, после чего копируем его в буфер обмена:

В этом случае ключ копируется БЕЗ символов перевода каретки и новой строки, так что файл на сервере будет отличатся от сохраненного приватного ключа!

5. Будет создана пара ключей шифрования, сохраняем приватный ключ:

6. Нажимаем на кнопку «Save private key» (На запрос о сохранении БЕЗ пароля отвечаем утвердительно):

7. Сохраняем его на компьютере где-нибудь в папке Documents, например:
«C:\Users\Denis\Documents\PuTTY\SERVER_NAME_privatekey.ppk»
8. На всякий случай можно также сохранить файл публичного ключа (потом его можно будет удалить).
9. Закрываем окно утилиты puttygen.exe

10. Теперь запускаем Putty.exe и логинимся как обычно на сервер FreeBSD под тем пользователем, для которого нужен логин без запроса пароля.
11. Переходим в папку .ssh в домашней директории.
12. Создаем текстовый файл authorized_keys
13. Вставляем в этот файл скопированный на шаге 4 текст и сохраняем файл.
14. На папку назначаем права только для владельца, после чего с сервера можно выходить:

# chmod -R 700 .ssh/

или

# chmod go-rwx ~/.ssh

15. Можно создать новую сессию или загрузить старую, чтобы ее изменить:
PuTTY Configuration -> Connection -> Data
16. Задаем логин:

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

17. Переходим на следующую настройку:
PuTTY Configuration -> Connection -> SSH -> Auth
18. Нажимаем на кнопку «Browse…» и выбираем сохраненный в п.5 приватный ключ:

19. Переходим в раздел Сессии:
PuTTY Configuration -> Session
20. Вводим данные (адрес сервера, порт и т.п.), название сессии и сохраняем ее:

21. Теперь можно залогиниться гораздо быстрее и безопаснее, чем с простым паролем:

Using username "root".
Authenticating with public key "rsa-key-20170928"
Last login: Thu Sep 28 12:22:06 2017 from broadband-xxx-xxx-xxx-xxx.moscow.rt.ru
FreeBSD 10.1-RELEASE (HPDL380E) #1: Sun Feb 22 18:49:33 KRAT 2015
root@xxxxxxxxxxx:~ #

Минус данного метода только в том, что если у хакера окажется ваш приватный ключ из п.7, то он также сможет им воспользоваться…