Виртуални хостове Apache настройки за сигурност за Debian
С помощта на тези инструкции, можете да създадете сигурни домакини на правата за достъп, така че всеки хост може да има достъп до данни, предназначени само за себе си.
Да вземем за пример, да създадете виртуален хост "site.com".
Стъпка 0 - Създаване на конфигурационен файл виртуален хост
Копирайте стандарт конфигурационен файл, както изходния код:
Стъпка 1 - Права на потребителя
отделен потребител ще бъде създаден за всеки хост. Начало директории в същото време ще се съхраняват на път / Var / WWW / userdir.
Създаване на потребителски site.com със създаването на собствената директория на / Var / WWW /. флагове:
-м - за създаване на папката автоматично;
-U - създаването на едноименния група, в която ще бъде поставен на потребителя;
-и - посочване на черупката, в нашия случай - черупката отсъства.
Питам паролата на потребителя:
Разположен на папка на потребителя:
Създаване на папка за уеб сайта:
Създаване на папка за съхранение на сесии / изтегляне / трупи
Позволено, за да се отстрани само собственика на папка:
Питам собственик на всички подпапки
Стъпка 2 - Apache Run като друг потребител
От Apache кутия работи от един и същи потребител за всички хостове, което е, нападателят, който е придобил достъп до един сайт може да чете файлове съседна проекти. За да се отстрани този недостатък, е необходимо да инсталирате модифицирана версия на Apache, наречена apache2-MPM-ITK. След инсталацията в конфигурацията на виртуални хостове можете да определите от какво потребител и група Apache трябва да работят за определен сайт.
Потребителят и група е низ в конфигурационния файл:
Тук, както и група задаваме на WWW данни от интернет не може да редактирате файловете на нашия проект, с изключение на тези, които са прави о + w Така че е необходимо да се забрани на конзолата на потребителя WWW-данни:
Стъпка 3 - Отделни ПТУ за всеки сайт
Задачата на отделна временна папка за всеки сайт, включват уязвимост ние предотврати сесии от следващия сайт. За това ние използваме upload_tmp_dir директиви и session.save_path:
Стъпка 4 - PHP забрана да отиде по-горе домашната директория на потребителя
Забрана изход указател е настроен директива open_basedir:
Стъпка 5 - Съхранение на трупи в папката на потребителя
Файлове за съхранение на логове за грешки и достъп, дадени от следните директиви:
В резултат на изхода е следната конфигурация:
Стъпка 6 - Приключете настройките
След като запазите конфигурацията, трябва да активирате виртуален хост:
И след това отново се чете конфигурационния:
Етап 7 - Проверка
Създаване на тестова уеб страница, за виртуален хост:
И ние напиши следния код:
- Изключване на опасни функции в PHP
- MyISAM да InnoDB и обратно
- Конфигуриране на FTP-сървър в Debian / Ubuntu: безопасна опция
- Изпращане на електронна поща от PHP: поща () функция
- Apache виртуални хостове: кратък наръчник за Debian / Ubuntu