Перекладено Добровольським А.М.© 2001.
Вперед Що де є Назад


7. Основні правила безпеки

7.1 Вступ

Людина влаштована таким чином, що задумується про питання безпеки лише після того, як відчує на собі наслідки недбалого ставлення до цієї проблеми.
Стосовно комп'ютерної безпеки, найчастіше лише аварія системи або втрата важливих данних примушує згадати про те, що цього можно було легко уникнути, дотримуючись не складних правил:
Пам'ятайте також, що автори комплекту постаралися зробити вашу систему безпечною "з коробки" і не псуйте цей захист не подумавши.

7.2 Чому неможна працювати з правами root

Ні для кого не секрет, що Linux є багатозадачною операційною системою. Це значить, що вона розроблена з розрахунком на одночасну роботу декількох користувачів. З урахуванням цього, уся буденна робота під Linux, не пов'язана з наглядом за системою, може і повинна виконуватися звичайними користувачами. Цього правила необхідно дотримуватися для того, щоб:
    вірогідність того, що Ваша випадкова помилка зіпсує всю систему, була зведена до мінімуму;
    вірогідність того, що можливі помилки в програмах, що Ви використовуєте, зіпсують всю систему, була зведена до мінімуму.
    На жаль, немала частина ПО написана безграмотно с точки зору security. Запускаючи такі програми звичайним користувачем, Ви тим самим автоматично ускладнюєте процедуру вторгнення до Вашої системи потенційних зламників.
В Linux-Mandrake RE налаштування для користувача root визначаються специфікою його завдань, і тому не пристосовані для щоденної діяльності й лише обмежено локалізовани.

7.3 Налаштування sudo

Sudo - це програма, розроблена на допомогу наглядачеві за системою, що дозволяє делегувати ті чи інші привілейовані ресурси користувачу, з веденням протоколу роботи. Основна ідея - делегувати користувачам як можно меньше прав, але наряду з цим рівно стільки, скільки треба для вирішення поставлених завднь.
Sudo надає можливість користувачам виконувати команди від імені root'а або іншого користувача. Правила, що їх використовує sudo для прийняття рішення про надання доступу, знаходяться в файлі /etc/sudoers. Мова написання правил для sudo та приклади використання детально викладені в sudoers(5). Крім того, приклад правил, що надають користувачам які є членами групи rpm, можливість встановлювати, поновлювати та видаляти пакети в системі, наведено в файлі /usr/share/doc/sudo-<назва_версіі>/rpm.sudoers.
Для редагування файла /etc/sudoers треба використовувати програму visudo, яка перевіряє синтаксис і тим самим дозволяє уникнути помилок в правилах.
В більшості випадків грамотне налаштуання sudo робить роботу root'ом непотрібною.

7.4 Налаштування firewall

Firewall є, мабуть, найбільш важливим компонентом в системі захисту внутрішньої мережи від вторгнень з зовні та регулювання доступу користувачів внутрішньої мережи до ресурсів за її межами.
Створення firewall'а починається з визначення політики безпеки в тій мережі, для якої він розроблюється. Для цього:
    визначте служби, що використовуються;
    визначте групи користувачив;
    визначте, до яких служб які групи користувачів повинні мати доступ;
    проголосіть всі інші форми доступу забороненими.
Як тільки політика безпеки для мережи визначена, можно переходити до створення правил для певного firewall'а. У випадку ядра з серіі 2.2 синтаксис правил має назву ipchains, а для ядра з серіі 2.4 - iptables.
Самі правила можно створювати руками або за допомогою допоміжних інструментів налаштування, наприклад, gfcc.
Рекомендаціі з побудови політики безпеки мережи, а також детальну документацію по ipchains та iptables можно знайти в

7.5 Secure Shell

Одне з самих розповсюджених завдань, що виникають під час роботи в мережі - віддалений shell-доступ до інших машин та надання такого доступу.
Для вирішення цієї проблеми використовується ставший вже традиційним протокол SSH (Secure Shell). На відміну від застарілих протоколів, таких як telnet та rsh/rlogin/rcp, які передають данні прямим текстом та можуть прослуховуватися звичайними засобами та нестійкі до інших атак, SSH встановлює з'єднання з віддаленим комп'ютером, захищене від
    прослуховування данних, що передаються по такому з'єднанню;
    маніпулювання данними на шляху від клієнта до обслуговувача;
    підміни клієнта або обслуговувача шляхом маніпулювання IP-адресами, DNS або маршрутизією.
На додаток до відмінних характеристик в галузі забезпечення безпечного з'єднання клієнт-обслуговувач, SSH має наступні можливості:
    стиснення данних, що передаються;
    тунелювання каналов в межах встановленого з1єднання, а також тунелювання з'єднань з X-обслуговувачем;
    широка розповсюдженість: існують варіанти SSH для самих різних апаратних платформ та операційних систем.
OpenSSH - це варіант, що входить до комплекту SSH, вона підтримує версіі 1.3, 1.5 та 2.0 протокола SSH, та розповсюджується на умовах ліцензіі BSD. Ця версія має:
    програми клієнти - ssh, scp та sftp - використовуються для запуска програм на віддалених обслуговувачах та копіювання файлів в мережі;
    порграми обслуговувачі - sshd, sftp-server - використовуються для надання доступу за протоколом SSH;
    допоміжні програми: make-ssh-known-hosts, rescp, ssh-keygen, ssh-add, ssh-agent, ssh-copy-id, ssh-keyscan.
В подробицях відомості про використання цих програм міститься в man-сторінках, що до них додаються.

7.6 Вибір рівня захисту в Mandrake

Можливість вибору рівня захисту - власна розробка MandrakeSoft. Прочитайте цей розділ особливо уважно. Вибір надто низького рівня робить систему беззахисною, серед усього, і від ваших випадкових дій, але, невиправданий вибір високого рівня зробить роботу в ній незручною.
Основою системи визначення рівня захисту є пакет msec, що входить в число базових, встановлюються завжди. Для зручності налаштування створено також програма взаємодії з користувачем draksec. Стандартно, draksec дозволяє обрати з трьох рівнів захисту, проте, якщо її запустити з параметром -expert, отримаєте вибір з чотирьох рівнів. Досвічений користувач може також визначити свій рівень, вивчивши механізм роботи msec.
Якщо Ви не бажаєте користуватися draksec, то можете викликати
/usr/sbin/msec x
де x -рівень захисту, або custom, якщо Ви бажаєте самі призначити всі параметри, що визначають захист системи.
Linux-Mandrake RE пропонує 3 рівня: 2-"Слабий", 3-"Середній" та 4-"Високий", які ми розглянимо з подробицями.
Рівень 2 (він визначений слабким) прийнятний для тих, хто хоче дозволити звичайним користувачам доступ, наприклад, до звукових можливостей системи без вводу пароля root. На цьому рівні вже проводяться перевірки на захищеність системи та "видаються" попередження про можливі загрози. Проте, якщо Ваша машина підключена до місцевої мережи та/або Internet, то добре подумайте, чи варто ризикувати. Ми радимо цей рівень для початківців.
Рівень 3 (середній) відповідає звичайному рівню захисту в попередніх версіях Linux-Mandrake RE та Red Hat. В цьому режимі виконується перевірка відкритих портів системи, проте, вони залишаються відкритими, доступними для всіх. Для роботи на цьому рівні потрібні базові знання Linux, але для робочої станціі, що підключена до Internet, він є цілком прийнятним. Якщо Ви не розбираєтесь досконало в питаннях захисту системи, але не новачок в Linux, то, швидше за все, цей рівень - для вас.
Рівень 4 (високий). Цей рівень задовольнить прискіпливих наглядачів за системою. Стандартно, доступ в систему ззові заботонено.
Порівняльні характеристики рівнів захисту наведено в таблиці.


?/div>
2
3
4
Загальна перевірка захисту 
Так
Так
Так
umask для користувача
022
022
027
umask для root
022
022
022
Вхід без пароля 
Ні
Ні
Ні
З'єднання з X-обслуговувачем дозволено
Місц. корист.
Нікому
Нікому
Доступ користувачів до audio дозволено
Так
Ні
Ні
Поточний каталог в PATH
Ні
Ні
Ні
Попередження в файлі /var/log/security.log
Так
Так
Так
Попередження пересилаються на консоль
Ні
Ні
Так
Попередження в syslog
Так
Так
Так
Попередження відсилаються root по e-mail
Так
Так
Так
Перевірка на наявність новых або видалених suid root файлів
Так
Так
Так
Перевірка контрольной суми файлів suid root
Так
Так
Так
Перевірка файлів, загально доступних на запис
Так
Так
Так
Перевірка прав доступу до файлів налаштувань та каталогам користувачів
Ні
Так
Так
Перевірка наявності нових або видалених suid group файлів
Ні
Так
Так
Перевірка безхозних файлів
Ні
Так
Так
Перевірка відкритих портів
Ні
Так
Так
Перевірка наявності паролей та їх прихованості (shadow)
Ні
Так
Так
Перевірка наявності паролей в shadow-файлі
Ні
Так
Так
Перевірка захисту кожен день опівночі
Ні
Так
Так
Всі повідомлення системи відображуються на 12-у консоль (/dev/tty12). Лише root може "ctrl-alt-del"
Ні
Ні
Ні
Невідомі для системи захисту служби заборонені
Ні
Ні
Так
Дозволено пароль LILO
Ні
Ні
Так
Дозволено з'єднання
Всім
Всім
Місц. корист.

 
Налаштування, що Ви зробили, будуть збережені в файлі etc/security/msec/security.conf.
Увага! Коли Ви задаєте питання до розсилки, то не забудьте вказати рівень захисту системи.

Вперед Що де є Назад