Якщо ви завжди запускаєте 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, щоб прийняти / відмовитись від кожної спроби використання вашого ключа.
- У будь-якому випадку хакер сам не отримає доступ до приватного ключа: він просто зможе захопити механізм переадресації для того, щоб використовувати ключ, і лише під час підключення до сервера.