Чи може хтось пояснити "PasswordAuthentication" у файлі / etc / ssh / sshd_config?


28

На цій сторінці подано пояснення:

Параметр PasswordAuthentication визначає, чи слід використовувати автентифікацію на основі пароля. Для сильної безпеки цей параметр завжди повинен бути встановлений так.

Але він не забезпечує жодних сценаріїв використання, які б уточнювали, коли так чи ні було б доречно. Може хтось, будь ласка, детальніше розробити?

Відповіді:


22

Ваше посилання вказує на документацію через 10 років.

SSH підтримує декілька способів аутентифікації користувачів, найпоширеніший - запит для входу та пароля, але ви також можете перевірити автентифікацію користувача та логін та відкритий ключ. Якщо ви встановите значення "Ні", ви більше не зможете використовувати логін та пароль для автентифікації, а замість цього потрібно використовувати логін та відкритий ключ (якщо для PubkeyAuthentication встановлено значення "Так")


Гаразд, так тільки для дозволених_key2: (1) прокоментуйте AuthorizedKeysFile (2) Ні паролі, ні автентифікацію (3) PubkeyAuthentication так (4) ChallengeResponseAuthentication ні (5) протестуйте це ... якщо він все ще приймає паролі, також додайте UsePam ні
YumYumYum

Використовуйте ці налаштування: fpaste.org/114544/04202660, коли дозволяти вхід в SSH лише через ~ / .ssh / санкціонований_кейс2, але не з ім'ям користувача / паролем
YumYumYum

1
і яке значення DEFAULT у цьому? Я маю на увазі, що робити, якщо я не вказую жодної "PasswordAuthentication"?
Riccardo SCE

@TSERiccardo: Ніхто не відповів на ваше запитання? Соромно, звинувачуйте ТАК!
Тимо

1
@RiccardoSCE За даними сторінки sshd_config, стандартним для параметра PasswordAuthentication є "так".
Морська зірка

53

Зауважте, що налаштування PasswordAuthentication не контролює ВСІ на основі пароля аутентифікації. ChallengeResponseAuthentication зазвичай також запитує паролі.

Підтримка PasswordAuthentication підтримує схему аутентифікації «пароль», визначену в RFC-4252 (розділ 8). Підтримка керування ChallengeResponseAuthentication підтримує схему аутентифікації „інтерактивна клавіатура”, визначену в RFC-4256. Схема «автентифікації на клавіатурі» аутентифікації теоретично могла задавати користувачеві будь-яку кількість багатопрофільних питань. На практиці він часто запитує лише пароль користувача.

Якщо ви хочете повністю відключити автентифікацію на основі пароля, встановіть BOTH PasswordAuthentication і ChallengeResponseAuthentication на "ні". Якщо ви налаштовані на ремінці та підвіски, подумайте, як встановити UsePAM на "ні".

Аутентифікація на основі публічного / приватного ключа (увімкнена параметром PubkeyAuthentication) - це окремий тип аутентифікації, який, звичайно, не передбачає надсилання паролів користувача на сервер, звичайно.

Дехто стверджує, що використання ChallengeResponseAuthentication є більш безпечним, ніж PasswordAuthentication, оскільки його складніше автоматизувати. Тому вони рекомендують залишити функцію PasswordAuthentication вимкнено, поки вимкнути ChallengeResponseAuthentication. Ця конфігурація також заохочує (але не обов'язково перешкоджає) використанню автентифікації publickey для будь-яких автоматизованих системних входів. Але оскільки SSH є мережевим протоколом, сервер не може гарантувати, що відповіді на ChallengeResponseAuthentication (він же "клавіатурно-інтерактивна") насправді надається користувачем, який сидить за клавіатурою, доки завдання завжди виникають і полягає лише у тому, щоб запитати у користувача її пароль.


7
Я би вдячний деяким поясненням того, що UsePAMробить ...
Олексій

3

Аутентифікація пароля - це найпростіша реалізація, оскільки нічого робити. Лічильник полягає в тому, що ви надсилаєте свій пароль через зашифроване з'єднання на сервер. Це може бути проблемою безпеки, якщо сервер був порушений, оскільки пароль може бути захоплено.
За допомогою відкритого ключа ваш пароль не передається серверу, він більш захищений, але він потребує більшої настройки.


Ця відповідь трохи стара, але я хотів би додати щось: чудова річ про аутентифікацію Pubkey - це те, що секрети взагалі не передаються на сервер. Приватний ключ залишається таємним на вашому комп’ютері, тобто ви не можете випадково передати будь-який секрет на компрометований або MITM-сервер. Тож Pubkey, безумовно, сприятливий для авторизації пароля. Але так чи інакше, так, автентифікацію пароля реалізувати набагато простіше.
січень D

Це не було б клопотанням налаштувати це, нарівні з тим, що лінуватися не робити цього.
судо

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.