Якщо ви завжди запускаєте apt-get
на своїх серверах вручну (немає автоматичних apt-get
команд, запущених кронами), ви можете розглянути можливість переадресації агента ssh . Це дозволяє уникнути необхідності керувати одним публічним / приватним ключем на сервері, яким ви керуєте, і це, мабуть, безпечніше, ніж залишати приватні ключі на кожному сервері.
Початкова конфігурація
- підключіться до серверів, якими ви хочете керувати, і додайте щось подібне /etc/apt/sources.list
(цей приклад передбачає, що ви хочете, щоб ваші сервери підключились до manager
облікового запису):
deb ssh://manager@my.repository.org/path other stuff
створити пару приватних / відкритих ключів на своєму власному комп’ютері, наприклад, за допомогою свого логіна johndoe
(за умови, що ваш комп'ютер працює на debian: якщо ні, ви можете зробити це з сервера debian, призначеного для управління):
ssh-keygen
- переконайтеся, що він захищений сильною ключовою фразою
скопіюйте ваш відкритий ключ на сервер сховища /home/manager/.ssh/authorized_keys
:
ssh-copy-id manager@my.repository.org
Раз на сеанс управління
запустіть ssh-агент на вашій машині, ввівши:
eval `ssh-agent`
додайте ключ до агента (для цього знадобиться ваша парольна фраза):
ssh-add
Керування сервером
підключитися до сервера, яким ви хочете керувати ssh -A
( -A
активує переадресацію агента):
ssh -A some.server.org
перейти на root (якщо ви хочете використовувати, sudo
вам потрібно налаштувати /etc/sudoers
або інакше sudo
буде порушено переадресацію агента, прочитайте це ):
su
тепер ви зможете підключитися до облікового запису менеджера сховища за допомогою ssh, не вводячи свій пароль знову, завдяки переадресації агента. Тому apt-get
має працювати просто чудово:
apt-get udate
Закінчення сеансу управління
Переваги
- Не потрібно багато початкової конфігурації
- Потрібен лише один приватний ключ
- Приватний ключ захищений сильною парольною фразою
- Якщо хтось отримає кореневий доступ до одного з ваших серверів, він не матиме негайного доступу до вашого сервера сховища.
- Зауважте, що якщо хакер терплячий і кваліфікований, він може чекати, поки ви підключитесь до сервера за допомогою переадресації агентів, і він може викрасти механізм переадресації, щоб отримати доступ до вашого сервера сховища.
- Щоб запобігти цьому, ви можете скористатися
ssh-ask
, щоб прийняти / відмовитись від кожної спроби використання вашого ключа.
- У будь-якому випадку хакер сам не отримає доступ до приватного ключа: він просто зможе захопити механізм переадресації для того, щоб використовувати ключ, і лише під час підключення до сервера.