Назад | Перейти на главную страницу

Запоминание парольной фразы SSH в Mac OS X Snow Leopard

У меня очень странная ситуация со Snow Leopard. У меня есть сервер Linux, настроенный на прием ssh-соединения, аутентифицированного только через ключ RSA. Нет пароля. На моем ноутбуке я правильно развернул ключ RSA с помощью ssh-keygen, и пока я это делал, я добавил парольную фразу. Затем я переместил id_rsa.pub на сервер Linux .ssh / authorized_keys.

Все идет нормально. Теперь я пытаюсь со своего ноутбука Snow Leopard войти на машину Linux. Я получаю всплывающее окно с запросом пароля. Это первое, что меня удивляет, так как я ожидал, что будет получен запрос парольной фразы оболочки, а не всплывающее окно. Согласно информации в этом всплывающем окне, приложение, запрашивающее парольную фразу, называется ssh. Также есть опция «запомнить фразу в связке ключей», которая отключена.

Я ввожу свой пароль. Всплывающее окно исчезнет, ​​и терминал правильно войдет в систему Linux. Теперь, если я выйду из системы и снова попытаюсь использовать ssh, вход в систему произойдет без запроса парольной фразы, что является не что я хочу.

Что я проверил:

Где хранится кодовая фраза? что именно происходит, и как я могу принудительно запрашивать парольную фразу при каждой попытке ssh?

OS X автоматически запустит ssh-agent, когда ему понадобится ваш закрытый ключ. Ваш ключ будет доступен через ssh-agent (без повторного ввода ключевой фразы), пока вы не выйдете из системы. OS X или удалите ключ (через ssh-add -d или ssh-add -D удалить все ключи).

Это похоже на стандартное поведение системы * NIX с ssh-agent и позволяет использовать полезные функции, такие как пересылка аутентификации агента (ssh -A), чтобы вам не приходилось размещать свой закрытый ключ по всей сети.


Если вы хотите отключить ssh-agent (для всех пользователей вашего Mac), вы можете удалить файл /System/Library/LaunchAgents/org.openbsd.ssh-agent.plist


Другой способ - выгрузить и отключить LaunchAgent:

sudo launchctl -w /System/Library/LaunchAgents/org.openbsd.ssh-agent.plist

В -w заставляет его не просто выгружаться, но отмечать и запоминать его как отключенное.