Назад | Перейти на главную страницу

Как я могу вручную (с помощью скриптов и / или текстовых файлов конфигурации) настроить брандмауэр в Mac OS X?

Я хотел бы точно настроить правила брандмауэра в моей Mac OS X, я имею в виду без графического интерфейса.

Я пришел из мира Linux и привык вручную настраивать свои брандмауэры, имея полный контроль над каждым правилом, добавляя правила фильтрации для каждого IP или MAC и т. Д.

Возможно ли это (конечно, надеюсь) и как можно удовлетворить эту потребность в Mac OS X?

Я хотел бы найти что-то похожее на очень мощные и надежные скрипты "Shorewall", которые у меня были в Linux.

Заранее спасибо всем дали бы мне чаевые.

Возможно, посмотрите этот пример набора правил ipfw, чтобы начать настройку ipfw:

http://codesnippets.joyent.com/posts/show/1267

Рекомендую проверить этот связанный вопрос для обсуждения ipfw и даже если вы говорите, что вам не нужен инструмент с графическим интерфейсом, возможно, стоит изучить WaterRoof в качестве бесплатной утилиты для настройки.

Mac OS X v10.5 на самом деле имеет два брандмауэра: ipfw (брандмауэр с фильтрацией пакетов, к которому вы, вероятно, привыкли) и AppFirewall (он же alf, который фильтрует программы, пытающиеся прослушивать входящий трафик). AppFirewall является новым в версии 10.5 и является единственным, с которым вообще имеет дело графический интерфейс (кроме OS X Server, работающего в расширенном режиме, который имеет графический интерфейс для ipfw). AppFirewall не очень настраиваемый, он в основном содержит списки программ и информацию о том, разрешено ли им прослушивать соединения. Если вы хотите посмотреть его конфигурацию, используйте

defaults read /Library/Preferences/com.apple.alf

редактирование может быть выполнено с sudo defaults write или любой другой редактор plist, который вы предпочитаете (или текстовый редактор, если файл находится в формате text / xml; в противном случае используйте `plutil -convert xml1 'для его преобразования).

Однако похоже, что вам действительно нужен брандмауэр с фильтрацией пакетов. Нет проблем, оба могут работать параллельно (ну, на самом деле, последовательно - трафик входит только после прохождения обоих брандмауэров). Таким образом, вы можете настроить ipfw как хотите (используйте WaterRoof, или создайте свой собственный сценарий, чтобы настроить его и использовать launchd для его выключения, или что-то еще) и не беспокойтесь о вмешательстве в обычный брандмауэр.

Кстати, мне пришло в голову, что есть исключение из того, что я сказал о графическом интерфейсе, не касающемся ipfw: если вы включите общий доступ к Интернету (на панели общего доступа в системных настройках), он активирует ipfw для перенаправления пакетов через транслятор адресов. Если вы хотите использовать эту функцию, я не знаю, как сделать так, чтобы она и ручная настройка ipfw мирно сосуществовали; его установка совершенно не настраивается.