Повышаем безопасность веб-сервера с помощью cPanel
18 Aug 2011 | Автор: dd |Тема информационной безопасности бездонна словно вселенная, и так же как в космосе- с каждым годом ее границы расширяются, по мере роста скоростей интернета и развитием технологий. И если еще пять лет назад DDoS атака была делом профи, то сейчас этим может заниматься любой нубас, скачавший из интернета необходимый набор скриптов. И если вы ставите на свой компьютер или сеть фаервол и IPS с функцией логирования, то вы ужаснетесь тому потоку атак, которым ежеминутно подвергается ваша машина. А если это сервер выставленный в интернет, то активность злоумышленников и их рвение в попытке получения несанкционированного доступа возрастает многократно.
В этом ключе я хотел бы затронуть безопасность веб-сервера или хостинга, ибо при получении к нему доступа, злоумышленник способен использовать посетителей уязвленного ресурса для своих целей- самыми мягкими из которых будут перенаправление трафика на свои ресурсы. Поэтому так важно минимизировать вероятность несанкционированного доступа к вашему ресурсу.
Для начала крайне желательно что бы каждый сайт на хостинге принадлежал отдельному пользователю, и под каждый сайт была бы заведена отдельная SQL база с различными правами доступа. Крайне желательно, чтобы движок сервера баз данных использовал для своей работы только соединение через localhost. Права на все файлы в папках ваших сайтов должны быть выставлены на чтение, кроме тех где необходимы права на исполнение или запись. Для каждого сайта желательно иметь собственного пользователя FTP, который бы имел доступ только в корневую папку сайта. По хорошему- общий доступ к папке сайтов лучше отключить, или привязать к своему IP. Если у вас IP динамический, то перепривязать его из панели управления займет лишнюю минуту, но это обезопасит ваш сайт от взлома ftp аккаунта или кражи пароля из ftp клиента.
После этого можно приступать к настройке защиты через консоль управления хостингом. Я расскажу про cpanel, ибо я предпочитаю использовать именно её, так как меня устраивает функционал и интерфейс, при том что на моем хостинге она стоит на 4 бакса дороже чем никакой DirectAdmin. Итак в cpanel есть раздел Security Center, который и отвечает за закручивание гаек в системе безопасности веб-сервера. О всех рассказывать не стану, так как там довольно много разделов, а поведаю о наиболее, на мой взгляд, важных:
1. mod_userdir Protection : здесь можно отключить возможность чтобы ваши домены были доступны по имени пользователя под которым заведен сайт, по адресу: хттп://дефолтныйхостнейм/~username
В принципе этот функционал советуют отрубать, иначе все переходы по данным урлам будут засчитаны для дефолтного домена, то есть в случае реселла вас смогу легко накалывать благодарные юзвери. Но если вы используете хостинг только для себя, я не уверен что это так уж и страшно.
2. Compiler Access: отрубает доступ к компилятору С на веб-сервере, для не привилегированных юзверей, в том числе и владельцев сайта. Очень полезная штука, ограничивающая возможности злоумышленника при попытке взлома со стороны пхпшных шеллов.
3. cPHulk Brute Force Protection: одна из самых полезных штук, позволяющая предотвращать атаку переборки паролей. Включив этот твит- вы будите удивлены тому, как часто вам пытаются ломануть аккаунт, так что в итоге я выставил 3 максимальные попытки, после которых идет бан по IP адресу на 2 недели. Также можно настроить уведомления о логинах рута и отловленных атаках, тогда в этих случаях будет приходить письмо в линками на бан IP и сеток по маскам 16 и 24. Но вам надо будет настроить в зоне домена сервисный субдомен для бана, а также привыкнуть к тому, что вам будет падать уведомление и о системных входах рута.
4. Host Access Control: фактически фаервол, позволяющий настроить права доступа для определенных сервисов к хостингу. В случае динамических адресов, может стать проблемой, так как придется либо открывать сетке, либо пересоздавать правила каждый раз.
5. Manage root’s SSH Keys: очень полезная штука, позволяющая обезопасить ssh соединение с сервером, путем использования аутентификации не паролями, а на уровне сертификатов. Для начала надо сгенерировать сертификаты, путем клика на Generate a New Key и следуя указаниям (пароль и логин следует запомнить, а лучше записать). Создав их – говорим для ключей download key, после чего копируем представленный текст в блокнот и сохраняем под одним именем файла: Public Keys с расширением pub, а Private Keys без расширения файла. После чего ныкаем файлы куда-нить вглубь операционки. После чего заводим новое соединение, выбрав в качестве метода аутентификации сертификат, и указываем публичный ключ (он должен находиться в одной директории с приватным), после чего вводим имя пользователя которым хотим залогиниться в систему, например root, и пароль который мы вводили при создании сертификата. Если соединение прошло успешно, то идем в раздел SSH Password Authorization Tweak и отключаем аутентификацию по паролю. Так что теперь к нашему ssh серверу мы можем подключиться исключительно с использованием сертификатов.
6. Quick Security Scan: здесь можно просканить сервер на предмет не нужных портов и сервисов, запущенных по умолчанию.
7. Scan for Trojan Horses: очень полезная штука, позволяющая сканить ваши директории, на предмет выявления троянов, подсунутых вам в систему. Рекомендуется эпизодически запускать, чтобы быть уверенным что у вас на сайте не шуршит какая нибудь нечисть.
8. Shell Fork Bomb Protection: полезная штука для ресселеров, позволяющая предотвратить запуск из шела каких либо циклов и процессов, способных переполнить память и тем самым привести к краху системы.
9. Security Questions: также полезная опа, для предотвращения несанкционированного доступа к системе, путем создания листа разрешенных IP адресов, и при попытке логина с не зарегистрированного IP адреса выдающего вопрос. В случае правильного ответа- пользователь входит в систему, а IP вносится в базу разрешенных адресов.
10. SMTP Tweak: заточка SMTP, которую также можно произвести на странице настроек – Server Configuration >> Tweak Settings, которые я настоятельно рекомендую просмотреть, так как там можно поотключать много чего не нужного.
Собственно эти небольшие настройки позволят повысить безопасность вашего веб-сервера простыми настройками из понятного интерфейса cpanel и придать вашему сну размеренность и спокойное дыхание.
Повышаем безопасность веб-сервера с помощью cPanel,Теги: IT безопасность, настройка системы, сайты