Адміністратор сервера надіслав мені приватний ключ для використання. Чому?


73

Я повинен мати доступ до сервера для того, щоб зв’язати сервіси інсценування та реальні сервіси компанії в наш цикл розгортання. Адміністратор на їхній стороні встановив два екземпляри, а потім створив користувача на сервері для SSH в як. До цього я дуже звик.

На моїй думці, що зараз станеться, я б надіслав їм свій відкритий ключ, який міг би бути поміщений у папку їхніх авторизованих ключів. Натомість вони надіслали мені ім'я файлу, id_rsaяке всередині файлу містить -----BEGIN RSA PRIVATE KEY-----електронну пошту. Це нормально?

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

Я б попросив системного адміністратора безпосередньо, але не хочу з’являтися ідіотів і витрачати всіх між нами час. Чи повинен я просто ігнорувати ключ, який він мені надіслав, і попросити їх помістити мій відкритий ключ у свою дозволену папку?


6
Я б не називав це нормальним або здоровим, але оскільки у вас є приватний ключ (якщо припустити, що його вже додано як авторизований), ви можете використовувати його, як і будь-який інший приватний ключ. Вам не потрібен відповідний відкритий ключ, але якщо ви хочете, його завжди можна створити: askubuntu.com/a/53555/158442
muru

34
Перехід -----BEGIN RSA PRIVATE KEY-----електронної пошти - це наступна страшна річ після того, як ви побачили користувача, названого '); DROP DATABASE;--у таблиці вашого імені користувача.
Дмитро Григор’єв

62
@DmitryGrigoryev нічого страшного в тому, щоб побачити '); DROP DATABASE;--як ім’я користувача в таблиці бази даних - це показує, що ви врятувались правильно від введення користувача
HorusKol

19
Ви, звичайно, не можете "використовувати його так, як ви використовували б інший приватний ключ". Цей не є приватним. Ерго, він не може виконати функцію, для якої він був створений. Його слід викинути, а адміністратор UNIX сильно покараний. @muru
user207421

7
Усі, хто має цей приватний ключ, мають доступ до нових серверів. Імовірно, адміністратор має доступ у будь-якому разі, не потребуючи ключа, бачачи, як s / він зміг налаштувати сервер, тому немає додаткової загрози несанкціонованого доступу до нього. Однак, оскільки це ваш ключ, він тепер може надійно себе представити. Також є ймовірність, що хтось, крім вас, прочитає повідомлення електронної пошти, і тоді він може себе представити і вам.
іммібіс

Відповіді:


116

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

Те, що "на думці", як те, що зараз має статися, - це правильно.

Електронна пошта не є захищеним каналом зв'язку, тому з точки зору належної безпеки ви (і вони) повинні вважати, що приватний ключ порушений.

Залежно від вашої технічної майстерності та того, наскільки ви хочете бути дипломатичним, ви можете зробити кілька різних речей. Я рекомендую одне з наступних:

  1. Створіть власну пару ключів і прикріпіть відкритий ключ до електронного листа, який ви надсилаєте їм, кажучи:

    Дякую! Оскільки електронна пошта не є безпечним методом розповсюдження приватних ключів, чи можете ви замість цього поставити мій відкритий ключ? Це додається.

  2. Подякуйте їм і запитайте, чи не заперечуєте вони проти встановлення Вашого власного ключа, оскільки приватний ключ, який вони надіслали, повинен вважатися порушеним після надсилання електронною поштою.

    Створіть власний ключ, використовуйте ключ, який вони вам надіслали для входу в перший раз, і використовуйте цей доступ для редагування authorized_keysфайлу, щоб містити новий відкритий ключ (та видаліть відкритий ключ, відповідний зіпсованому приватному ключу.)

Підсумок: Ви не будете схожі на ідіот. Але, іншого адміністратора можна зробити так, щоб виглядати як ідіот дуже легко. Хороша дипломатія могла цього уникнути.


Редагувати у відповідь на коментарі MontyHarder:

Жоден із запропонованих нами дій не передбачає "виправлення речей, не повідомляючи іншому адміністратору, що він зробив не так"; Я просто так тонко зробив, не кидаючи його під автобус.

Однак я додам, що я б також (ввічливо) продовжував діяти, якби не були підібрані найтонші підказки:

Привіт, я бачив, що ви не відповідали на мій коментар про електронну пошту як про незахищений канал. Я хочу бути впевненим, що це не повториться:

Чи розумієте ви, чому я зазначаю про безпечне поводження з приватними ключами?

Найкраще,

Тобі


9
+1 Найкраща відповідь. І я додам: будьте особливо обережні, оскільки цей системдмін виявився некомпетентним. Краще накрийте спину, коли (а не якщо ) він назавжди накрутить сервер.
dr01

2
Дякую. Я використав делікатну фразу і надіслав свій відкритий ключ поперек. Це все виглядає вирішеним, але я деавторизую ключ, який він мені надіслав зараз.
Тобі

27
Справа не в тому, що іншого адміністратора "можна зробити так, щоб виглядати як ідіот". Це те, що інший адміністратор зробив щось ідіотське. Я можу придумати лише один сценарій, згідно з яким приватний ключ повинен ділитися між машинами, і саме там пул серверів має доступ через те саме ім'я (роздільна здатність DNS тощо) і повинен представляти той же ключ хоста SSH, щоб автоматизовані процеси приймуть, що це саме ім'я. І в цьому випадку одна і та ж людина буде адміністратором всіх серверів і здійснюватиме обмін передачами без участі сторонньої сторони.
Monty Harder

21
@zwol На моїй роботі у нас є філософія "без вини", яка розуміє, що ми помиляємось, але робить її першочерговим завданням не робити одну і ту ж помилку двічі. Але для того, щоб не зробити одну і ту ж помилку двічі, ви повинні знати, що це помилка, тому я не можу підняти голоси на відповіді, пропонуючи ОП просто виправити речі, не розповівши іншому адміністратору, що він зробив не так. Я вирішив називати помилку "ідіотичною", а не називати імена адміністратора саме з тієї причини, яку ви окреслили. (Але я не впевнений, що ваше заключне дуже сформульоване змістовне розмежування.)
Монті Хардер

8
@LightnessRacesinOrbit, підозрюю, ви можете мати неповне розуміння значення "дипломатії". Ви спробували очистити його в хорошому словнику, наприклад, Третьому новому міжнародному словнику Вебстера?
Wildcard

34

Чи повинен я просто ігнорувати ключ, який він мені надіслав, і попросити їх помістити мій відкритий ключ у свою дозволену папку?

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

Незалежно від того, надісланий вам ключ захищеним каналом чи ні, не має значення: навіть якщо ви особисто отримали свій приватний ключ, це нічого не змінить. Хоча я згоден з коментарями, що чутливі ключі криптографії для електронної пошти - це вишня на торті: ваш адміністратор навіть не робить вигляд, що існує якась політика безпеки.


6
А оскільки в ОП немає ніякого способу дізнатися, наскільки захищена машина адміністратора (з історії, мабуть, дуже небезпечно), він повинен припустити, що приватний ключ (або буде) також просочується для інших людей. Надіслати приватний ключ електронною поштою - лише бонусний факт за неохайність.
dr01

1
Можна припустити, що адміністратору, який може створити користувачів, не потрібен буде ваш приватний ключ, щоб видати себе за себе.
Макс Рійд

3
@MaxRied Це може бути важко зробити із належними журналами безпеки. За допомогою вашого приватного ключа йому навіть не потрібно знущатися з журналів. Це як би мати можливість скинути свій пароль, а не знати ваш пароль.
Дмитро Григор’єв

@DmitryGrigoryev Він завжди міг додати ще один ключ у файл дозволених ключів ...
Макс Рід

4
@MaxRied Я мав на увазі /var/log/secureчи подібне , я майже впевнений, що космічний трюк не обдурить цього.
Дмитро Григор’єв

14

Для мене це виглядає так, що адміністратор створив для вас пару приватних / відкритих ключів, додав відкритий ключ до санкціонованих_ ключів і надіслав вам приватний. Таким чином, ви повинні використовувати цей приватний ключ лише для своїх сеансів ssh з сервером. Не потрібно самостійно генерувати пару ключів або надсилати адміністратору відкритий ключ до вашого, можливо, пошкодженого (завжди думайте, найгірший випадок: P) приватного ключа.

Однак я б не довіряв приватному ключу, надісланому вам через незашифровану пошту.

Моїм підходом було б: використовувати приватний ключ для входу один раз, додати свій власний відкритий ключ до санкціонованих_кілів на сервері (замінивши оригінальний відкритий ключ) та викинути цей електронний ключ-приватний ключ. Потім ви можете подякувати адміністратору, що він / вона / він надав вам приватний ключ, але ви хочете, щоб таку інформацію / ключі не надсилали електронною поштою (/ взагалі).


3
@Toby Єдина причина, по якій я можу уявити, як вони надсилають приватний ключ, - це те, що вони не розуміють інструментів, якими вони користуються. І ви можете використовувати -iв командному рядку, щоб вибрати, який приватний ключ використовувати.
kasperd

18
@kasperd Причина, яку я можу собі уявити, - це перевантажений системний адміністратор, який вирішив, що ризики надсилання приватного ключа по електронній пошті переважають клопоти, намагаючись пояснити менш ощасливим користувачам, як правильно генерувати пару ключів та надсилати відкритий ключ назад.
mattdm

1
Відмінний момент, що ви можете самі це виправити. Краще зробити це самостійно, ніж чекати, коли адміністратор встановить відкритий ключ для нового ключа. Уникнення використання приватного секретного ключа не допомагає нічого; він просто надає будь-яким потенційним підслуховувачам довше їх використання, перш ніж ви зможете зайти та вилучити його authorized_keys(після додавання + тестування власного).
Пітер Кордес

4
@mattdm Це ... цілком логічно, але все-таки лякає. Людина, яка не може створити пару ключів та надіслати мені відкритий ключ, ймовірно, не збирається робити набагато краще із приватним ключем, який я йому даю.
Monty Harder

1
@mattdm, досить чесно, але, оскільки я був той, хто попросив його зробити все це, мені важко повірити, що він думав, що я не знаю, як зв'язатись з ssh. Якщо що-небудь, кроки, які він вжив, були більш заплутаними, оскільки я знаю лише основний загальний спосіб використання відкритих ключів. : x
Toby
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.