p align="left">$ Is -1 drwxrwxrwt -r-sr-sr-x 5 sys 3 root sys 367 sys 15688 Dec 19 Oct 25 20:29 /tmp 1995 /usr/bin/passwd Таблиця 1.5. Операції зміни атрибутів файлу |
Операція | Команда/системний виклик | Кому дозволено | | Зміна прав доступу | chmod(1) | Власник | | Зміна додаткового атрибута Sticky bit | chmod(1) | Суперкористувач | | Зміна додаткового атрибута SGID | chmod(1) | власник, причому його GID також повинний збігатися з ідентифікатором групи файлу | | |
Користувачі системи Зараз же наша задача -- розібратися, яку інформацію зберігає система про користувача. Для цього розглянемо фрагмент файлу /etc/passwd: root :x:0:l:0000-Adinin( 0000) : /: /bin/bash daemon:х:1:1:0000-Admin(0000):/: bin:x:2:2:OOOO-Admin(OOOO):/usr/bin: sys:x:3:3:0000-Admin(0000) :/: adm:x:4:4:0000-Admin(0000):/var/adm: lp:x:71:8:0000-lp(0000):/usr/spool/lp: uucp:x:5:5:0000-uucp(0000):/usr/lib/uucp: nobody:x:60001:60001:uid no body:/: andy:x:206:101:Andrei Robachevsky:/home/andy:/bin/bash Кожен рядок файлу є записом конкретного користувача і має наступний формат: name-.passwd-encod:UID:GID:comments:home-dir:shell -- всього сім полів (атрибутів), розділених двокрапками. Розглянемо докладніше кожний з атрибутів: |
name | Реєстраційне ім'я користувача. Це ім'я користувач вводить у відповідь на запрошення системи login. Для невеликих систем ім'я користувача досить довільне. У великих системах, у яких зареєстровані сотні користувачів, вимоги унікальності змушують застосовувати визначені правила вибору імен. | | Password-encod | Пароль користувача в закодованому виді. Алгоритми кодування відомі, але вони не дозволяють декодировать пароль. При вході в систему пароль, що набирається, кодується, і результат порівнюється з полем Password-encod. У випадку збігу користувачу дозволяється ввійти в систему. Навіть у закодованому виді доступність пароля представляє деяку небез-пеку, тому часто пароль зберігають в окремому файлі. Користувач, у даному полі якого є символ * , ніколи не зможе потрапити в систему. Як правило такий пароль мають псевдокористувачі. | | UID | Ідентифікатор користувача є внутрішнім представленням користувача в системі. Цей ідентифікатор успадковується задачами, що запускає користувач, і файлами, що він створює. По цьому ідентифікаторі система перевіряє користувальницькі права (наприклад, при запуску програми чи читанні файлу). Суперкористувач має UID == 0, що дає йому необмежені права в системі. | | GID | Визначає ідентифікатор первинної групи користувача. Цей ідентифікатор відповідає ідентифікатору у файлі /etc/group, що містить ім'я групи і повний список користувачів, що є її членами. Приналежність користувача до групи визначає додаткові права в системі. Група визначає загальні для всіх членів права доступу і тим самим забезпечує можливість спільної роботи (наприклад, спільного використання файлів). | | comments | Як правило, це повне "реальне" ім'я користувача. Це поле може містити додаткову інформацію, наприклад, телефон або адрес електронної пошти. Деякі програми (наприклад, flnger(l) і поштові системи) використовують це поле. | | home-dir | Домашній каталог користувача. При вході в систему користувач виявляється в цьому каталозі. Як правило, користувач має обмежені права в інших частинах файлової системи, але домашній каталог і його підкаталоги визначають область файлової системи, де він є повноправним хазяїном. | | shell | Ім'я програми, що FREEBSD використовує як командного інтерпретатора. При вході користувача в систему FREEBSD автоматично запустить зазначену програму. Звичайно це один зі стандартних командних інтерпретаторів /bin/sh (Bourne shell), /bin/csh (C shell) чи /bin/ksh (Kom shell), що дозволяють користувачу вводити команди і запускати задачі. В принципі, у цьому полі може бути зазначена будь-яка програма, наприклад, командний інтерпретатор з обмеженими функціями (restricted shell), клієнт системи керування базою даних чи навіть редактор. Важливо те, що, завершивши виконання цієї задачі, користувач автоматично вийде із системи. Деякі системи мають файл /etc/shells, що містить список програм, що можуть бути використані як командний інтерпретатор. | | |
Паролі Наявність пароля дозволяє захистити ваші дані, а можливо (якщо суперкористувач) і всю систему в цілому. Уточнимо: наявність хорошого пароля, тому що невірно обраний пароль -- серйозний недолік у безпеці системи. Призначити або змінити пароль можна командою passwd(l). Звичайний користувач може змінити свій пароль, адміністратор може призначити пароль будь-якому користувачу. Перед запуском програми passwd(l) варто тримати в голові загальне правило вибору пароля: пароль повинний добре запам'ятовуватися і бути важким для підбору. Не рекомендується записувати пароль, його необхідно запам'ятати. Власне прізвище, кличка улюбленого собаки, рік і місяць народження, безумовно легкі для запам'ятовування, але такі паролі неважко підібрати. Багато систем пропонують пароль, згенерований самою системою. Передбачається, що він зовсім позбавлений якого-небудь змісту, тобто не містить імен, і звань і взагалі яких-небудь вимовних слів. Хоча система пропонує його у вигляді, зручному для запам'ятовування, це не завжди допомагає. Багато систем вимагають, щоб пароль задовольняв наступним вимогам: довжина пароля не повинна бути менше шести символів; пароль повинний включати принаймні 2 алфавітних символи й одну цифру або спеціальний символ; пароль повинний містити хоча б 3 символи, що не зустрічалися у вашому попередньому паролі. Паролі відіграють значну роль у забезпеченні безпеки системи. Загальні рекомендації, адресовані насамперед адміністраторам, можна звести до наступного: 1. У системі не повинне існувати незахищених користувальницьких входів. Це відноситься як до користувальницьких входів без пароля, так і до входів користувачів, що залишили систему. Якщо користувач тривалий час не працює в системі, видалите його чи запис хоча б захистите його вхід символом '*' у поле пароля. 2. Якщо система допускає, установіть мінімальну довжину пароля. У залежності від вимог безпеки в системі це число може варіюватися від 8 до 12. 3. Завжди змінюйте пароль у наступних випадках: * якщо хто-небудь довідався ваш пароль. * якщо користувач більше не працює у вашій системі, усі паролі, що він знав, повинний бути змінений. * якщо міняється адміністратор системи, повинні бути змінені всі системні паролі. * якщо у вас з'явилася підозра, що файл паролів був зчитаний по мережі, буде розумним перемінити всі паролі в системі. 4. Пароль адміністратора повинний періодично мінятися, незалежно від обставин. 5. Це може показатися дивним, але не варто змушувати користувачів змінювати паролі надто часто. Швидше за все, у цьому випадку користувач вибере не кращий пароль. Але змінювати паролі усе-таки випливає. Частота зміни залежить від ступеня приступності вашої системи (ізольована станція, сервер з мережним доступом, наявність мережних екранів). Не применшуйте роль паролів у системі. Стандартні користувачі і групи Після установки FreeBSD звичайно вже містить кілька зареєстрованих користувачів. Перелічимо основні з них (у різних версіях системи UID цих користувачів можуть незначно відрізнятися): |
Ім'я | Користувач | | Root | Суперкористувач, адміністратор системи, UID=0. Користувач з цим ім'ям має необмежені повноваження в системі. Для нього не перевіряються права доступу, і в такий спосіб він має всі "важелі" для керування системою. Для виконання більшості функцій адміністрування потрібно вхід саме з цим ім'ям. Слід зазначити, що root -- це тільки ім'я. Насправді значення має UID. Любою користувач з UID=0 має повноваження суперкористувача | | Adm | Псевдокористувач, що володіє файлами системи ведення журналів | | Bin | Звичайно це власник усіх файлів, що виконуються, що є командами FreeBSD | | Cron | Псевдокористувач, що володіє відповідними файлами, від імені якого виконуються процеси підсистеми запуску програм за розкладом | | ip чи lpd | Псевдокористувач, від імені якого виконуються процеси системи друкування, що володіє відповідними файлами | | News | Псевдокористувач, від імені якого виконуються процеси системи телеконференцій | | Nobody | Псевдокористувач, використовуваний у роботі NFS | | Uucp | Псевдокористувач підсистеми FreeBSD -to- FreeBSD copy (uucp), що дозволяє передавати поштові повідомлення і файли між FreeBSD -хостами | | |
Нова система також містить ряд передвстановлених груп. Оскільки групи, як правило, менш важливі, приведемо лише дві категорії: |
Ім'я | Група | | root чи wheel | Адміністративна група, GID=0 | | User чи users чи staff | Група, у яку за замовчуванням включаються всі звичайні користувачі FreeBSD | | |
Завдання на роботу 1. Ввійти в мережу під ім'ям root 2. Створити свій особистий об'єкт myname і домашню директорію 2.1 Створимо користувача myname 2.2 Створити домашні директорії 2.3 Переконатися в створенні директорій 2.4 Перевірити їх права доступу 3. Призначити користувачу myname і групі myname права, необхідні для зміни інформації 3.1 Забрати усі права доступу 3.2 Призначити права доступу, для того щоб користувач і група myname одержали право на можливість зміни інформації в об'єкті 4. Призначити користувачу myname і групі myname права, необхідні для того, щоб вони могли запускати файли, що виконуються 5. Призначити користувачу myname і групі myname права, необхідні для того, щоб вони могли проглядати директорію 6. Вийти з мережі 7. Ввійти в мережу під ім'ям myname 8. 8.1 Перевірити права доступу директорій folder і mydir 8.2 Переконатися, що в користувача myname є права тільки на директорію folder 9. Видалити всі створені об'єкти 9.1 Видалити користувача myname
Страницы: 1, 2, 3
|