В статье "20 ways to Secure your Apache Configuration (http://www.petefreitag.com/item/505.cfm)" кратко описаны 20 способов увеличения безопасности Apache. Вот некоторые из них:- Сокрытие версии HTTP-сервера.
ServerSignature Off
ServerTokens Prod- Запрещение показа списка файлов в директориях
Options -Indexes- Запрещение SSI
Options -Includes- Запрещение CGI
Options -ExecCGI- Запрещение .htaccess
AllowOverride None- Использование mod_security
- Уменьшение таймаута
Timeout 45- Лимиты на размер данных передаваемых в запросе.
LimitRequestBody 1048576- Лимит размера данных для mod_dav
LimitXMLRequestBody 10485760- Установка числа процессов в MaxClients, которые сможет обработать система;
- Блокировка IP
Order Deny,Allow
Deny from all
Allow from 176.16.0.0/16- Тюнинг KeepAlive
MaxKeepAliveRequests 100
KeepAiveTimeout 15- Запуска Apache в chroot
URL: http://www.petefreitag.com/item/505.cfm
Новость: http://www.opennet.me/opennews/art.shtml?num=6597
Order Deny,Allow
Deny from allВсё. и никто не сломает.
=)
apachectl stop наверное надежнее.
Осталось выключить питание, порубить силовой кабель на куски, закрыть сервер в шкаф с крутым замком. В комнату со шкафом напустить свору голодных волкодавов. И главное-никакого инета :-)
> Лимиты на размер данных передаваемых в запросе.
>LimitRequestBody 1048576а как же закачка файлов больше 1Мб?
upload имею ввиду.
Никчёмная, бестолковая статья.
Все эти механизмы требуются для нормальной работы.
Даже версия сервера может помочь клиенту.
Волков бояться - в лес не ходить.
Присоединяюсь к хору.
не обязательно делать всё что прочитал :-)
это же советы, а не от начальства ;-)|^^^^^^^^^^^^^''^\| ||\____
| Водка-Водка | ||','''|'''''''\_____,
| _..... _ | ||__|'__|_____||<
'''''(@)'(@)''''''''''''''''''''''**|(@)(@)******|(@)*
А зачем запрещать .htaccess?
Я на оборот через него все права доступа указываю.
21-ое правило:
порезать сетевой кабель на куски
22-ое:
разбить вдребезги все внешние накопители
23-ее и последнее:
Спать в презервативе.
меня уже цитируют? приятно :)по теме: правила действительно бестолковые. С такими настройками больше проблем, чем пользы
Зря смеется, реально видел как у "неккккооотторых" хостингов апач под рутом пущен! Такие указание для "подооообных" хостов - академические!
У кого ТАК(см.выше) работает - тут не читают! :)
а под чем еще апач пускать? один процесс под рутом, остальные www:www
привелегии root используются только для байндинга на 80 порт, насколько я помню.
>а под чем еще апач пускать? один процесс под рутом, остальные www:wwwИмели в ввиду, что апачевый root процесс висит и форкает рутовых детей, которые используются, чтобы всякие mod_php выполняли скрипты от uid пользователя, типа вшитый suexec.
Добрая половина этого в апаче из ALT Linux сделана из коробки или с mod_security (это та, которая разумная половина). Недобрая половина, включая "держите апач в чруте" (без ссылок на mod_chroot хотя бы) -- нафиг-нафиг. :)(мазохисты могут пробовать, как это приготовлено в опёнке)
А что в опёнке там жутко ужасного в chroot apache?
да как в любом руте - тащить в рут все окружение.Я попробовал и плюнул. Непропорциональные результату затраты.
Ахринеть - тебе всё в одну авоську. Знаешь, а ведь либо безопастность со всем вытекающем гемором. Либо ну нафик. А некоторые ещё и виртуализацию используют.
но пора все зарутать. Не сегодня.ПХП - в рут. ГД для него - тоже в рут. И так дальше и тому подобно...
Как с нуля коробку заводить.
Используйте mod_chroot + mod_suphp - и будет вам счастье :)Дело то всего - переписать в chroot бинарник php-cgi, подмонтировать в chroot bind mount-ом /lib и /usr/lib, скопировать в chroot/etc несколько файлов из /etc... и получаете надежный хостинг, даже на Fedora Core, которую тут многие не любят.
mod_suphp - !!!! как впечатления ? есть проблемы со скриптами ?
ща взбодрюсь пивком и приступлю
Что в чруте, что не в чруте - если через дыру в приложении в /tmp залит руткит и в системе есть уязвимый для него сервис... Какая разница, из чрута или не из чрута руткит спам льёт?Все-таки только mod_security поверх дыр плюс чистка дыр.
А чрут, так, упражение для.
>него сервис... Какая разница, из чрута или не из чрута руткит
>спам льёт?Если вы даете непривилегированным приложениям в вашем чруте делать bind() и connect(), тогда ой.
сёдни в 10 утра мне Цы97 из Иджипта заливал?Ща порутаю все апачи. Вечерком. Пока еще попробуй :)
>сёдни в 10 утра мне Цы97 из Иджипта заливал?
>Ща порутаю все апачи. Вечерком. Пока еще попробуй :)Вы меня с кем-то путайте.
от доброго webрута все-таки спасает только mod_security и Guardian\Snort.Если дыра в приложении - до свидания. Хоть кол на голове вытеши, ибо webрут развивает совершенно законную с точки зрения HTTP деятельность.
Не буду рутать апачи - лень.
>от доброго webрута все-таки спасает только mod_security и Guardian\Snort.
>
>Если дыра в приложении - до свидания.Вы забыли про дыры в mod_security или snort :-)
Ну, это не всякому даже и бразильцу по уму, хотя ребята они шустрые до немогу.Чтобы достучаться до snort'a, нужен некий зловредный траф, который mod_security и Guardian'ом же и зарубается.
Это тебе не phpBB.
Вот что спасет отца русской демократии (48 - apache uid):iptables -A OUTPUT -o ! lo -m owner --uid-owner 48 -m state --state NEW -j DROP
А вы всегда так /tmp маунтите, что оттуда можно выполнять программы?
ставленная не мной, в которой /tmp - директория в корневой фс.Переразбивть аппаратные RAID на ходу - страшно. Да и лень.
А вы думаете, что есть люди, которые не знают, что такое noexec :)
>ставленная не мной, в которой /tmp - директория в корневой фс.
>
>Переразбивть аппаратные RAID на ходу - страшно. Да и лень.
>
>А вы думаете, что есть люди, которые не знают, что такое noexec
>:)
mount -bind /tmp с noexec - очень сложно?
>mount -bind /tmp с noexec - очень сложно?Править fstab, зачем что-то переразбивать?
И зачем маунтить руками что-то...