Как перенаправить порт через брандмауэр в ubuntu

Comodo Firewall

И напоследок предлагаем вам вкратце ознакомиться с еще одним бесплатным фаерволом Comodo Firewall. Это мощная, многофункциональная программа с внушительным набором инструментов изначально проставляется в комплекте с Comodo Antivirus, Comodo Defense и веб-обозревателем Dragon, но так же может быть установлена отдельно.

Брандмауэр обеспечивает полную защиту от хакерских атак, троянов, вредоносных скриптов, кейлоггеров и прочих типов интернет-угроз. Приложением поддерживается мониторинг входящего и исходящего трафика, работа с портами, скрытие компьютера в сети, контроль за обновлениями ПО и драйверов, работа с большинством протоколов (TCP, ICMP, UDP и т.д.), мониторинг библиотек dll, а также наблюдение за деятельностью установленных программ в режиме реального времени.

В настоящее время база данных Comodo Firewall содержит более 13000 программ с рисками безопасности.

К дополнительным функциям фаервола можно отнести ведение подробного лога событий, интеграцию в Windows Security Center, быстрое переключение между режимами (из системного трея), защиту системы во время старта, обнаружение неопознанных файлов, просмотр активных процессов и запуск приложений в специальной песочнице (Sandbox).

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

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

Скачать: www.comodo.com

Перенаправление портов в Ubuntu — интерфейс командной строки

В дополнение к перенаправлению портов с помощью графического интерфейса пользователя также можно перенаправить порт в брандмауэре Ubuntu с помощью интерфейса командной строки (также известного как терминал). Для этого сначала убедитесь, что в вашей системе включен брандмауэр UFW.

Чтобы убедиться, что у вас включен брандмауэр UFW, откройте окно терминала. Вы можете открыть окно терминала, нажав Ctrl + Alt + T на клавиатуре или выполнив поиск «терминала» в меню приложения.

В открытом окне терминала используйте sudo ufw enable команда для включения брандмауэра, если он по какой-то причине отключен. Если ваш UFW уже включен, не беспокойтесь. Вы можете пропустить этот шаг.

Убедившись, что межсетевой экран UFW работает, используйте ufw разрешить команда для перенаправления порта. Например, если вы размещаете сервер OpenSSH на своем ПК с Ubuntu, вам нужно будет открыть порт 22 для Интернета. Для этого вы можете ввести команду ниже.

sudo ufw allow 22/tcp

Или, если вам нужно разрешить подключения через порт 32400 к Интернету через UDP, вы можете вместо этого выполнить следующую команду.

sudo ufw allow 32400/udp

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

sudo ufw status

Предположим, у вас возникли проблемы с переадресацией портов в Ubuntu, а ufw разрешить команды не работают. В этом случае вы можете полностью отключить брандмауэр, открыв доступ ко всем портам в Интернет с помощью ufw отключить команда.

sudo ufw disable

How use it

Important: If you enable the firewall under ssh without the ssh rule, you’ll close the ssh connection, then before to enable Gufw under a ssh connection, append the ssh rule using ufw with this command:

sudo ufw enable ssh
  • From a local computer with Linux:
    • Remote computer without graphic environment (IP = 192.168.1.102, Gufw installed and ssh server).
    • Local Linux. In the local computer, open a Terminal and run this command:
        ssh user_remote@192.168.1.102 -X
        sudo /usr/bin/gufw-pkexec -ssh
  • From a local computer with Windows:
    • Windows IP = 192.168.1.101; Linux IP = 192.168.1.100
    • Install Putty & Xming.

    • In Windows: Run XLaunch from the Start Menu and check «No Access Control» in the last step.
    • Connect to your Linux with Putty and run:
        export DISPLAY=192.168.1.101:0.0
        sudo /usr/bin/gufw-pkexec -ssh

ZoneAlarm Free Firewall

Если отсутствие русского языка вас не смущает, можете обратить внимание на ZoneAlarm Free Firewall – весьма своеобразный в плане дизайна брэндмауэр, предназначенный для защиты ПК при работе в глобальной и локальных сетях. Приложение обладает легким интерфейсом с минимальным количеством настроек

Поддерживается контроль пользовательских программ (аксесс-лист), отслеживание интернет-трафика, проверка почтовых вложений, подробное ведение логов, блокировка всплывающих окон и рекламных баннеров

Приложение обладает легким интерфейсом с минимальным количеством настроек. Поддерживается контроль пользовательских программ (аксесс-лист), отслеживание интернет-трафика, проверка почтовых вложений, подробное ведение логов, блокировка всплывающих окон и рекламных баннеров.

Кроме того в программе реализована функция контроля cookies, благодаря чему можно ограничить передачу конфиденциальной информации на просматриваемые веб-сайты. Уровень защиты пользователь может устанавливать самостоятельно. Скачать веб-инсталлятор ZoneAlarm можно совершенно бесплатно с сайта разработчика.

В процессе инсталляции пакета помимо фаервола также устанавливается ряд инструментов дополнительной защиты – Web Identity Protections (веб-замок), Identity Protections (личная идентификация) и Online Backup (резервное копирование). После установки брандмауэра требуется перезагрузка компьютера.

Скачать: www.zonealarm.com

Editing iptables

The only problem with our setup so far is that even the loopback port is blocked. We could have written the drop rule for just eth0 by specifying -i eth0, but we could also add a rule for the loopback. If we append this rule, it will come too late — after all the traffic has been dropped. We need to insert this rule before that. Since this is a lot of traffic, we’ll insert it as the first rule so it’s processed first.

sudo iptables -I INPUT 1 -i lo -j ACCEPT
sudo iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     all  --  anywhere             anywhere
ACCEPT     all  --  anywhere             anywhere            state RELATED,ESTABLISHED
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:ssh
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:www
DROP       all  --  anywhere             anywhere

The first and last lines look nearly the same, so we will list iptables in greater detail.

sudo iptables -L -v
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 ACCEPT     all  --  lo     any     anywhere             anywhere
    0     0 ACCEPT     all  --  any    any     anywhere             anywhere            state RELATED,ESTABLISHED
    0     0 ACCEPT     tcp  --  any    any     anywhere             anywhere            tcp dpt:ssh
    0     0 ACCEPT     tcp  --  any    any     anywhere             anywhere            tcp dpt:www
    0     0 DROP       all  --  any    any     anywhere             anywhere

You can now see a lot more information. This rule is actually very important, since many programs use the loopback interface to communicate with each other. If you don’t allow them to talk, you could break those programs!

Настройка фаервола Ubuntu

Главное окно программы выглядит вот так, здесь, кроме главных инструментов есть небольшая справка пр работе с программой:

Здесь есть все необходимые функции, чтобы настройка gufw ubuntu была удобной, но в то же время очень простой. Для начала нужно включить работу фаервола переключив переключатель статус в положение включен. Окно программы сразу изменится и станут доступными все функции:

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

Открыв меню Правка, Параметры, вы можете настроить общую работу Gufw linux, здесь вы также можете создавать свои профили. Для каждого профиля вы можете добавлять свои правила.

Настройка правил gufw

Запрет и разрешение трафика для входящих и исходящих подключений ничего бы не значило, если бы не было возможности настройки правил для определенных приложений и сервисов. Настройка правил программы выполняется в главном окне.

В самом низу есть три кнопки, добавить правило +, удалить правило — и кнопка в виде бутерброда для редактирования правила.

Давайте сначала запретим весь входящий и исходящий трафик:

Затем попытайтесь выполнить в терминале ping запрос к какому либо сайту. Ничего не получится. Это так называемая строгая блокировка, когда мы разрешаем только нужные процессы, все остальное запрещено:

Gufw ubuntu блокирует весь трафик, теперь разрешим dns с помощью правила. Для этого нажмите +. В открывшимся окне вы можете выбрать политику разрешить или запретить, в нашем случае нужно разрешать.

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

Дальше мы должны выбрать приложение или службу, для которой нужно мы будем разрешать трафик. Вы можете выбрать категорию и под категорию чтобы облегчить поиск или же воспользоваться фильтром приложений, нас сейчас интересует DNS.

После завершения добавления правила окно не закроется и настройка gufw ubuntu может быть продолжена. Вы можете добавлять другие правила. Но перед тем, давайте проверим действительно ли работает DNS:

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

Но правила созданные таким способом не могут контролировать все программы и порты. Поэтому существуют расширенные способы создания правил.

В окне создать правило, кроме вкладки Предустановленные, вы можете выбрать Обычные или Расширенные. На вкладке Обычные нет выбора приложения, здесь вы можете выбрать только порт и протокол:

А на вкладке расширенные есть также настройка входящего и исходящего IP адреса:

Теперь давайте разрешим работу браузеров Chromium, Firefox и т д. Для этого нам понадобится разрешить работу исходящий трафик на порт 80 и из порта 80, а также 443, или же мы можем воспользоваться предустановленным набором правил для сервисов HTTP и HTTPS:

После добавления этих правил браузеры будут работать. Таким образом, может быть выполнена настройка gufw ubuntu, для всех необходимых вам приложений. Кроме разрешающих правил, вы можете создавать запрещающие, просто установив главное поведение программы все разрешить, а потом создавайте правила для запрета тех или иных служб.

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

Посмотрев какие программы пытаются проникнуть в сеть вы сможете понять что нужно разрешить и нет.

Посмотреть какие программы работают с сетью вы можете на вкладке отчет в главном окне:

А на вкладке журнал вы найдете информацию по работе программы, переключению режимов и удалению правил.

С этой информацией настройка фаервола Ubuntu будет более эффективной и вы сможете решить возникшие проблемы.

Шаг 3 — Разрешение подключений SSH

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

Чтобы разрешить на сервере входящие соединения SSH, вы можете использовать следующую команду:

Эта команда создаст правила брандмауэра, которые разрешат все соединения на порту , который демон SSH прослушивает по умолчанию. UFW знает, какой порт имеет в виду команда , потому что он указан как услуга в файле .

Однако мы можем записать эквивалентное правило, указав номер порта вместо имени службы. Например, эта команда работает так же, как показанная выше:

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

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

Настройка политики по умолчанию

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

Сначала вернем правила UFW к значениям по умолчанию, чтобы обеспечить корректное поведение команд, представленных в статье. Для этого выполним:

sudo ufw default deny incoming
sudo ufw default allow outgoing

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

Emsisoft Online Armor Free

Третье место в нашем списке занимает бесплатный брандмауэр от компании Emsisoft GmbH под названием Online Armor Free. Программа обладает достаточно внушительным набором средств защиты от всевозможных сетевых угроз, а также блокировки вредоносного ПО использующего интернет. Online Armor Free включает четыре основных модуля защиты: фаервол, веб-фильтр, проактивную защиту и анти-кейлоггер.

Фаервол и веб-фильтр обеспечивают надежную защиту от утечки информации с компьютера пользователя, а также пресекают попытки несанкционированного доступа к системе вредоносными скриптами.

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

Online Armor Free автоматически сканирует систему на предмет потенциально опасных приложений и помечает их ответствующим образом. Для определения уровня безопасности установленных в системе приложений брандмауэр использует обновляемые онлайновые базы данных.

Online Armor Free располагает достаточно простым и удобным интерфейсом с поддержкой русского языка. В левой части рабочего окна расположено главное меню, в правой части отображается статус программы, дата последнего обновления баз, а также последние новости с сайта разработчика. Online Armor Free поддерживается создание правил для программ, управления портами и устройствами, создание списков игнорируемых доменов, контроль автозапуска подозрительных приложений, а также контроль полномочий на изменение файла HOSTS.

Также возможности фаервола включают защиту от спама, кейлоггеров, блокировку cookie, классификацию сайтов и защиту от принудительного изменения адреса домашней страницы браузеров Internet Explorer, Opera и Firefox. Из дополнительных возможностей приложения можно отметить поддержку виртуальных рабочих столов, сканирования подсети, а также отключение HIPS и установку пароля на GUI.

3: Настройка соединений SSH

Если включить UFW сейчас, он заблокирует все входящие соединения. Потому нужно создать правила, которые разрешат входящий трафик заведомо безопасных сервисов (например, SSH и HTTP). Обязательно нужно разрешить трафик SSH на облачном сервере, так как этот протокол позволяет вам подключаться к серверу.

Чтобы разблокировать соединения SSH, введите:

Это правило разрешит входящие соединения порта 22 (порт SSH по умолчанию). UFW знает имена некоторых сервисов (в том числе и SSH). Все эти сервисы перечислены в файле /etc/services.

Вместо названия сервиса в правиле можно указать порт. Например:

Если вы используете нестандартный порт SSH, укажите его в команде. К примеру, если SSH прослушивает порт 2222, нужно ввести:

Почему брандмауэр Windows достаточно хорош

Брандмауэр Windows выполняет ту же работу по блокированию входящих соединений что и сторонние брандмауэры. Сторонние брандмауэры, например такой, как в комплекте с Norton Internet Security или Kaspersky Internet Security будут часто показывать вам информационные окна, сообщающие о том, что программы работают, отрабатывая затраченные на них деньги, в то время как брандмауэр Windows будет в фоне выполнять свою неблагодарную работу, стараясь не тревожить пользователя.

Он включен по-умолчанию и должен оставаться включенным все время, если вы его не отключали вручную или если вы не используете брандмауэр стороннего производителя. Брандмауэр Windows можно найти в панели управления и проверить статус его работы.

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

Configuration on startup

WARNING: Iptables and NetworkManager can conflict. Also if you are concerned enough about security to install a firewall you might not want to trust NetworkManager. Also note NetworkManager and iptables have opposite aims. Iptables aims to keep any questionable network traffic out. NetworkManager aims to keep you connected at all times. Therefore if you want security all the time, run iptables at boot time. If you want security some of the time then NetworkManager might be the right choice.

WARNING: If you use NetworkManager (installed by default on Feisty and later) these steps will leave you unable to use NetworkManager for the interfaces you modify. Please follow the steps in the next section instead.

NOTE: It appears on Hardy, NetworkManager has an issue with properly on saving and restoring the iptable rules when using the method in the next section. Using this first method appears to work. If you find otherwise, please update this note.

Save your firewall rules to a file

sudo sh -c "iptables-save > /etc/iptables.rules"

At this point you have several options. You can make changes to /etc/network/interfaces or add scripts to /etc/network/if-pre-up.d/ and /etc/network/if-post-down.d/ to achieve similar ends. The script solution allows for slightly more flexibility.

Solution #1 — /etc/network/interfaces

(NB: be careful — entering incorrect configuration directives into the interface file could disable all interfaces, potentially locking you out of a remote machine.)

Modify the /etc/network/interfaces configuration file to apply the rules automatically. You will need to know the interface that you are using in order to apply the rules — if you do not know, you are probably using the interface eth0, although you should check with the following command first to see if there are any wireless cards:

iwconfig

If you get output similar to the following, then you do not have any wireless cards at all and your best bet is probably eth0.

lo        no wireless extensions.

eth0      no wireless extensions.

When you have found out the interface you are using, edit (using sudo) your /etc/network/interfaces:

sudo nano /etc/network/interfaces

When in the file, search for the interface you found, and at the end of the network related lines for that interface, add the line:

pre-up iptables-restore < /etc/iptables.rules

You can also prepare a set of down rules, save them into second file /etc/iptables.downrules and apply it automatically using the above steps:

post-down iptables-restore < /etc/iptables.downrules

A fully working example using both from above:

auto eth0
iface eth0 inet dhcp
  pre-up iptables-restore < /etc/iptables.rules
  post-down iptables-restore < /etc/iptables.downrules

You may also want to keep information from byte and packet counters.

sudo sh -c "iptables-save -c > /etc/iptables.rules" 

The above command will save the whole rule-set to a file called /etc/iptables.rules with byte and packet counters still intact.

Solution #2 /etc/network/if-pre-up.d and ../if-post-down.d

NOTE: This solution uses iptables-save -c to save the counters. Just remove the -c to only save the rules.

Alternatively you could add the iptables-restore and iptables-save to the if-pre-up.d and if-post-down.d directories in the /etc/network directory instead of modifying /etc/network/interface directly.

NOTE: Scripts in if-pre-up.d and if-post-down.d must not contain dot in their names.

The script /etc/network/if-pre-up.d/iptablesload will contain:

#!/bin/sh
iptables-restore < /etc/iptables.rules
exit 0

and /etc/network/if-post-down.d/iptablessave will contain:

#!/bin/sh
iptables-save -c > /etc/iptables.rules
if [ -f /etc/iptables.downrules ]; then
   iptables-restore < /etc/iptables.downrules
fi
exit 0

Then be sure to give both scripts execute permissions:

sudo chmod +x /etc/network/if-post-down.d/iptablessave
sudo chmod +x /etc/network/if-pre-up.d/iptablesload

2: Политика по умолчанию

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

Чтобы вернуться к исходным правилам брандмауэра, введите команды:

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

Стандартные правила брандмауэра подходят для персональных компьютеров; серверам обычно необходимо принимать входящий трафик.

Инициализация LXD

Инициализацию LXD нужно делать до того как вы начнете пользоваться контейнерами.

Перед тем как делать инициализацию нужно решить, какое backend хранилище будет использоваться. Backend хранилищ – это место, где находятся все контейнеры и образы. Выделяют два основных типов хранилища: ZFS и Dir.

  • ZFS позволяет моментально создавать и восстанавливать снимки контейнеров, создавать контейнеры из образов. Благодаря ZFS, снимки LXD занимают значительно меньше места, чем сам контейнер.
  • Dir хранит образы обычным способом на диске. Каждый снимок будет занимать столько же, как и сам контейнер.

ZFS монтируется в файл как loop device, поэтому нужно следить за размером хранилища и увеличивать место, если его мало осталось. ZFS имеет смысл использовать, если у вас есть приватное удаленное хранилище образов, куда вы отправляете, время от времени, снимки контейнеров в качестве бэкапов, а затем скачиваете их от туда для установки новых версий или для восстановления контейнеров из бэкапов.

Я на продакшн сервер решил поставить Dir. ZFS протестирую у себя на локалке. Бэкапы буду делать обычными скриптами – упаковывать их в tar и отправлять их на Amazon S3.

После того как вы решили какое backend хранилище использовать, начинайте процесс инициализации. Делается это командой:

Утилита будет задавать вопросы, на которые вам нужно будет ответить. Первым вопросом утилита спросит: какой тип хранилища использовать?

Если ваш ответ Dir, то утилита сразу перейдет к настройке сети. Если ваш ответ ZFS, то система будет задавать следующие вопросы:

«Size in GB of the new loop device» — это размер хранилища ZFS. Все образы и контейнеры будут храниться в этом хранилище, поэтому если вы собираетесь хранить много образов или контейнеров, то нужно увеличить это число.

Затем утилита спросит: нужно ли открывать доступ к LXD из вне? Отвечаем «нет». Если вы хотите создать публичный или приватный репозиторий, то нужно ответить «да».

Adding other applications

The PKG comes with some defaults based on the default ports of many common daemons and programs. Inspect the options by looking in the directory or by listing them in the program itself:

# ufw app list

If users are running any of the applications on a non-standard port, it is recommended to simply make containing the needed data using the defaults as a guide.

Warning: If users modify any of the PKG provided rule sets, these will be overwritten the first time the ufw package is updated. This is why custom app definitions need to reside in a non-PKG file as recommended above!

Example, deluge with custom tcp ports that range from 20202-20205:

title=Deluge
description=Deluge BitTorrent client
ports=20202:20205/tcp

Should you require to define both tcp and udp ports for the same application, simply separate them with a pipe as shown: this app opens tcp ports 10000-10002 and udp port 10003:

ports=10000:10002/tcp|10003/udp

One can also use a comma to define ports if a range is not desired. This example opens tcp ports 10000-10002 (inclusive) and udp ports 10003 and 10009

ports=10000:10002/tcp|10003,10009/udp
Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Ваша ОС
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: