Аутентификация SSH по ключам
С чего все началось, когда на работе появилось с десяток ubuntu серверов (половина тестовых), встал вопрос о повышении безопасного доступа по ssh к серверам. Что можно сделать:- длина пароля (>15 символов)
- аутентификация по ключам
Т.к. первое было сделано изначально, то второе нужно сделать, чтобы исключить атаку перебора пароля.
Есть два способа:
- Генерирование ключей на ubuntu а потом импорт в Putty
- Генерирование ключей в Putty а потом импорт в ubuntu
Но, необходимо для начала настроить ssh
редактируем /etc/ssh/sshd_config
[root@server-dhcp ]# nano /etc/ssh/sshd_config
PermitRootLogin yes (Если будете заходить на сервер под учетной записью root)
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile %h/.ssh/authorized_keys
PermitEmptyPasswords no
PasswordAuthentication no (Запрет аутентификации по паролю)
UsePAM no
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile %h/.ssh/authorized_keys
PermitEmptyPasswords no
PasswordAuthentication no (Запрет аутентификации по паролю)
UsePAM no
Сохраняем изменения и перезапускаем службу
[root@server-dhcp]#service sshd restart
Теперь создаем папку .ssh в своем домашнем каталоге
[root@server-dhcp ]#mkdir .ssh
Нам нужен пустой файл authorized_keys в папке .ssh
Заходим в созданную папку .ssh
[root@server-dhcp .ssh]#cd .ssh
Создаем пустой файл authorized_keys
[root@server-dhcp .ssh]#cat 123.123 >> authorized_keys
Выставляем права на директорию .ssh/, и все что в ней находится:
[root@server-dhcp .ssh]# chmod -R 600 *
[root@server-dhcp .ssh]# chmod 700 ~/.ssh/
[root@server-dhcp .ssh]# chmod 700 ~/.ssh/