1

Мне нужно понять, что на самом деле делает PubkeyAuthentication=false в следующей команде:

ssh -X -o PubkeyAuthentication=false notadmin@<DedicatedHost>

Это отключает аутентификацию Pubkey? Это тестовая процедура для проверки контроля доступа, и я пытаюсь понять, что делает для обхода проверки подлинности Pubkey.

2 ответа2

1

Вы находитесь на клиентском компьютере, подключаясь к серверу ASSH. Когда вы указываете -o PubkeyAuthentication=false вы говорите серверу, что НЕ поддерживаете аутентификацию ssh-ключа для этого сеанса.

SSH-серверы чаще всего настраиваются так, чтобы к ним обращались с помощью ssh-key или с помощью аутентификации по password . (Другие методы доступны)

Если вы хотите использовать ssh -X -o PubkeyAuthentication=false notadmin@<DedicatedHost> в сеансе клиента, этот сервер должен будет поддерживать аутентификацию по паролю. Если сервер НЕ поддерживает аутентификацию по паролю и вы указываете -o PubkeyAuthentication=false сервер будет использовать любой другой доступный метод аутентификации.

Если на сервере отключена аутентификация по паролю и включена функция PubkeyAuth, вы не сможете подключиться, используя аргументы SSH.

0

Когда вы передаете PubkeyAuthentication он включает или отключает общую аутентификацию с открытым ключом SSH для этого использования и на этом хосте. Как объяснено в документации для опций ssh_config :

Указывает, следует ли использовать аутентификацию с открытым ключом. Аргумент к этому ключевому слову должен быть да (по умолчанию) или нет.

Но в предоставленной вами команде, похоже, установлено false :

ssh -X -o PubkeyAuthentication=false notadmin@<DedicatedHost>

Что может сработать, но я не уверен. Предполагается, что это должно быть no . Но в своем вопросе вы спрашиваете:

Это тестовая процедура для проверки контроля доступа, и я пытаюсь понять, что делает для обхода проверки подлинности Pubkey.

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

А почему это было бы желательно? Кто знает. Без контекста большего тестового контекста никто здесь не может сказать. Но я сказал то, что сказал, и основываясь на том, что я знаю, эта строка не должна работать, поскольку false - буквально ложная опция.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .