Форум русскоязычного сообщества Ubuntu


Следите за новостями русскоязычного сообщества Ubuntu в Twitter-ленте @ubuntu_ru_loco

Автор Тема: Вопрос по SSH : где хранить private key id_rsa на клиенте ?  (Прочитано 8848 раз)

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

Оффлайн _art_

  • Автор темы
  • Активист
  • *
  • Сообщений: 377
    • Просмотр профиля
Привет.

Сервер настроен на аутентификацию по ключу.
На нем же генерил public и private ключи.

Есть 2-ой комп.

Вопрос: чтобы со 2-го компа я мог логиниться на сервер, private ключ (который был сгенерин на сервере) должен лежать в  /home/%username%/.ssh/id_rsa (на 2-ом компе) ?
« Последнее редактирование: 30 Августа 2015, 20:26:13 от _art_ »

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13756
    • Просмотр профиля
эммм... У Вас всё с ног на голову.
Пара ключей формируется на любой машине, но подвластной пользователю.
Серверу передаётся исключительно публичный ключ. Ведь пользователь может и не быть администратором сервера, а значит приват-ключом может завладеть и сторонние лица. А паблик-ключ можно хоть открытой почтой передать - секьюрность при этом не пострадает.

Оффлайн _art_

  • Автор темы
  • Активист
  • *
  • Сообщений: 377
    • Просмотр профиля
Да, уже понял что это от обратного. Но ведь и пара была сгенерирована на стороне сервера.
Если так, то мое предположение верно ?

А так, получается,  механизм такой: есть сервер, на нем работает sshd.
Есть клиент. Он на своей стороне генерирует пару и публичный отправляет серверу, приватный оставляет себе.

Тогда возникает пара вопросов:
1) сервер один. Клиентов много. Все они шлют public key серверу. Это нормально ? То есть потом сервер от них всех может принимать соединения, так ? И это считается нормальной практикой ?
2) злонамеренный клиент сгенерировал пару, указал pass phrase. Отправил public key этому серверу. Также он знает hostname сервера. Также он хочет зайти под рутом.
Он коннектится: ssh root@serverhostname и указывает pass phrase. И что получается, он залогинен под рутом на сервере ? ( если, конечно, это не запрещено на нем)

Где ж тогда секурность ?)

То есть, получается, любой, кто знает, что существует такой пользователь как рут, и, зная hostname сервера, может залогиниться на нем как рут ? O.o
« Последнее редактирование: 31 Августа 2015, 08:38:00 от _art_ »

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13756
    • Просмотр профиля
1) сервер один. Клиентов много. Все они шлют public key серверу. Это нормально ? То есть потом сервер от них всех может принимать соединения, так ? И это считается нормальной практикой ?
Для КАЖДОГО ПОЛЬЗОВАТЕЛЯ на сервере хранится СВОЙ список публичных ключей

2) злонамеренный клиент сгенерировал пару, указал pass phrase. Отправил public key этому серверу.
Куда отправил???

Также он знает hostname сервера. Также он хочет зайти под рутом.
Ну если админ полученные паблик-ключи складывает в ключницу рута... к тому же если ключ неизвестно от кого...
Да и вообще предоставил для рута ssh-доступ... То он ССЗБ.

Оффлайн _art_

  • Автор темы
  • Активист
  • *
  • Сообщений: 377
    • Просмотр профиля
>Куда отправил ?

на сервер командой ssh-copy-id -i ~/.ssh/id_rsa.pub user@server
>Ну если админ полученные паблик-ключи складывает в ключницу рута

То есть на той стороне должен быть админ, который потом этот публичный ключ ложит в нужное место... Ага.
Тогда вновь к первому сообщению - что если такого админа нет ?
Тогда мое предположение верно ?
То есть сервер временно не обслуживается админом, но нужно позволить заходить определенному пользователю на него удаленно.
« Последнее редактирование: 31 Августа 2015, 09:10:24 от _art_ »

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13756
    • Просмотр профиля
Как Вы эту команду будете выполнять не имея доступа к серверу? (это если про злоумышленника)
Если Вы являетесь законным пользователем, то таким образом добавляете ключ для своей учётки и не более, потому помощь админа не нужна.
Если же доступа изначально нет, то поможет только админ.

Оффлайн _art_

  • Автор темы
  • Активист
  • *
  • Сообщений: 377
    • Просмотр профиля
Так, давайте так.
Я один и есть тот самый админ своего  сервера.
Настроил ssh чтоб заходил по ключу.
Публичный ключ добавил в authorized_keys.
Ssh работает на сервере. Сервер работает 24 часа в сутки 7 дней в неделю.
Меня не будет физически рядом с сервером в течении месяца, однако я хочу заходить на машину удаленно.

Что мне нужно сделать, чтобы, находясь удаленно, я смог зайти на свой сервер ?

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13756
    • Просмотр профиля
использовать приватный ключ на клиенте

Оффлайн _art_

  • Автор темы
  • Активист
  • *
  • Сообщений: 377
    • Просмотр профиля
Ну то есть поместить его в /home/%username%/.ssh/id_rsa ?

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13756
    • Просмотр профиля
По умолчанию клиент будет брать ключи оттуда (если коробочный конфиг не меняли)
А так не важно куда Вы его положите. Ведь никто не мешает использовать параметр -i и указать путь до ключа.

Оффлайн _art_

  • Автор темы
  • Активист
  • *
  • Сообщений: 377
    • Просмотр профиля
Ok, спасибо.
« Последнее редактирование: 31 Августа 2015, 10:41:44 от _art_ »

Оффлайн _art_

  • Автор темы
  • Активист
  • *
  • Сообщений: 377
    • Просмотр профиля
Re: Вопрос по SSH : где хранить private key id_rsa на клиенте ?
« Ответ #11 : 06 Сентября 2015, 15:15:41 »
Привет !

Кстати, вопрос : на Win куда этот id_rsa размещать при использовании Putty ?

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13756
    • Просмотр профиля
Re: Вопрос по SSH : где хранить private key id_rsa на клиенте ?
« Ответ #12 : 06 Сентября 2015, 20:33:06 »
Хоть это и оффтоп, но отвечу:
видимо куда сюда  :coolsmiley:

alexxnight

  • Гость
Re: Вопрос по SSH : где хранить private key id_rsa на клиенте ?
« Ответ #13 : 06 Сентября 2015, 20:39:13 »
Там есть один нюанс. Putty не принимает id_rsa ключи, нужно конвертировать в его формат, понятный для нее. Для этого нужно скачать puttygen.exe

Оффлайн _art_

  • Автор темы
  • Активист
  • *
  • Сообщений: 377
    • Просмотр профиля
Re: Вопрос по SSH : где хранить private key id_rsa на клиенте ?
« Ответ #14 : 07 Сентября 2015, 08:41:45 »
Мм, спасибо !

 

Страница сгенерирована за 0.143 секунд. Запросов: 25.