Парольна фраза, яку можна встановити в приватному ключі, не має відношення до SSH-сервера або підключення до нього. Встановлення парольної фрази до приватного ключа - це лише міра безпеки, яку може вжити власник ключа, щоб запобігти доступу до його віддаленої оболонки третьою стороною у випадку, якщо приватний ключ буде вкрадений.
На жаль, ви не можете змусити користувачів захищати свої приватні ключі за допомогою парольних фраз. Іноді для автоматизованого доступу до віддаленого SSH-сервера потрібні незахищені приватні ключі. Одна хороша звичка , яку я дуже рекомендую для таких випадків порадити користувачам хеша в known_hosts файл (зберігається в ~ / .ssh / known_hosts ), яка зберігає інформацію про віддалених хостів в підключає користувачів до, використовуючи наступну команду:
ssh-keygen -H -f ~/.ssh/known_hosts
Таким чином, навіть якщо третя сторона отримала доступ до незахищеного приватного ключа, було б вкрай важко з'ясувати, для яких віддалених хостів цей ключ дійсний. Звичайно, очищення історії оболонки обов'язково, щоб ця методика мала будь-яку цінність.
Крім того, інша річ, яку ви завжди повинні мати на увазі, - це не дозволяти кореневі дистанційно входити в систему, додаючи в конфігурацію вашого SSH-сервера наступне (sshd_config):
PermitRootLogin no
З іншого боку, якщо ви хочете заборонити користувачам використовувати ключі для автентифікації, але замість цього використовувати паролі, слід додати наступне до свого sshd_config :
PasswordAuthentication yes
PubkeyAuthentication no