Хранение информации секретного ключа и паролей для входа в SSH - PullRequest
0 голосов
/ 14 октября 2010

Хорошо, я работаю над системой управления кучей vps.Это включает в себя повседневные задачи обслуживания, а также распределение ресурсов.

Для этого моему управляющему серверу необходимо будет подключиться к различным серверам.Я регулярно использую открытый / закрытый ключ ssh, и это кажется наиболее логичным способом подключения сервера управления к подчиненным серверам.

Теперь давайте представим, что сервер управления настолько безопасен, насколько это возможно.У меня вопрос, как я могу безопасно хранить закрытый ключ на управляющем сервере и пароль root (при условии, что прямой вход в систему root отключен) для подчиненных серверов.

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

1 Ответ

0 голосов
/ 14 октября 2010

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

Базовой реализацией будет просто база данных, к которой обращается ведомый, но вы также можете создать архитектуру клиент-сервер.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...