каковы лучшие практики, политики, инструменты / утилиты для мониторинга и предотвращения порчи веб-сайтов
Как сказал cji, существует так много переменных, что трудно понять, о каком уровне вы говорите.
Если у вас есть доступ только к фактическим файлам сайта, важно обновлять его с помощью последних исправлений и следить за любыми обновлениями безопасности. Вы также можете запускать тесты, используя Несс или другой сканер веб-сайтов для поиска наиболее распространенных уязвимостей. Это также можно передать на аутсорсинг, но это быстро становится дорого. В зависимости от выбранного плагина вы можете проверить наличие определенных уязвимостей или даже слабых паролей.
Что касается "мониторинга", вы можете использовать такую услугу, как ChangeDetection который покажет любые изменения на сайте. Если вы ожидаете, что он будет статическим и внезапно изменится, это может быть признаком взлома. Если ваш сайт сильно меняется из-за того, что это новостной сайт или похожая ситуация, этот метод не очень хорошо работает.
Если у вас есть доступ к компиляции apache, я настоятельно рекомендую mod_security. Он будет запускать все, что отправлено или получено (это слово?) В Apache, чтобы проверить наличие взломов. Это несколько раз спасло меня от приложений, которые нам нужно запускать, но не обязательно в безопасности.
Наконец, если вы действительно серьезно относитесь к безопасности веб-приложений, вам необходимо нанять фирму, которая позаботится об этом. Однако, если вы делаете это в личном проекте или для низкопрофильного, не бюджетного сайта, описанные выше шаги должны помочь вам начать работу. Есть целые карьеры, основанные на вашей теме, поэтому любой ответ на ваш ответ не будет окончательным решением.
Это чрезвычайно открытый вопрос, и лучший ответ действительно: «Это зависит от обстоятельств». Что вы делаете для защиты своего сайта, зависит от множества факторов.
Вы используете план виртуального хостинга, VPS или выделенный хост? Если вы используете VPS или выделенный хост, вы несете ответственность за безопасность этой машины, то есть за настройку брандмауэра, IDS на основе хоста, блокировку любых открытых портов и использование строгой аутентификации, поддержание ваших патчей в актуальном состоянии и т. Д. re на общем хосте - есть ли у них хорошие показатели безопасности?
У вас есть статический HTML-сайт с брошюрой, который обновляется только через FTP-передачу последних версий файлов? Затем вам нужно прекратить использование FTP, использовать SFTP / SCP и аутентификацию на основе ключей и отключить аутентификацию по паролю.
Размещаете ли вы сайт, который является более динамичным и позволяет размещать пользовательский контент, например блог, вики или форум? Тогда у вас будет гораздо больше поводов для беспокойства - выбрать программный пакет с хорошей репутацией в плане безопасности, поддерживать его в актуальном состоянии при выпуске исправлений и следовать руководствам по его безопасной настройке. Переименуйте учетную запись администратора и используйте надежные пароли для запуска.
Однако вы действительно не предоставили достаточно информации для того, чтобы кто-то подробно рассказал, как конкретно вам помочь.
Не запускайте веб-сервер.
Если серьезно? Используйте новейшее современное программное обеспечение, которое хотя бы было запущено через внешний аудит кода, обновляйте его по мере выхода новых выпусков. Не используйте неавторизованное, не прошедшее аудит стороннее программное обеспечение для вышеуказанного программного обеспечения. Если вы запустите php / perl / python / ruby, запустите его через тот же процесс, что и выше. Статические страницы не могут быть использованы, но сервер все еще может. Если у вас есть удаленный доступ к этому серверу, максимально ограничьте его с помощью правил брандмауэра. Вы также можете установить связь с компанией, которая выполняет удаленную очистку веб-сайтов и сравнивает вашу текущую страницу с последней удачной. Есть несколько бесплатных и несколько коммерческих.
Вы должны понимать, что безопасности не бывает, как в реальной жизни. Все ломается, все можно использовать, злоумышленник просто должен быть умнее авторов кода. Идея состоит в том, чтобы уложить ваши подходы так, чтобы сделать атаку невозможной для злоумышленника, не тратя лишних затрат на данные.
Некоторое время назад для небольшого статического веб-сайта мы использовали файловую систему, полностью предназначенную только для чтения: CD-ROM. Он был сильно кэширован ядром, поэтому скорость была достаточной.