2012-03-18 22 views
0

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

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

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

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

Спасибо!

+1

Вы можете указать пароль шифрования на ключ, чтобы разрешить использовать только авторизованные пользователи. Возможно, вам также захочется рассмотреть хорошие разрешения Unix Unix. :) – MrGomez

+1

SSH-ключ - это всего лишь файл. Если люди имеют право читать и использовать его, они также могут его скопировать. Подумайте о том, что вы просите здесь. То, что вы * можете * и должно делать, это генерировать отдельные ключи для каждого пользователя. Если кто-то войдет в вашу машину, тогда вы, по крайней мере, можете быть уверены, кто это. Кроме того, вы можете отменить отдельные ключи таким образом. –

ответ

1

Вы сосредоточены на средствах, а не на конце.

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

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

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

Смежные вопросы