Автоматическое сканирование и подвиги. Есть и другие?
Работает `apt-получить обновление &усилитель;& apt-получить обновление каждый так часто достаточно, чтобы держать веб-сервер безопасным?
Что еще должно 'средние' веб-программисту, который также заботится о сервере, сделать, чтобы держать веб-сервер достаточно безопасной для стартапа.
Да, это всегда зависит от многих вещей. Пожалуйста, включают в себя допущения в самых распространенных случаях (принцип Парето), что простому веб-приложения программист может и не знать.
Вы'вэ сняли много проблем, которые, как правило, получить вас в беде (а именно, при условии, что приложение, которое вы'ре таких является полностью безопасной). С практической точки зрения, вы абсолютно должны рассмотреть те.
Но, предположительно, поскольку вы'заново осознает их, у вас есть какие-то защитные меры. Позвольте'поговорим об остальном, потом.
Как начать, вам, наверное,' т запустить обновление и"; каждый так часто и". Большинство дистрибутивов работы безопасности анонсе рассылки, и как только уязвимость будет объявлено здесь, это'ы, а общественные (ну, это часто до этого, но в вашей ситуации вы можете'т действительно контролировать все списки безопасности в мире). Это с низким трафиком списки, так что вы действительно должны подписаться на ваш дистрибутив's и обновления, когда вы получаете уведомления от него.
Часто, небрежно ухоженные сервер может быть грубой принудительной или словарь атаковали на протяжении длительного периода времени, так как сопровождающий это'т действительно ищу признаки. Это's не хорошая идея, чтобы потом применить обычные меры противодействия - не SSH аутентификация по паролю, fail2ban в SSH и Apache - и в идеале, чтобы настроить оповещения, мониторинга, когда подозрительная активность происходит. Если это's вне вашего обслуживания (раз) бюджет, привычка лесозаготовки регулярно проверять эти вещи вручную.
Хотя не традиционно воспринимается как часть безопасности, вы хотите убедиться, что вы можете быстро настроить новый сервер. Это означает, что скрипты конфигурации сервера (такие инструменты, как Анзибль, повар и т. д. полезны системного администрирования в любом случае), а система автоматического резервного копирования, что вы'вэ проверено. Если ваш сервер'ов были нарушены, вы'ве получил, чтобы предположить, что это's не нарушена навсегда и просто стереть его, и это хреново, если вы не'т было создание регулярных резервных копий данных.
Это'будете, вероятно, держать вас в безопасности некоторое время, но безопасность-это сложный и быстро развивающийся таким образом, на самом деле это'т достаточно хорошо для долгосрочной безопасности. Если все те же предположения, как вы'вновь в ваш вопрос, в сети будет один большой ботнет сейчас. Так нет, давайте's не ограничивать этот вопрос в пакеты. Позвольте's взглянуть на безопасности сервера целостно, чтобы каждый, кто читает это получает представление о том, как много движущихся частей есть на самом деле.
Кроме того, fail2ban
. сооружения
(и другие). Полной резервной копии системы, возможно, худшее, что вы могли бы держать вокруг —безопасность— потому что вы'll быть готовы использовать его если вы взломан. Их только восстанавливается после сбоя оборудования. Проблема с использованием их в хаки-это сброс на еще более ранний момент времени. Еще больше недостатков в своем стеке сейчас очевидно, еще больше подвигов существуют для отверстие, которые вы получили. Если вы думаете, что сервер онлайн, вы можете мгновенно взломать. Вы могли брандмауэр выкл входящий трафик и обновить пакет и что может помочь вам, но в этот момент Вы до сих пор не'т знаю, что вы, или когда она у вас. Вы'вновь основывая все свои предположения со симптом, который ты видел (инъекции объявление на ваших страницах, спам будучи отфутболенным в mailq). Рубить можно было месяцев до этого. Они'вновь, очевидно, лучше, чем ничего, а штраф в случае умирающий диск, но, опять же, они'вновь мусор по безопасности.
Вы хотите что-то —просто обычный язык документ или что-то техническое, как Анзибль/кукол/подпрограммы шеф— поваром, которые может вести кого-то через восстановить весь сайт на новый сервер. Вещи, чтобы рассмотреть:
Вероятность высока, что вы держите сервер в основном безопасно, если вы запустите обновления часто (т. е. как минимум ежедневно, а не только на "каждый так часто и").
Но, критические ошибки происходят время от времени, как контузия или ImageTragick. Также небезопасной конфигурации сервера может сделать атак. Это означает, что вы должны также принять дополнительные меры, чем просто запуск регулярного обновления, как:
По-прежнему, наиболее часто используемые исходный вектор атаки, вероятно, небезопасных веб-приложения, такие как WordPress или других CMS. Но ваше предположение, что веб-приложение является полностью безопасной, так что надеюсь, это на самом деле.
Большинство современных дистрибутивов Linux уже какое-то автоматическое обновление решения. Вы должны рассмотреть его включения на ваших серверах. Это позволит значительно сократить время ваш сервер уязвимым для атак.
Как вы упоминаете Debian, вам следует рассмотреть вопрос о создании без обновлений. В RedHat ням-хрон, и SUSE можете получить их через яст.
Эти обновления, как правило, ограничивается патчи безопасности и вряд ли сломать систему, однако это не абсолютно невозможно. В конечном счете это до вас, чтобы вес риска и преимуществ такого подхода.
`apt-получить обновление только установить новые версии для уже установленных пакетов. Он не устанавливает пакеты, которые в настоящее время не установлен, и это не обновления уже установленного пакета, если новая версия зависит от пакета, который в настоящее время не установлены.
В Debian и Ubuntu, каждая версия ядра положить в отдельный пакет, с версии в его имени. Кроме того, там'ы виртуальный пакет, который всегда зависит от последнего доступного ядра, зависимость меняется с каждой версией. Например, как сейчас Linux-образ-общий xenial зависит от Linux-образ-4.4.0-63-универсальный
. Эта схема позволяет старых версий ядра, чтобы быть установленным, и в случае новой оказывается несовместима с вашим оборудованием.
Однако, это означает, что apt-получить обновления не будут установлены новые ядра - вам нужно выполнить
apt-получить расстояние-обновления для этого. Тем не менее, многие люди избегают его использования автоматически, так как это может тоже удалить пакеты. В новых версиях Ubuntu, вы можете использовать APT для обновления, который устанавливает новые зависимости, но не удаляет какие-либо пакеты.
Также, при обновлении OpenSSL и нужно, как минимум, перезагрузить сервисы, использующие эту библиотеку; в Ubuntu система просто просит перезагрузить, чтобы остаться на безопасной стороне, и многие люди также имеют оговорки в отношении автоматических перезагрузок.
Есть некоторые хорошие ответы уже здесь. Однако, я хотел бы заполнить некоторые пробелы и обратить ваше внимание на пару вещей, которые Дон'т, кажется, обратился в существующие ответы.
не непосредственно направлены на какой-то супер-хакер или общественной организации и т. д. Это опасная перспектива. Многие малые организации были вынуждены основан банкротства на вариации этой основной идеи. Вы действительно не можете предсказать, кто может найти применение или причиной взлома вашего сервера. Именно из-за этого тип базового предположения о том, что правительство или супер хакер может вашей системы. Они не могут быть заинтересованы в ваших приложений или данных, они могут просто хочу, чтобы невиновный 'спрыгнуть' выберите пункт Использовать как часть более крупной или более комплекс рубить на более ценный объект. нормальный светильник web-сервере работает веб-приложение. (Например. В AWS EC2 с+помощью apache2+MySQL в+Php7) Будьте осторожны 'нормальный'. Ваша установка не может быть нормальным, как вы думаете. Многое зависит о том, что вы установили и какие репозитории пакет приходит от. Некоторые из вариации, чтобы быть в курсе включают в себя -
- Тип распределения. Например, есть большая разница между Убунту ЛТС и не-LTS дистрибутивы. Как правило, не-LTS дистрибутивы как правило, имеют более частые обновления и важно будет проанализировать обновление (или обновление комментарий - см. ниже) чаще.
- Тип Хранилища. Большинство дистрибутивов, включая Ubuntu, имеют разные типы репозиториев. Есть несколько основных репозиториев, поддерживаемых Ubuntu, которые как правило, достаточно надежные испытательные циклы и которые получают обновления в достаточно своевременно. То есть 'ВНО' тип хранилищ, которые не поддерживается основной группы рассылки. Они могут быть 3-сторонних партнеров или другие пользователи или группы развития. Что упор делается на эти репозитории могут сильно различаться. Иногда, они будут иметь высокую ориентированность на безопасность и меньший акцент на стабильности, другие сосредоточиться на стабильности безопасности. Знание/понимание репозитории у вас установлена программное обеспечение Из является важным.
- Знаю, что установлено. Все слишком часто, вы слышали о системе, которая была нарушена только в том, чтобы найти компромисс произошел в игнорируемая пакет - либо тот, который установлен по умолчанию, или тот, который необходим стек Lamp но это глубоко закопали или тонких зависимостей не были известны. Убедитесь, что вы удалили все ненужные пакеты (то, что может быть трудно определить, тем более что некоторые пакеты имеют некоторые необычные зависимостей).
- Вспомогательные Библиотеки. Часто выходят дополнительные библиотеки, которые была установлена, но не удалось по меткому экосистемы. Например, Библиотека PHP нужен для особых целей, либо не был в дистрибутивы стандартные нагрузки или которые должны быть построены на системе из-за других зависимостей. Типичным примером является база данных драйверов PHP для коммерческих базы данных. Хотя, вероятно, улучшилось, ибо в прошлый раз мне пришлось управление, основанное на PHP стека, я могу вспомнить время, когда вы должны были построить в PHP драйвер для Oracle. Хотя процесс был довольно тривиально, нужно было помните, чтобы восстановить драйвера после зависимые библиотеки были обновлены до обеспечить библиотеке был связан на пропатченную версию. Это также может быть вопрос с вещами, например, OpenSSL. Дистрибутив может установить новую версия общей библиотеки, но вы, возможно, потребуется принять дополнительные меры для обеспечить ваше приложение на самом деле использует модернизированная библиотека и не старый библиотека с известной уязвимости. Вы должны проверить наличие обновлений на ежедневной основе, а затем просматривать эти обновления оценить их важность и потенциал, чтобы сломать вашу систему. В то время как Ubuntu'ы процесс apt-обновление достаточно надежная и редко ломается все, бывает время от времени. В связи с упором на стабильность, особенно для ЛТ версии, процесс обновления, как правило, консервативны, поэтому необходимо пересмотреть и не просто запустить apt-получить обновление. Например, из-за возможных проблем зависимостей и возможность введения нестабильность или поломки, иногда, вы нужно сделать 'дист-апгрейд'. Ubuntu будет сознательно делать это как способ зарабатывания это понятно, что нужно позаботиться, т. е. apt-получить обновление можно доверить не ломать вещи, но не может установить все исправления безопасности. apt-получить расстояние-обновления работать больше, чтобы обеспечить применены все обновления безопасности, но может ломать вещи, так администратор должен больше заботиться. Беда в том, что не существует коротких путей здесь. Реальность ваш в несовершенном ситуации, когда ваш разработчик, который работает за небольшую бизнес, который не может позволить себе нанять разработчик и специальный администратор. Вы должны применить свои ограниченные ресурсы в пути, который минимизирует риски для бизнеса и обеспечить бизнесе, знает, что эти риски и понимаю, вероятности и последствия - они должны быть информированным позиции и знаю, что они приняли решение на основе имеющейся информации. Надежда лучше, но убедитесь, что вы запланировали к худшему. Есть надежные и проверенные резервных копий. Знаю, что обновления будут делать перед установкой обновления. Монитор списки безопасности, чтобы быть в курсе новых и возникающих угроз и быть в состоянии оцените свои экспозиции и просмотрите журналы, чтобы подтвердить ваши предположения. Проверить для обновления ежедневно. Это вполне законное решение не применять обновления ежедневно, но только после того, как вы оценили, какие они и что они патч и способен принять решение на основе имеющейся информации. относится к пункту выше, никакой социальной инженерии и веб-приложение По надежности.
Полагая, вы знаете и зная, может быть разительной. Я'вэ потерял счет количество раз оценки безопасности выявленных уязвимостей не было в курсе. Весьма вероятно, есть уязвимости в PHP (или любой другой участвует слоя), которые еще не были обнаружены или хуже, были обнаружены неправильные люди и еще не стали широко известны. Когда специалисты по безопасности оценки заявки, они никогда не будет государства безопасной. Они скажут, что не были обнаружены уязвимости, но это не значит, не существует.
В принципе, вы не можете держать веб-сервер безопасным. Есть 0-день подвига, который может устроиться в течение нескольких часов после открытия, но уже были использованы тогда. Хороший хостинг-компания может действовать в очень своевременно на такие угрозы. Однако, управляемого сервера-это дорого (если хостер'управления персоналом с чего-нибудь стоит). Они могут, однако, решили взять сервер в автономном режиме в случае, если они решат, что это необходимо, чтобы исключить угрозу, отдавая приоритет безопасность, а не в наличии - что может быть неправильный вид, если вам нужна коробка и отзывчивый в любое время. Сколько денег и сколько жизней вы теряете за час простоя?
Утечка данных может также произойти в другом месте. Резервные копии надежно храниться? (защита от удаленного и физического доступа; в одном случае я был в состоянии продемонстрировать эксфильтрацию данных с веб-сайта в прямом эфире, но из резервной копии) как легко кто-то может ворваться в серверную комнату? Нет нужды, что какой-то супер-преступника, как Лекс Лютер нападает на вас сразу (в конце концов, он's просто после 40 торты), но вы можете быть сопутствующий ущерб. И, да, я видел секретные фермы серверов (случай 1: случайно открыл не ту дверь, которая, видимо, какой-то идиот забыл запереть и некоторые другие дурак решил у ручка двери снаружи, корпус 2: хотел узнать, почему было так много чертовски тепло, исходящее из-за ДСП, в некоторых общий склад, где можно пространство площадью в один квадратный метр). В теории, управляется профессиональными компаниями, на практике...хорошо. Можно воспользоваться возможностью, поднять несколько серверов или диски, продать их на eBay и удачи после этого.
Часто забывают также удаленные атаки на инфраструктуру. Строго говорил, это не имеет ничего общего с уровнем безопасности сервера, но если кто-то нападает инфраструктуры управления или прокси-сервер, который обслуживает пакетов для apt-получить обновления безопасности все равно становится как-то...деградирует. Да, некоторые люди делают такие вещи ради удовольствия.
Я'd и предположим, что AWS EC2-это достаточно безопасный с точки зрения такого сценария, но в AWS EC2, который прилагается только в качестве примера, а не как факт в ОП'ы вопрос (в отличие от заявление о том, что веб-приложение само по себе является безопасным - это, наверное, чтобы мы обсуждали все наши войны рассказы о SQL-инъекции и прочее).
Это, безусловно, хорошая практика и должны быть частью вашей обычной безопасности сервера. Ли ваш план безопасности должен больше, чем эта практика, сказать трудно, но я've никогда не видел, ни я могу думать о каких-либо планов безопасности, что Дон'т иметь это в качестве основы.
Не ямочный ремонт, установленного программного обеспечения и услуг является высокий риск безопасности, потому что ошибки и уязвимости, обнаруженные в этих пакетах, часто может привести в полный доступ к ящику по эксплуатации. Это одна из первых, если не первый, что злоумышленник попытается.
Но неверные настройки системы также являются одним из ключевых способов, которыми злоумышленники взлома систем. Обновления программного обеспечения в одиночку выиграл'т должен исправить неверные настройки. Иногда такое случается, но что бы за неправильной родился первоначальной установки приложения.
Одно дело смотреть на это, если любой из ваших услуг выполняются с правами root. Существует не так много случаев, где это является хорошей идеей, но случается, что сервис выполняется как root, потому что человек, который его устанавливал либо ничего'т знаю, какой лучше, или они не'т заставить его работать как привилегированный пользователь. Это лишь один пример.
Независимо от операционной системы используется, там будут лучшие практики там, как твердеют операционной системы. Начало есть, потом специально Харден все услуги/установленных пакетов, таких как MySQL, Apache и т. д.
Если во время развертывания операционной системы и всех служб были специально сделано в соответствии с рекомендациями, то после применения патчей может быть единственное, что вам нужно сделать.
Я говорю возможно, потому что это еще не уверенность. Это будет зависеть от процессов изменения и будут ли процессы охватывают поддержания надлежащей безопасности. Предлагаемые изменения изучаются на предмет безопасности? Делать проверки включают в себя испытания безопасности? Ответ на эти вопросы, как правило, нет и поэтому ошибки администратором может случиться и не быть пойманным.