Я должен получить доступ к серверу, чтобы связать промежуточные и живые серверы компании в наш цикл развертывания. Администратор со своей стороны установил два экземпляра, а затем создал пользователя на сервере для нас в SSH в качестве. Это то, к чему я привык.
Теперь я думаю, что произойдет, я отправлю им свой открытый ключ, который можно будет поместить в папку их авторизованных ключей. Однако вместо этого они прислали мне имя файла, id_rsa
которое внутри файла содержится -----BEGIN RSA PRIVATE KEY-----
по электронной почте. Это нормально?
Я огляделся по сторонам и смог найти тонны ресурсов по созданию и настройке моих собственных ключей с нуля, но ничего о запуске с закрытых ключей сервера. Должен ли я использовать это для генерации ключа для себя или?
Я бы обратился к системному администратору напрямую, но не хотел бы казаться идиотом и тратить все время между нами. Должен ли я просто игнорировать ключ, который он мне прислал, и попросить их поместить мой открытый ключ в их авторизованную папку?
-----BEGIN RSA PRIVATE KEY-----
по электронной почте - следующая страшная вещь после просмотра имени пользователя'); DROP DATABASE;--
в вашей таблице имен пользователей.'); DROP DATABASE;--
в качестве имени пользователя в вашей таблице базы данных - это показывает, что вы корректноОтветы:
То, что «у вас на уме», как то, что сейчас должно произойти, правильно.
Электронная почта не является безопасным каналом связи, поэтому с точки зрения надлежащей безопасности вы (и они) должны учитывать, что закрытый ключ скомпрометирован.
В зависимости от ваших технических навыков и дипломатичности, вы можете сделать несколько разных вещей. Я бы порекомендовал одно из следующего:
Создайте свою собственную пару ключей и прикрепите открытый ключ к электронному письму, которое вы им отправляете:
Поблагодарите их и спросите, не возражают ли они против того, чтобы вы установили собственную пару ключей, поскольку отправленный ими закрытый ключ следует считать скомпрометированным после отправки по электронной почте.
Создайте свою собственную пару ключей, используйте ключ, который они отправили вам, чтобы войти в систему в первый раз, и используйте этот доступ для редактирования
authorized_keys
файла, содержащего новый открытый ключ (и удаления открытого ключа, соответствующего скомпрометированному закрытому ключу.)Итог: ты не будешь выглядеть как идиот. Но другой администратор может быть очень похож на идиота. Хорошая дипломатия могла бы избежать этого.
Редактировать в ответ на комментарии от MontyHarder:
Ни один из предложенных мной вариантов действий не включает «исправление ситуации, не сообщая другому администратору, что он сделал неправильно»; Я просто сделал это тонко, не бросая его под автобус.
Тем не менее, я добавлю, что я бы также (вежливо) проследил бы, если бы тонкие подсказки не были подобраны:
источник
Да, это именно то, что вы должны сделать. Все дело с закрытыми ключами в том, что они являются закрытыми , то есть только у вас есть ваш личный ключ. Так как вы получили этот ключ от администратора, он также имеет его. Таким образом, он может выдать себя за тебя в любое время, когда захочет.
Независимо от того, был ли ключ отправлен вам по безопасному каналу или нет, не имеет значения: даже если вы получили свой личный ключ лично, это ничего не изменит. Хотя я согласен с комментариями о том, что отправка по электронной почте конфиденциальных ключей криптографии - это самое главное: ваш администратор даже не притворяется, что существует какая-то политика безопасности.
источник
/var/log/secure
или похожий , я уверен, что космический трюк не обманет этот.Для меня это выглядит так, как будто администратор сгенерировал для вас пару закрытых / открытых ключей, добавил открытый ключ в авторизованные ключи и отправил вам закрытый ключ. Таким образом, вам нужно использовать этот закрытый ключ только для ваших сш-сессий с сервером. Не нужно создавать пару ключей самостоятельно или отправлять администратору открытый ключ на ваш возможно поврежденный (всегда наихудший случай: P) закрытый ключ.
Однако я бы не стал доверять закрытому ключу, отправленному вам по незашифрованной почте.
Мой подход заключается в следующем: используйте закрытый ключ для входа в систему один раз, добавьте свой собственный открытый ключ к авторизованным ключам на сервере (заменив оригинальный открытый ключ) и выбросьте этот почтовый закрытый ключ. Затем вы можете поблагодарить администратора за то, что он / она / она предоставил вам закрытый ключ, но вы бы предпочли, чтобы такую информацию / ключи не отправляли по электронной почте (/ вообще).
источник
-i
в командной строке, чтобы выбрать, какой закрытый ключ использовать.authorized_keys
(после добавления + тестирования вашего собственного).