Автор Тема: Авторизация ssh по открытому ключу  (Прочитано 1205 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Tinko

Авторизация ssh по открытому ключу
« : 21 Октября 2019, 15:58:14 »
Здравствуйте, хочу использовать для авторизации пару приватных и публичных RSA ключей.

Сгенерировал через PuTTY пару ключей, добавил публичный ключ в файл /.ssh/authorized_keys. Ключ идёт одной строкой, пример:

ssh-rsa eKd4Ev9FG0gf rsa-key-user
Делал я это всё под юзером, с правами sudo. Добавил права 700 на /.ssh и 600 на /.ssh/authorized_keys. В /etc/ssh/sshd_config раскомментировал строку AuthorizedKeysFile. В итоге, при попытке авторизации по ключу, пишет: server refused our key. Пробовал и под юзером и под root авторизоваться, не получилось.

Что я сделал не так и как правильно нужно сделать?
 

Оффлайн alexxnight

Re: Авторизация ssh по открытому ключу
« Ответ #1 : 21 Октября 2019, 17:23:39 »
На клиенте:
ssh-keygen -t rsa -b 4096

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

Скопировать публичный ключ на сервер:
ssh-copy-id -i ~/.ssh/id_rsa.pub [user name]@[host name or ip address]

На сервере в файле /etc/ssh/sshd_config
PubkeyAuthentication yes
PasswordAuthentication no \\ С этим параметром аккуратнее, вначале проверить, что устанавливается соединение по ключу!!!

Рестартовать сервис
service ssh restart
 

Оффлайн Tinko

Re: Авторизация ssh по открытому ключу
« Ответ #2 : 21 Октября 2019, 17:50:02 »
На клиенте:
ssh-keygen -t rsa -b 4096

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

Оффлайн ogost

Re: Авторизация ssh по открытому ключу
« Ответ #3 : 21 Октября 2019, 19:31:24 »
Делал я это всё под юзером, с правами sudo.
Делайте под юзером без судо

Оффлайн Tinko

Re: Авторизация ssh по открытому ключу
« Ответ #4 : 21 Октября 2019, 21:37:43 »
Делайте под юзером без судо
Какие действия тогда предпринять? Удалить сохранённый ключ, а потом заново записать под юзером?
 

Онлайн endru

Re: Авторизация ssh по открытому ключу
« Ответ #5 : 22 Октября 2019, 03:58:49 »
1. Скачиваем с putty.org утилитку puttygen запускаем её и генерим ключ:
 

* 1.png (Filesize: 30.29 КБ, Dimensions: 497x483)

Затем сохраняем приватный ключ, в любом месте, которое считаете максимально защищенным, особенно если это касается публичных серверов в интернете.

2. Копируем публичный ключ, полностью как он есть (ПКМ - выделить всё, ПКМ - копировать).
 

* 2.png (Filesize: 28.05 КБ, Dimensions: 493x478)

Заходим по SSH на нужный сервер под нужным пользователем. Если нужный пользователь закрыт (например если это root) то авторизуемся под доступным, а в нужного переходим командой:
sudo su - userи добавляем скопированный ключ в конец файла:
echo "ключ_из_буфера_обмена" >> .ssh/authorized_keysНо, т.к. там куча спецсимволов, лучше добавить это в любом текстовом редакторе, например:
nano .ssh/authorized_keysи на новой строке добавить содержимое ключа.

3. Подготовим настройки putty, прописываем пользователя (под которым нужно входить на сервер) и адрес сервера (например root@myhost), задаем нужное имя сессии, и сохраняем текущие настройки:
 

* 3.png (Filesize: 23.92 КБ, Dimensions: 468x453)


4. Переходим в putty в категорию: Connection -> SSH -> Auth
И указываем путь до файла с приватным ключем:
 

* 4.png (Filesize: 23.96 КБ, Dimensions: 475x455)

5. Возвращаемся в категорию Session и сохраняем текущие настройки.
 

* 5.png (Filesize: 26.34 КБ, Dimensions: 469x458)



Кликаем дважды по сохраненной сессии... Профит?!
« Последнее редактирование: 22 Октября 2019, 04:32:50 от endru »
 

Оффлайн Tinko

Re: Авторизация ssh по открытому ключу
« Ответ #6 : 22 Октября 2019, 15:11:40 »
Эм, не совсем. От юзера, без использования sudo не получается открыть файл authorized_keys. Сгенерировал новую пару ключей. Всё равно пишет: server refused our key. Пробовал и от юзера, и от рута авторизоваться. Дело точно не в настройках прав на каталог /.ssh и файл authorized_keys?
 

Онлайн endru

Re: Авторизация ssh по открытому ключу
« Ответ #7 : 22 Октября 2019, 16:48:43 »
Дело точно не в настройках прав на каталог /.ssh и файл authorized_keys?
все что лежит в /home/user должно принадлежать пользователю user, если это не так - меняй владельца командой chown

Оффлайн Tinko

Re: Авторизация ssh по открытому ключу
« Ответ #8 : 22 Октября 2019, 19:58:26 »
все что лежит в /home/user должно принадлежать пользователю user, если это не так - меняй владельца командой chown

Минуточку. Но ведь я добавляю открытый ключ в файл, находящийся в каталоге /.ssh, а не в /home/user. Что в таком случае делать? Я понимаю что где-то ошибся, или не понял базовых принципов. Но есть желание решить вопрос. Могу логи показать, если какие-то нужны
 

Онлайн endru

Re: Авторизация ssh по открытому ключу
« Ответ #9 : 23 Октября 2019, 03:34:58 »
Но ведь я добавляю открытый ключ в файл, находящийся в каталоге /.ssh
???
в каком еще /.ssh ?
все файлы должны находиться в /home/username/.ssh и принадлежать только владельцу username, если это не так - переделывай по новому. Не выходит - делай по новой, с нуля.
 
Пользователи, которые поблагодарили этот пост: Tinko

Оффлайн Tinko

Re: Авторизация ssh по открытому ключу
« Ответ #10 : 23 Октября 2019, 13:57:52 »
все файлы должны находиться в /home/username/.ssh и принадлежать только владельцу username
Теперь понял, сделал, всё работает. Спасибо
 

Теги:
     

    Не происходит авторизация в системе - вход в систему не осуществляется: WHEEZY

    Автор TSerzhO_

    Ответов: 37
    Просмотров: 7853
    Последний ответ 10 Октября 2014, 22:33:15
    от yoric
    SSH авторизация файлами ключей

    Автор Tesla

    Ответов: 10
    Просмотров: 2516
    Последний ответ 11 Февраля 2015, 20:17:27
    от Tesla
    авторизация на проксе

    Автор dontagr

    Ответов: 9
    Просмотров: 3359
    Последний ответ 02 Февраля 2013, 18:14:07
    от ihammers