Використання passwd і adduser для управління паролями на виділеному сервері linux

Розміщення серверів в надійних дата-центрах Європи. Відкрийте хмарний VPS / VDS сервер на швидких SSD за 1 хвилину!

Кращий хостинг:
- захистить дані від несанкціонованого доступу в охоронюваному європейському ЦОДі
- прийме оплату хоч в bitcoin.
- дозволить поставити свій дистрибутив

- захист від DDos-атак
- безкоштовний backup
- Uptime 99,9999%
- ЦОД - TIER III
- провайдер - TIER I

Підтримаємо російською мовою 24/7/365 Працюємо з юрособами і фізособами. Вам прямо зараз потрібно 24 ядра і 72 Gb RAM. Будь ласка!

Наші вигідні тарифи доведуть, що дешевий хостинг ви ще не знали!

Хвилинна справа: виберіть конфігурацію, оплатіть і CMS на VPS готова.
Money Back - 30 днів!

Банківськими картами, електронною валютою, через термінали Qiwi, Webmoney, PayPal, Новоплат і ін.

Задайте питання в службу підтримки 24/7/365

Знайдіть відповіді в нашій базі і познайомтеся з рекомендаціями

вступ

Паролі та аутентифікація - це поняття, з якими стикається кожен користувач, який працює в середовищі Linux. Дані теми охоплюють ряд різних конфігураційних файлів і інструментів.

Даний посібник розглядає деякі базові файли, такі як «/ etc / passwd» і «/ etc / shadow», а також такі інструменти для настройки перевірки автентичності, як команди «passwd» і «adduser».

Для демонстрації прикладів використовується виділений сервер Ubuntu 12.04. але будь-який сучасний дистрибутив Linux працює таким же чином.

Що таке файл «/ etc / passwd»?

Для початку потрібно розглянути файл під назвою «/ etc / passwd», який насправді не містить паролів.

Колись цей файл зберігав хешировать паролі всіх користувачів в системі. Проте, з міркувань безпеки пізніше ця відповідальність була перенесена в окремий файл.

Отже, що ж знаходиться в файлі «/ etc / passwd»?

less / etc / passwd
root: x: 0: 0: root: / root: / bin / bash
daemon: x: 1: 1: daemon: / usr / sbin: / bin / sh
bin: x: 2: 2: bin: / bin: / bin / sh
sys: x: 3: 3: sys: / dev: / bin / sh
sync: x: 4: 65534: sync: / bin: / bin / sync
games: x: 5: 60: games: / usr / games: / bin / sh
man: x: 6: 12: man: / var / cache / man: / bin / sh
.

Перше, на що варто звернути увагу: цей файл доступний для непривілейованих користувачів.

Розглянемо формат файлу.

Читання файлу «/ etc / passwd»

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

Щоб пояснити, яка саме інформація міститься в рядках даного файлу, потрібно детально розглянути один рядок.

Поля інформації розділяються двокрапкою (:). Кожен рядок типового Linux-файлу «/ etc / passwd» містить 7 полів:

У міру додавання користувачів за допомогою таких команд, як «adduser» і «useradd», або з установкою більшої кількості сервісів цей файл буде рости. Інформація про новий користувача буде додана в кінці даного файлу.

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

Що таке «/ etc / shadow»?

Фактичні дані про паролі зберігаються у файлі з ім'ям «/ etc / shadow».

Даний файл насправді не містить паролів у вигляді простого тексту. Замість цього, він використовує функцію виведення ключів для створення випадкових даних. Ось що зберігається в цьому файлі.

Функція виведення ключів - це алгоритм, який створює при введенні одних і тих же даних певний хеш. Такий же алгоритм виконується на пароль, який дається в процесі аутентифікації, і це значення порівнюється зі значенням в цьому файлі.

Майте на увазі, даний файл, на відміну від файлу «/ etc / passwd», не доступний дл прочитання непривілейованими користувачами.

Читання файлу «/ etc / shadow»

Щоб відкрити файл «/ etc / shadow», введіть:

sudo less / etc / shadow
root: $ 6 $ mJD3Rsj4 $ xUa7jru6EEGTXnhwTfTT26 / j8M5XiQvUl6UH32cfAWT / 6W9iSI5IuIw5OOw4khwrsOHPyMwfCLyayfYiVdhAq0: 15952: 0: 99999: 7.
daemon: *: 15455: 0: 99999: 7.
bin: *: 15455: 0: 99999: 7.
sys: *: 15455: 0: 99999: 7.
sync: *: 15455: 0: 99999: 7.
games: *: 15455: 0: 99999: 7.
man: *: 15455: 0: 99999: 7.
.

Як і в файлі «/ etc / passwd», кожен рядок містить інформацію про окремого користувача, а кожне поле відділяється символом двокрапки.

Для прикладу можна розглянути один рядок даного файлу:

Файл «/ etc / shadow» містить наступні поля:

Зміна пароля

Для зміни паролів користувачів використовується команда «passwd».

За замовчуванням ця команда змінює пароль поточного користувача і не вимагає особливих привілеїв.

Щоб змінити пароль іншого користувача, потрібні привілеї адміністратора. Для цього використовується наступний синтаксис:

sudo passwd username

Буде запропоновано ввести відповідний пароль для команди «sudo», потім можна буде ввести новий пароль і підтвердити його.

Якщо порівняти значення хеш в файлі «/ etc / shadow», можна побачити, що після введення команди passwd воно змінилося.

Створення нового користувача

Нового користувача можна створити за допомогою декількох команд.

Найпростіший спосіб - використовувати команду «adduser». У системах Ubuntu дана команда пов'язана зі скриптом «perl», який обробляє створення користувача.

Команду можна викликати наступним чином:

На даному етапі з'явиться кілька запитань, які допоможуть внести необхідну інформацію в файли «/ etc / passwd» і «/ etc / shadow».

tail -1 / etc / passwd
demo: x: 1000: 1000: test, room, work phoneme phone, other: / home / demo: / bin / bash

Як можна бачити, дана команда використовує поле для приміток в своїх інтересах. Решта поля заповнені належним чином.

sudo tail -1 / etc / shadow
demo: $ 6 $ XvPCmWr4 $ HXWmaGSeU5SrKwK2ouAjc68SxbJgUQkQ.Fco9eTOex8232S7weBfr / CMHQkullQRLyJtCAD6rw5TVOXk39NAo /: 15952: 0: 99999: 7.

За допомогою цих простих інструментів можна змінити реєстраційну інформацію системи.

Після внесення змін важливо перевірити, чи можете ви увійти в систему. Також необхідно перевірити права на ідентифікаційні файли, щоб зберегти функціональність сервера і забезпечити йому безпеку.

Схожі статті