Вопрос: Зачем мне нужен брандмауэр, если мой сервер настроен?


Я администрирую несколько облачных (VPS) серверов для компании, в которой я работаю.

Серверы являются минимальными установками ubuntu, которые запускают биты стеков LAMP / входящих данных (rsync). Данные большие, но не личные, финансовые или что-то в этом роде (т. Е. Не то, что интересно)

Ясно, что здесь люди навечно спрашивают о настройке межсетевые экраны и тому подобное.

Я использую множество подходов для защиты серверов, например (но не ограничиваясь)

  • ssh на нестандартных портах; нет ввода пароля, только известные ssh-ключи от известных ips для входа и т. д.
  • https и ограниченные оболочки (rssh), как правило, только из известных ключей / ips
  • серверы минимальны, обновлены и регулярно исправлены
  • используйте такие вещи, как rkhunter, cfengine, lynis denyhosts и т. д. для мониторинга

У меня большой опыт использования unix sys admin. Я уверен, что знаю, что делаю в своих настройках. Я настраиваю файлы / etc. Я никогда не испытывал настоятельной необходимости устанавливать такие вещи, как брандмауэры: iptables и т. Д.

Отложите в сторону на мгновение вопросы физической безопасности VPS.

Q? Я не могу решить, являюсь ли я наивным или инкрементная защита, которую может предложить fw, стоит усилий по обучению / установке и дополнительной сложности (пакеты, файлы конфигурации, возможная поддержка и т. Д.) На серверах.

На сегодняшний день (touch wood) У меня никогда не было проблем с безопасностью, но я тоже не доволен этим.


57
2018-02-08 12:50


Источник


Смотрите также: serverfault.com/questions/201298/why-should-i-firewall-servers - splattne
Вы должны попробовать security.stackexchange.com - AviD
Дайте мне свой IP-адрес, и я показать почему вы нуждаетесь в брандмауэре. - GregD


Ответы:


Я отмечаю, что вы проделали отличную работу, связав несколько разных демонов, и из того, что вы сказали, я думаю, что маловероятно, что вы столкнетесь с проблемами, связанными с теми услугами, которые вы уже обеспечили. Это все равно оставляет вас в состоянии «все разрешено, за исключением того, что я запретил», и вы не можете выбраться из этого состояния, охотясь за демоном после демона и закрепляя его один за другим.

Брандмауэр, настроенный для ОТКАЗАТЬ ЛЮБОЙ ЛЮБЫЕ по умолчанию переводит вас в режим «все запрещено, кроме того, что разрешено», и я нашел на протяжении многих лет, что они лучше.

Прямо сейчас, учитывая законного пользователя с законной оболочкой в ​​вашей системе, она может решить запустить некоторый локальный непривилегированный демон для проксирования веб-запросов для Интернета или начать совместное использование файлов на порту 4662 или случайно открыть слушателя с помощью -g с туннелированием портов ssh, не понимая, что он делает; или установка sendmail может привести к тому, что вы запустили MUA на порту 587, который был неправильно настроен, несмотря на всю работу, которую вы сделали, на обеспечение MTA-пересылки на порт 25; или может произойти сто одна вещь, которая обойдет вашу осторожную и продуманную безопасность просто потому, что их не было вокруг, когда вы тщательно размышляли о том, что запретить.

Вы видите мою мысль? На данный момент вы приложили много усилий для защиты всех вещей, о которых знаете, и похоже, что они вас не укусят. Что может вас укусить, это то, о чем вы не знаете, или что там даже нет, прямо сейчас.

Брандмауэр, по умолчанию ОТКАЗАТЬ ЛЮБОЙ ЛЮБЫЕ это системный способ сказать, что если произойдет что-то новое и откроется сетевой прослушиватель на этом сервере, никто не сможет с ним поговорить, пока я не дам явное разрешение,


85
2018-02-08 13:07



Это очень проницательный ответ, особенно текст о переводе с «все разрешено ...» на «все запрещено ...». Вы также хорошо знаете о местных демонах. Как это часто бывает - я уверен, что вы согласитесь - опасность часто бывает на «внутри», - Aitch
(Aitch, если я могу предположить немного, ваш профиль подсказывает, что вы новичок в serverfault. Локальный этикет заключается в том, что, когда вы довольны ответом, вы принимаете его, нажимая на контур тика, если память служит; что, если вы знаете это уже, или вы ждете, если появятся другие, лучшие ответы, то это тоже очень правильно и правильно, и, пожалуйста, игнорируйте меня. Сообщество только просит, чтобы однажды вы полностью удовлетворены ответом на свой вопрос, вы его принимаете.) - MadHatter
+1 @MatHatter - хорошее описание того, как брандмауэры могут обеспечить безопасность по умолчанию, а не выбор. - Coops
Это расчетный риск. По крайней мере, на OpenBSD, включение pf добавляет 35 К строк кода в ядро, которое может иметь ошибки. С другой стороны, дефолт по умолчанию и правильный брандмауэр регистрации - это самые большие деньги IDS, которые можно купить. Не пытайтесь использовать Snort для поиска плохих вещей: каждый раз, когда любая из ваших машин делает то, что вы специально не разрешаете, вы должны получить уведомление. - Alex Holst


Принцип наименьшей привилегии. Брандмауэр помогает вам добраться туда. Принцип защиты в глубине. Брандмауэр также помогает вам туда добраться. Любая хорошо спроектированная конфигурация явно использует эти два так или иначе.

Другое дело, что ваши серверы, скорее всего, будут товарным оборудованием или аппаратным обеспечением для обработки серверного программного обеспечения, работающего поверх стандартной серверной ОС (Unix, NT, Linux). То есть у них нет специализированного оборудования для эффективной обработки и фильтрации входящего трафика. Вы хотите, чтобы ваш сервер обрабатывал каждую возможную многоадресную рассылку, сканирование ICMP или сканирование портов?

Скорее всего, вы хотите, чтобы ваши серверы физически обрабатывали запросы только на некоторые порты (80, 443, ваш ssl-порт, ваш обычный порт oracle 1521, ваш порт rsync и т. Д.). Да, конечно, вы настроили брандмауэры программного обеспечения на своем чтобы прослушивать только эти порты. Но ваши сетевые адаптеры по-прежнему будут нести основную нагрузку на нежелательный трафик (будь то злокачественный или нормальный в вашей организации). Если ваши сетевые адаптеры будут забиты, так и сетевые пути, проходящие через ваши серверы (и, возможно, между вашими серверами и внутренними клиентами и подключениями к другие внутренние серверы и службы.)

Мало того, что ваши сетевые адаптеры забиты, ваш программный брандмауэр также будет задействован, поскольку он должен проверять каждый пакет или датаграмму, которые он получает.

Брандмауэры, с другой стороны, особенно те, что расположены на краях подсетей (или разделяют ваши подсети из внешнего мира), как правило, являются специализированным оборудованием, специально созданным для обработки этого типа тома.

Вы можете объединить N количество серверов с номером M брандмауэров (с N >> M). И вы устанавливаете оборудование брандмауэра для сброса всего, что не направлено на определенные порты. Сканирование портов, ICMP и другое дерьмо отсутствуют. Затем вы точно настраиваете брандмауэр программного обеспечения на своих серверах в соответствии со своей конкретной функцией.

Теперь вы только что уменьшили (но не устранили) вероятность полного затемнения, уменьшив его до разбиения сети или частичного отказа в худшем случае. И, таким образом, вы увеличили способность своих систем пережить атаку или неправильную конфигурацию.

Не имея брандмауэра, потому что у вас есть один сервер, он чувствует себя в безопасности, когда ваш ремень безопасности работает во время движения на скорости 120 миль в час при нулевой видимости из-за тумана. Это не работает.


13
2018-02-08 21:08





Есть много атак, которые могут быть восприимчивы к тому, если у вас нет брандмауэра, который проводит проверку уровня пакетов:

Пример: Пакет рождественских елок

http://en.wikipedia.org/wiki/Christmas_tree_packet

Атаки DDOS могут быть запущены против вашей системы, брандмауэр (внешний, возможно, до любого из ваших серверов) останавливал / замедлял / убивал трафик, пока он не повредил ваши серверы.

Просто потому как у вас нет финансовых или личных данных на серверах, это не значит, что вы не получите «больно». Я уверен, что вы платите за пропускную способность, или за использование ЦП, или у вас есть измеренная ставка. Представьте себе, что в течение ночи (пока вы спите) кто-то подбегает к вашему счетчику (я видел, что это случилось с поставщиками услуг VOIP Switch, попавшими в ночное время для МИЛЛИОНОВ МИНУТ трафика, что они должны оплатить счет).

Поэтому будьте умны, используйте защиту, если она есть, вы НЕ СОВЕРШЕННО, ни программное обеспечение. Он защищен только до тех пор, пока не будет найден следующий эксплойт. ;)


4
2018-02-08 19:27





Если вы можете применить принцип наименьших привилегий без использования брандмауэра, вам, вероятно, это не понадобится. С моей точки зрения, создание безопасной системы без использования брандмауэра требует больших усилий, и я довольно ленив. Почему я должен беспокоить ограничение TCP-соединений с помощью других инструментов и, возможно, многих файлов конфигурации, когда я могу отделить привилегии на транспортном уровне с помощью одной конфигурации.


2
2018-02-08 13:01



Хорошая точка в одиночной конфигурации, меньше места для ошибок. Я согласен с тем, чтобы быть ленивым, где это возможно! cfengine действительно вынимает часть этой сложности для меня, частично уменьшая проблему со многими конфигурационными файлами .... но ... это так же хорошо, как и правила, которые написаны, конечно. Таким образом, вы оставляете большинство конфигурационных файлов по умолчанию (или рядом с ними) в качестве вторичного барьера и должны иметь брандмауэр как (по крайней мере, в смысле слоя) главную проблему. - Aitch
Я сначала поддержал PoLP, а затем отказался от лени. Брандмауэры не являются инструментами, позволяющими их владельцам быть неаккуратными. Вы должны потрудиться, чтобы закрепить свою поверхность атаки, потому что если злоумышленник проходит через брандмауэр (после того, как вы должны открыть что-то), они могут просто отключить iptables. Примените свою лень, где она принадлежит: сделайте систему максимально свободной, поэтому вам не нужно ее долгое время исправлять. - Marcin
@Marcin Я имею в виду, что если кто-то хочет защитить систему без использования брандмауэра, ему или ей придется сначала создать всеобъемлющую модель угрозы. Брандмауэры подразумевают какую-то хорошо известную и хорошо описанную модель угрозы, поэтому мне не нужно создавать ее с нуля для каждого хоста. Конечно, если говорить о военной безопасности, выбора нет, то должна быть построена форма официальной угрозы. - Alex


Брандмауэр также может перехватить нежелательные пакеты от ваших серверов. Вместо того, чтобы иметь дело с ними на уровне отдельного сервера, вы можете иметь дело с ними на брандмауэре. Вы можете сохранить всю эту конфигурационную активность на одном брандмауэре, а не на нескольких серверах.

Например, если злоумышленник получил контроль над внешним IP-адресом и замалчивает ваши серверы нежелательными пакетами и вы хотите смягчить последствия, которые он оказывает на ваших серверах ... вы можете либо настроить каждый из ваших затронутых серверов, чтобы удалить вредоносные пакеты или просто внести изменения в свой брандмауэр, и все ваши серверы защищены. Наличие брандмауэра уменьшило время реакции.


1
2018-02-08 17:37



Кроме того, это все равно настраивает брандмауэр - это просто происходит на каждом сервере. - mfinni


Вы или кто-то еще может сделать ошибку на вашей настройке сервера в один прекрасный день, брандмауэр затем даст вам второй шанс остановить кого-то. Мы не совершенны, мы делаем ошибки, и поэтому немного «ненужного» страхования может быть полезно ,

(Старайтесь не запускать брандмауэр на одна и та же ОС как ваши серверы, так как в остальном одна ошибка в ОС .... Я считаю, что все версии Unix - это одна и та же ОС, поскольку у них так много общего)


1
2018-02-08 22:26



Отличные, смешивающие платформы (ОС и оборудование) являются ключевыми. - DutchUncle


Брандмауэры сглажены в манипуляции с трафиком. Они делают это быстро и имеют ресурсы. И вы не тратите ресурсы сервера на фильтрацию трафика (disk io / proc time / etc). Вы настраиваете некоторую безопасность в среде сервера, но все трафик и сканирование вирусов и т. Д. Должны выполнять специализированные серверы.


0
2018-04-19 08:50





Я был бы обеспокоен тем, что если вы когда-нибудь будете взломаны и у вас нет брандмауэра. Хакеры могут открывать другие порты на ваших серверах. Кроме того, если консультант придет, чтобы сделать некоторую очистку и аудит, первое, что они скажут, «ЧТО?!?! У вас нет брандмауэра!» Тогда вас могут сожгли.


-2
2018-02-08 15:21



-1 Немного сенсационный ответ + на самом деле не конструктивный. - Coops
Если сервер взломан, тогда брандмауэр не обязательно поможет, когда битзо, который сломался, просто отключит его! * отказ от ответственности, в вопросе упоминалось использование iptables, а не отдельный аппаратный брандмауэр. - Bryan