Избегайте перемещения ключа SSH - PullRequest
0 голосов
/ 19 марта 2012

Я хочу настроить SSH-шлюз для себя и нескольких других.Авторизация с этим сервером шлюза должна означать доступ к любому целевому серверу.

До сих пор это легко сделать, установив открытый ключ на все целевые серверы и поместив SSH-ключ без пароля в домашний каталог всех пользователей.на сервере шлюза.

Однако я не хочу, чтобы кто-либо мог взять с собой ключ SSH.Он должен быть заблокирован на сервере шлюза и недоступен для просмотра другим, кроме клиентских утилит SSH и SCP, для авторизации с целевыми объектами.

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

Спасибо!

1 Ответ

1 голос
/ 19 марта 2012

Вы сосредотачиваетесь на способе, а не на цели.

Когда вы говорите, что не хотите, чтобы пользователи «могли брать с собой ключ SSH», вы действительно имеете в виду, что вы этого не делаетехотите, чтобы пользователи могли входить на компьютеры назначения без прохождения через сервер шлюза.Потому что кого волнует, есть ли у них ключ, если он не приносит им никакой пользы?

Итак, сделайте ключ авторизованным только для входов с исходным IP-адресом сервера шлюза (на компьютерах назначения, к которым он относится.обеспечивает доступ).См. эту ссылку , в частности директиву from.Естественно, вы также должны изменить директиву AuthorizedKeysFile в глобальном sshd_config, чтобы включить туда, куда пользователи не могут писать на компьютерах назначения (это позволяет использовать несколько путей, поэтому вам не нужно мешать им добавлять свои собственные).клавиш, но звучит так, как ты хочешь).Кроме того, до тех пор, пока пользователи сервера шлюза не обмениваются ключами друг с другом, то есть ключ должен быть у любого, кто может войти на шлюз, и ваша сеть предотвращает подделку IP-адреса источника к месту назначения.с машинами, все в порядке.

Вы также можете пересмотреть подход, который вы используете;если целью сервера шлюза является только аутентификация (единый вход и централизованное управление доступом), то лучше использовать метод распределенной аутентификации, такой как Kerberos, а не неуклюжий вход в системуметод "получить в там".

...