Как открыть порт в файерволе Mandriva Linux

Просматривая лог ссылок, приведших людей на мой сайт, я увидел ссылку от Google, отвечавшего на вопрос «как открыть порт 8080 в Mandriva?«.

Для этого нужно мышью щелкнуть «Меню», а далее «Утилиты» -> «Системные» -> «Настройка компьютера«. Или же просто в консоли ввести команду ‘mcc‘. В ответ на запрос вводим пароль администратора (root) и после этого запустится т.н. «Центр управления Mandriva Linux«. В нем выбираем слева закладку «Безопасность«, а в открывшемся окне — пункт «Настройка файервола» (см. рис. ниже).

Вход в настройку файервола
Вход в настройку файервола

Открывается окно, показанное ниже:

Выбор портов, которые нужно открыть
Выбор портов, которые нужно открыть

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

Вот такой простой способ для тех, кто привык к GUI, мыши и т. п. Метод абсолютно одинаков для дистрибутивов Mandriva 2007.1, 2008.0, 2008,1 и 2009.0. Разве что картинки иконок отличаются немного…

А теперь — любителям консоли, «прямых рук» и пр. В Mandriva управление файерволом осуществляется программой shorewall. Все ее настройки хранятся в папке /etc/shorewall. Настройки, вносимые Mandriva описываемым выше графическим методом, хранятся в файле /etc/shorewall/rules.drakx и директивой include файла /etc/shorewall/rules включаются в общий алгоритм работы файервола. Содержимое файла /etc/shorewall/rules.drakx выглядит например  вот так:

ACCEPT net fw udp 137,138,139 - ACCEPT net fw tcp 80,443,22,20,21 -

Понять систему записей и вручную добавить необходимое, думаю, труда не составит. Естественно, «рулим» файл, залогинившись с правами администратора, иначе не получится. После внесения изменений shorewall необходимо перезапустить.

Ну, а если же охота рулить непосредственно сам shorewall, то тогда можно просто добавлять свои строки в файл /etc/shorewall/rules. Необходимость такого редактирования может быть вызвана, например, желанием администратора скрыть от пользователей настройки правил файервола, либо простым отсутствием графического рабочего стола. С shorewall поставляется большой набор уже готовых макросов правил, хранящихся в папке /usr/share/shorewall/ с именами вида macro.*, например, macro.BitTorrent или macro.HTTP. Чтобы задействовать готовый макрос, в файл правил /etc/shorewall/rules нужно вписать его название (но, только ту часть имени, что после точки), потом через дробь — действие (ACCEPT, DNAT, DROP или REJECT), а затем зону-источник и зону приемник. Например, приведенная ниже строка использует макрос macro.FTP и открывает порт FTP (позволяет принимать из интернета (зона net) FTP-траффик):

FTP/ACCEPT net fw 

Посмотреть зоны файервола можно в файле /etc/shorewall/zones. И также, не забываем:

  • «Рулим» файл, залогинившись с правами администратора, иначе не получится.
  • После внесения изменений shorewall необходимо перезапустить.