- ssh-keygen для создания локального ключа
- создать новый сервер (ы)
- ssh-copy-id для root @ newserver
- создать ANSI репозиторий PlayBook нужной конфигурации (включая только пароль sshd)
- бежать
ansible-playbook
Использование авторизованных ключей SSH для развертывания обновления привилегированных файлов по локальной сети?
У меня есть сервер, который время от времени автоматически обновляет набор привилегированных файлов (например, ключи сертификатов, конфигурации и т. Д.). Необходимо сохранить эти файлы в других системах локальной сети. Я примерно знаю, как это сделать, но я не знаю деталей реализации.
Удаленные команды для получения и сохранения файлов (выполняемые на этих других серверах локальной сети) могут восприниматься как статические или очень редко изменяемые и могут быть жестко запрограммированы, что означает, что они идеально подходят для использования с авторизованными ключами SSH, но многие необходимо соблюдать осторожность, так как файлы, которые они получают и хранят, по-прежнему имеют привилегии и сохраняются в пути, иначе только для чтения с правами root. Все задействованные системы - FreeBSD (+ одна OpenBSD).
Я визуализирую такой процесс:
- Сгенерируйте пару ключей
ssh-keygen
, подходящую для локального SSH (не нужно работать с какой-либо общедоступной сетью или другими системами или функциями). - Создайте привилегированную учетную запись
PRIV_USER
на всех системах, к которым вообще нет доступа, кроме как через sshd (обычно требуются либо привилегии su, которые должны быть безопасными для фиксированного сценария, либо минимальный доступ для записи в определенные жестко запрограммированные местоположения, обычно читаемые / записываемые только root, так как для этого нужно сохранить полученные файлы). - Настройте раздел авторизованных ключей в sshd на всех других системах, который при подключении как
PRIV_USER
автоматически получает архив файлов tar и распаковывает их в локальную файловую систему, а затем отключается. - В отправляющей системе, когда файлы должны быть обновлены удаленно, запустите короткий скрипт, который создает tar-архив файлов для отправки, а затем подключается к удаленной системе (системам) по очереди
PRIV_USER
, отправляя файлы через SSH, отмечает успех / неудачу в консоли и выходит.
Я хотел бы избежать нарушения безопасности, получая их неправильно, и я ранее не использовал для этой цели Авторизованные ключи и не должен был генерировать свои собственные внутренние пары ключей для подобных целей, а также не создавал ограниченные привилегированные учетные записи. Так что я могу сделать это немного неправильно.
Какие правильные команды я должен использовать для минимальной базовой «не испорченной» реализации этой функции? :)
1 ответ на вопрос
Похожие вопросы
-
3
Установите Silverlight для Mozilla Firefox без прав администратора
-
1
Структура открытого ключа OpenSSH
-
8
Как пропустить вопрос «known_host» при первом подключении к машине через SSH с открытыми / закрытыми...
-
-
3
Запуск MSI-файлов от имени администратора из учетной записи пользователя
-
10
Удалить ключ из известных_хостов
-
6
«запускать от имени администратора» в стандартной учетной записи пользователя
-
14
Есть ли какая-нибудь команда sudo для Windows?
-
1
Плагин Java огромный риск безопасности? Как уберечь плагин Java от повышения привилегий?
-
2
Как запускать приложения с повышенными привилегиями в Ubuntu с помощью графического интерфейса
-
2
Почему у меня нет права создавать текстовый файл в моем корневом каталоге?