Аутентифікуйте облікові дані користувача Unix за допомогою веб-браузера


1

Хто-небудь може дати мені поради про те, як аутентифікувати облікові дані користувача Unix через браузер?

Я в основному надаю доступ до перегляду деяких файлів, і я хочу переконатися, що користувачі аутентифіковані, але не хочуть робити весь додатковий пароль і ім'я користувача, яке вони повинні пам'ятати.


запитайте користувача про ім'я користувача / пароль, обчислить хеш пароля і порівняйте його з / etc / shadow. Проблема теневого файлу видно тільки для root
jet

1
чи буде дуже поганою практикою мати webapp отримати корінь для запуску скрипта для порівняння спроб хеша пароля з хешем / etc / shadow?
clifgray

@clifgray Дуже погана практика.
JakeGould

чи є альтернативи або інструменти, які дозволяють мені ще порівнювати спроби пароля з unix одним зовнішнім для самого логіна unix?
clifgray

Відповіді:


1

Їх небагато прозорий методів для цього, на жаль.

  • У централізовано керованій мережі ви можете використовувати Kerberos, з mod_auth_gssapi або mod_auth_kerb на стороні веб-сервера (так званий "HTTP Negotiate"). Kerberos дуже безпечний, але може викликати біль у налаштуванні для використання в Інтернеті (не всі браузери підтримують його, і лише деякі дозволяють його за замовчуванням).

  • Якщо всі комп'ютери довіряються (тобто користувачам гарантовано, що вони не втручаються в корінні програми), протокол Ident (RFC 1413) є можливим, але аутентифікація, яку він надає, є дуже слабкою.

Але найчастіше, єдиним варіантом є запит пароля.

  • Якщо користувачі мають облікові записи в /etc/passwd, як згадувалося у вашому коментарі, виконання привілейованої програми на жаль тільки спосіб перевірити отриманий пароль проти /etc/shadow.

    Якщо ви зробите це, не пишіть свої власні сценарії sudo, бо ви волі отримати першу перевірку неправильності введення даних, і тому це вже вирішена проблема. Підібрати щось відоме, наприклад Кіра saslauthd (який може працювати -a pam режим); таким чином ваш веб-сайт не потребуватиме жодних привілеїв за межами підключення до saslauthd гніздо.

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