Freebsd - управління користувачами і обліковими записами

Управління користувачами і обліковими записами

FreeBSD - розрахована на багато користувачів ОС, дозволяє одночасну роботу безлічі користувачів на одному комп'ютері

З кожної обліковим записом в системі FreeBSD пов'язана певна ідентифікаційна інформація:

  • Ім'я користувача
  • пароль
  • ID користувача (User ID, UID) - номер від 0 до 65535 (може бути і більше), що використовується для однозначної ідентифікації користувача в системі. Будь-яка команда FreeBSD, що дозволяє вам вказувати ім'я користувача, насамперед перетворює його до UID. Також можна створити кілька облікових записів з різними іменами користувачів, але з одним UID
  • ID групи (Group ID, GID) - це номер від 0 до 65535, який використовується для однозначної ідентифікації головною групи, до якої належить користувач.
  • Клас логіна - це розширення до механізму груп для більш гнучкого управліннями користувачами.
  • Час зміни пароля - змушує деяких користувачів міняти паролі після закінчення певного часу.
  • Час закінчення дії облікового запису - обмежує тривалість життя облікового запису
  • Повне ім'я користувача
  • Домашній каталог
  • Оболонка користувача - засіб для взаємодії з системою. Список доступних оболонок для користувача можна подивитися у файлі / etc / shells, можна встановити і додати в цей файл.

У FreeBSD існує чотири файли, які мають відношення до БД облікових карток. Всі вони знаходяться в директорії / etc.

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

Тому, виставили відповідні права на ці файли:

spwd.db і pwd.db - призначені для прискорення пошуку.

Синтаксис файлу /etc/master.passwd:

Кожна нова рядок в файлі описує користувача, вона містить в собі стовпці розділені (:).

Стовпці по порядку:

Поле gecos - General information повністю може складатися з:


При створенні файлу / etc / passwd з файлу /etc/master.passwd поля class, change, expire видаляються, а пароль замінюється на *.
Поле логіна (name) не може починатися з символу (-), так само не радиться використовувати великі літери в імені користувача і розділяти логін символом (.), Що може викликати проблеми при роботі з поштою.

Існує 3 основних типи облікових записів:

  • привілейований користувач (управління системою без обмежень)
  • системні користувачі (запускають сервіси)
  • Облікові записи користувачів

Приклади системних користувачів:

Програми для роботи з обліковими записами:

1) adduser - проста і інтерактивна програма для додавання користувачів
Вона створює записи в системних файлах passwd і group і копіює файли настройки за замовчуванням з / usr / share / skel.

2) rmuser - інтерактивна програма для повного видалення користувачів.
Ця програма робить:

  • Видалення запису користувача з crontab.
  • Видаляє завдання at, що належать користувачеві.
  • Знищує всі процеси, що належать користувачеві.
  • Видаляє користувача з локального файлу паролів.
  • Видаляє домашній каталог користувача (якщо він належить користувачеві).
  • Видаляє належить користувачеві вхідну пошту з / var / mail.
  • Видаляє всі файли, що належать користувачеві, з каталогів з тимчасовими файлами, наприклад / tmp.
  • Видаляє ім'я користувача з усіх груп, яким воно належить, в / etc / group (якщо група користувача порожня - видаляє і її).

3) chpass - змінює інформацію в БД користувачів
root - може змінювати будь-яку інформацію.
звичайні користувачі - можуть змінювати тільки shell, Full Name і персональну інформацію. При виході треба підтвердити сой пароль.
chfn, chsh, ypchpass, ypchfn і ypchsh - це посилання на chpass.

4) passwd - це звичайний спосіб зміни власного пароля користувача, або пароля іншого користувача root-ом.
5) pw - потужна утиліта для роботи з користувачами. Має багато ключів, підходить для використання в скриптах.
6) vipw - утиліта допомагає швидко додати користувача або модифікувати його за допомогою файлу /etc/master.passwd. Після редагування автоматично запускає pwd_mkdb, тобто створює 3 додаткові файлу - passwd, pwd.db, spwd.db.
7) id - відображення імені користувача, UID і груп в яких він складається із зазначенням їх GID.
8) finger - відображає інформацію про системний користувача.
9) users - показує список поточних користувачів.
10) who - показує тих хто знаходиться в системі.
11) whoami - показує ефективний id користувача відповідний імені.
12) last - показує коли користувач користувався терміналом.
13) lastlogin - показує інформацію про останньому використанні терміналу.
14) lastcomm - показує список останніх виконуємо команд користувачем.
15) ac - показує час, який користувач знаходився в системі.
16) sa - показує статистику по користувачах.
17) chfn - зміна призначених для користувача даних.
18) groups - показує хто до якої групи складається.
19) chgrp - зміна групи.
20) chkgrp - перевірка синтаксису файлу груп.

Можна зробити що нас не буде видно в w, who, yawho, whowatch. Зате буде видно в процесах і в sockstat.


Класи облікових записів визначаються в /etc/login.conf
Кожному користувачеві присвоєно клас (default за замовчуванням), і кожному класу присвоєно набір характеристик.
Характеристика визначається у вигляді пари

Система не читає настройки в /etc/login.conf. вона звертається до файлу БД /etc/login.conf.db для прискорення доступу до даних.
Для створення /etc/login.conf.db з /etc/login.conf, виконайте наступну команду:


Обмеження на ресурси:

М'яке обмеження може налаштовуватися користувачем або додатком, але не може перевищувати жорстке обмеження.
Жорстке може бути зменшено користувачем, але ніколи не збільшено.
Більшість обмежень ресурсів застосовуються до процесів користувача, а не до користувача взагалі.

Кожне поле у ​​файлі /etc/login.conf може набувати таких значень:


Часто використовувані обмеження на ресурси:

Звернути увагу на те, що:

  • Процесам, що завантажуються при старті системи скриптами / etc / rc присвоюється клас daemon.
  • Багато обмеження застосовуються до окремих процесів, а не до користувача взагалі. Наприклад, установка openfiles в 50 означає, що кожен процес, запущений користувачем, може відкривати до 50 файлів. Таким чином, загальна кількість файлів, які можуть бути відкриті користувачем, обчислюється як openfiles * maxproc. Це також може бути застосовано до споживаної пам'яті.

Групи - просто список користувачів.
Імена груп зв'язуються з ID груп у файлі / etc / group. Група ідентифікується по імені і GID.
Файл / etc / group може бути безпечно відредагований вручну

Синтаксис файлу / etc / group:

Стовпці по порядку:

У групі може знаходиться не більше 200 користувачів. Максимальна довжина рядка в файлі / etc / group 1024 символів.

Схожі статті