Получить доступ

Как устроен доступ по SSH-ключам и зачем нужен bastion-хост?

JuniorLinux и диагностика
Ещё спрашивают так:
  • Почему вход по паролю по SSH стоит отключить?
Коротко

Пара ключей: закрытый хранится у пользователя, открытый кладут на сервер в ~/.ssh/authorized_keys. При входе сервер проверяет, что клиент владеет закрытым ключом, — сам ключ по сети не передаётся. Bastion (jump host) — единственная точка входа во внутреннюю сеть: серверы не открыты в интернет, доступ проходит через один контролируемый и журналируемый хост.

  • Отключить вход по паролю и вход root: PasswordAuthentication no, PermitRootLogin no
  • Закрытый ключ — с паролем, права 600; агент ssh-agent
  • ssh -J bastion internal-host — прыжок через bastion

А ещё Современная альтернатива — короткоживущие SSH-сертификаты или доступ через SSO

Так подсказку видит пользователь sotto на живом собеседовании — за пару секунд, пока вы думаете вслух.

Подробно

Почему ключи лучше паролей: пароли подбирают ботами круглосуточно, ключи — нет; ключ можно отозвать у конкретного человека, не меняя общий пароль.

Настройка:

ssh-keygen -t ed25519 -C "ivan@laptop"
ssh-copy-id user@server
ssh -J user@bastion user@10.0.1.15

~/.ssh/config хранит алиасы, пользователя, ключ и ProxyJump.

Bastion: минимальный набор ПО, обновления, журналирование сессий, доступ только с известных адресов или через VPN, двухфакторная аутентификация. Внутренние серверы принимают SSH только от bastion.

Ротация доступа: при увольнении удалить ключ со всех серверов — поэтому ключи раскладывают автоматизацией (Ansible) или используют центральную выдачу сертификатов.

Что хотят услышать

  • Принцип работы ключей.
  • Укрепление sshd.
  • Роль bastion и управление доступом.

Связанные вопросы

Закрытая бета

Подсказки на собеседовании — в реальном времени

sotto слышит вопрос интервьюера и показывает короткий ответ и план, как в блоке «Коротко». Оставьте контакт — пришлём доступ и промокод.

  • Промокод на 2 часа — сверх пробных 30 минут
  • Программа для Windows — скачать сразу, войти — через Яндекс ID или VK ID
  • Прямая связь с разработчиком: что улучшить — сделаем