На лезвии ножа Andrey Matveev Хакер, номер #075, стр. 075-052-4 # pkg_add mini_sendmail-chroot-1.3.4.tgz Тут возникает еще одна неприятность: PHP пытается запустить mini_sendmail с помощью библиотечной функции popen(3), которая занимается тем, что создает программный канал, форкает дочерний процесс и вызывает в нем оболочку. Соответственно, в /var/www/bin придется разместить еще и копию командного интерпретатора: # cp -p /bin/sh /var/www/bin/sh Разобравшись с этой нетривиальной задачей, возвращаемся к прикручиванию PHP: скопируем в chroot'ный каталог /var/www статическую библиотеку libphp4.so и рекомендуемую версию файла php.ini: # mkdir -p /var/www/php/includes # cp /usr/local/lib/php/libphp4.so /var/www/php/includes # cp /usr/local/share/doc/php4/php.ini-recommended /var/www/conf/php.ini # chown root:www /var/www/conf/php.ini /var/www/php/includes/libphp4.so # chmod 640 /var/www/conf/php.ini В конфиге php.ini отредактируем пути для правильной работы PHP: # vi /var/www/conf/php.ini include_path = ".:/pear/lib:/var/www/pear/lib:/php/includes:/var/www/php/includes" sendmail_path = "/bin/mini_sendmail -t -i" И активируем PHP-расширение mysql: # /usr/local/sbin/phpxs -a mysql Сажаем индейца в песочницу Прежде чем разбирать httpd.conf, установим систему обнаружения вторжений mod_security, выполненную в виде динамически загружаемого модуля для Apache: # pkg_add mod_security-1.8.3.tgz # /usr/local/sbin/mod_security-enable Вот теперь непосредственно переходим к главному конфигурационному файлу индейца: # vi /var/www/conf/httpd.conf // Здесь приведен не весь файл, а только кусок. Полную версию забирай с диска. // Подгружаем необходимые модули LoadModule php4_module /usr/lib/apache/modules/libphp4.so LoadModule security_module /usr/lib/apache/modules/mod_security.so // Включаем IDS <IfModule mod_security.c> SecAuditEngine On SecAuditLog logs/audit_log SecFilterEngine On // Выявляем атаки типа Command Execution SecFilter /etc/passwd SecFilter /bin/ls // Выявляем атаки типа Directory Traversal SecFilter "\.\./" // Выявляем атаки типа Cross-Site Scripting SecFilter "<(.|\n)+>" SecFilter "'" SecFilter "\" " SecFilter "<[[:space:]]*script" SecFilter "<.+>" // Выявляем атаки типа SQL Injection SecFilter "delete[[:space:]]+from" SecFilter "insert[[:space:]]+into" SecFilter "select.+from" </IfModule> Визуальная админка PHPMyAdmin представляет собой набор PHP-скриптов для полного управления сервером MySQL. Идеально подходит для поклонников визуального администрирования и тех, у кого синтаксис SQL-запросов вызывает затруднения. Также с помощью PHPMyAdmin удобно выполнять рутинные операции по бэкапу, созданию и модификации баз данных, таблиц, пользователей и т.д. # pkg_add phpMyAdmin-2.5.7-pl1.tgz |