Как я могу открыть порт (не приложение) в брандмауэре OS X 10.6?

18

Позвольте мне предварить это словами:

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

Итак, я вижу, что есть возможность пропустить определенные приложения через брандмауэр, но нет эквивалентного способа открытия портов. Кажется, трудно поверить, что это на самом деле невозможно. Как я могу открыть определенный порт TCP в OS X 10.6, сохраняя при этом брандмауэр для остальных портов?

КДТ
источник

Ответы:

11

Работал на меня.

Я хотел открыть трафик на порту 70, поэтому я ввел следующее:

sudo ipfw add 7000 allow tcp from any to any dst-port 70

Ответ из командной строки был:

07000 allow tcp from any to any dst-port 70

Да, 0 автоматически добавляется к правилу #, поэтому стоит отметить, что любой идентификатор правила <10000 будет иметь префикс с одним или несколькими нулями.

Applemeister
источник
Видимо эта команда пропала в 10.10 (Йосемити).
jcollum
6

Встроенный межсетевой экран, используемый OS X, является ipfw. Чтобы узнать больше об этом из терминала, вы можете войти man ipfw.

Чтобы создать новое правило брандмауэра, чтобы разрешить входящий трафик на определенный порт, вы можете ввести правило из Терминала следующим образом.

sudo ipfw add 40000 allow tcp from any to any dst-port portnum

где portnumномер порта, который вы хотите открыть. В этом случае я добавил правило 40000 к правилу, так что если вы когда-нибудь захотите его удалить, будет достаточно следующей команды.

sudo ipfw delete 40000

Если вы введете команду, sudo ipfw listвы увидите активные команды. Чтобы перезагрузить брандмауэр, введите командуsudo ipfw flush

Если вы хотите регистрировать попадания, которые получает правило, вы можете добавить logкоманду следующим образом:sudo ipfw add 40000 allow log ...

Я выбрал rulenum 40000 несколько произвольно, поскольку существуют правила от 1 до 65535, хотя некоторые числа являются привилегированными. Это просто облегчает удаление правила позже, если это необходимо.

afragen
источник
Попробовал вышеуказанное решение и получил ошибку: ipfw: имя хоста `` dst-port '' unknown
Что именно вы ввели?
afragen
Как я уже писал выше, вам нужно указать фактический номер порта, portnumно dst-portон правильный. Пожалуйста, обратитесь к странице руководства для ipfw.
afragen
3

Приложение WaterRoof позволит вам сделать это и многое другое.

Asinine Monkey
источник
Или IceFloor с открытым исходным кодом ( hanynet.com/icefloor/index.html ) для брандмауэра PF в OS X 10.7 и более поздних версиях.
mivk