Open udp ports linux

Как открыть порт в Ubuntu / Debian

Здравствуйте, друзья. Если у вас есть сервер или компьютер, тогда вам требуется Firewall. Firewall добавит дополнительный уровень безопасности вашей системе. С помощью брандмауэра (Firewall) вы можете открыть любой порт на Ubuntu / Debian и контролировать доступ к вашему компьютеру. В этом посте мы покажем как открыть порты в Ubuntu / Debian.

UFW: это простой брандмауэр на Ubuntu / Debian

По умолчанию брандмауэром Linux является IPTables. Хотя это очень эффективное и гибкое приложение, правда в том, что им сложно управлять. Поэтому сообщество создало не менее эффективные, но более простые в использовании альтернативы, такие как UFW.

Вкратце, UFW означает Uncomplicated Firewall и является своего рода Front-end для IPTables, но предназначенный для Ubuntu / Debian. С его помощью вы можете быстро и легко настраивать правила и открывать порты в системе.

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

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

Итак, давайте мы вам покажем, как открыть порты в Ubuntu / Debian с помощью UFW.

Включение UFW на Ubuntu / Debian

В официальной документации по UFW сказано, что по умолчанию UFW отключен. Давайте проверим это, выполните следующую команду:

Скорее всего, вы увидите на экране ответ похожий на этот:

Как вы поняли первым шагом перед настройкой UFW является его включение. Для того чтоб включить UFW выделите следующую команду.

Вы должны увидеть следующий экран:

Включение UFW на Ubuntu или Debian

По английски это звучит как-то так «he firewall is active and enabled on system startup»

Если вы снова проверите статус службы, вы должны получить следующий результат

Проверить статус UFW в Ubuntu или Debian

Теперь UFW активен в системе. Далее мы можем начать работать с UFW и открыть нужные нам порты.

Открытие порт в Ubuntu / Debian с помощью UFW

С помощью UFW мы можем начать открывать порты. Существует несколько способов сделать это, но все они одинаково просты.

Читайте также:  Установка linux mint файловая система

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

Итак, если на вашем компьютере работают службы баз данных, SSH или FTP, то вам может понадобиться открыть эти порты. Если у вас не работают эти службы, то я не рекомендую их открывать.

Заканчиваем мат. чать и приступаем.

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

Например, если мы хотим открыть порт 80, через который работает HTTP. Требуется выполнить вот такую команду:

Вы получите ответ в терминале подобное этому:

Открыть порт 80 в Ubuntu или Debian

В данном случае порт 80 был открыт в обоих протоколах TCP и UDP.

Также можно указать протокол и порт, который будет открыт. Это очень полезно для контроля трафика.

Если например вы хотите открыть порт 85, но только для протокола TCP, то вам нужно выполнить следующую команду.

А если требуется открыть UDP порт, тогда команда будет такой.

В обоих случаях вы получите ответ, похожий на этот:

Открыть порт UDP или TCP в Ubuntu и Debian

Открыть порт в Ubuntu / Debian, указав системную службу

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

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

И вы должны получить следующий результат:

Открыть порт SSH в UFW на Ubuntu или Debian

В данном примере будет открыт порт 22, который является портом, используемым SSH.

Если вы хотите узнать, какие еще службы вы можете использовать, вы можете ознакомиться с ними, введя команду.

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

Закрыть порт UFW в Ubuntu и Debian

Как открыть мы показали, а теперь я покажу вам обратный процесс. Синтаксис аналогичен. Нам требуется просто изменить одно слово в команде с «allow» на «deny«. Например чтоб запретить доступ к порту 80 введите команду.

Данная команда закроет порт 80 как на TCP, так и UDP. Так же как и в разрешающей команде можно использовать протоколы порта, TCP и UDP.

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

Ответ в терминале будет таким:

Закрыть порт службы SSH в UFW на Ubuntu и Debian

Таким образом, вы можете контролировать входящий трафик.

Заключение

Благодаря UFW открыть порт в Ubuntu / Debian очень легко. В этой инструкции мы показали как открыть или закрыть определенный порт в Ubuntu или Debian.

Источник

Как открывать порты в системе Linux

Порт — это конечная точка соединения. В операционной системе порт открывается или закрывается для передачи пакетов данных определенных процессов или сетевых служб.

Читайте также:  Apple drivers for linux

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

Первые 1024 порта (номера портов от 0 до 1023) называются общеизвестными или системными и зарезервированы для часто используемых служб. К ним относятся SSH (порт 22), HTTP (порт 80), HTTPS (порт 443) и тому подобное.

Номера портов выше 1024 называются эфемерными портами.

  • Порты с номерами от 1024 до 49151 называются зарегистрированными/пользовательскими.
  • Номера портов с 49152 по 65535 называются динамическими/частными портами.

В этом мануале мы откроем эфемерный порт в Linux, поскольку общие службы используют известные порты.

Требования

Для выполнения туториала нужно уметь пользоваться терминалом.

Проверка открытых портов

Прежде чем открыть порт в Linux, нужно проверить список всех открытых портов и выбрать эфемерный порт, которого нет в этом списке.

С помощью команды netstat можно получить список всех открытых портов, включая TCP и UDP — это распространенные протоколы для передачи пакетов на сетевом уровне.

Учитывая используемые флаги, команда выводит следующее:

Active Internet connections (only servers)

Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 127.0.0.1:5432 0.0.0.0:* LISTEN tcp 0 0 127.0.0.1:27017 0.0.0.0:* LISTEN tcp 0 0 127.0.0.1:6379 0.0.0.0:* LISTEN tcp 0 0 127.0.0.53:53 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN tcp6 0 0 ::1:5432 . * LISTEN tcp6 0 0 ::1:6379 . * LISTEN tcp6 0 0 . 22 . * LISTEN udp 0 0 127.0.0.53:53 0.0.0.0:* LISTEN

Примечание. Если в вашем дистрибутиве нет netstat, то с помощью команды ss можно вывести список открытых портов путем проверки сокетов прослушивания.

Убедитесь, что команда ss выводит согласованные выходные данные:

Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port udp UNCONN 0 0 127.0.0.53%lo:53 0.0.0.0:* tcp LISTEN 0 128 127.0.0.1:5432 0.0.0.0:* tcp LISTEN 0 128 127.0.0.1:27017 0.0.0.0:* tcp LISTEN 0 128 127.0.0.1:6379 0.0.0.0:* tcp LISTEN 0 128 127.0.0.53%lo:53 0.0.0.0:* tcp LISTEN 0 128 0.0.0.0:22 0.0.0.0:* tcp LISTEN 0 128 [::1]:5432 0.0.0.0:* tcp LISTEN 0 128 [::1]:6379 0.0.0.0:* tcp LISTEN 0 128 [::]:22 0.0.0.0:*

Эта команда выводит практически те же открытые порты, что и netstat.

Открытие порта для TCP-соединений

Теперь откроем закрытый порт и настроим его на прослушивание TCP-соединений.

В этом туториале мы откроем порт 4000. Но при желании вы можете выбрать другой закрытый порт. Только убедитесь, что его номер больше 1023.

С помощью команды netstat убедитесь, что порт 4000 не используется:

То же самое можно сделать с помощью команды ss:

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

Ubuntu и системы на базе ufw

ufw — клиент командной строки для брандмауэра UncomplicatedFirewall.

Команда будет выглядеть следующим образом:

CentOS и системы на базе firewalld

firewall-cmd — клиент командной строки для брандмауэра firewalld.

Команды будут выглядеть так:

Для других дистрибутивов Linux

Изменить системные правила фильтрации пакетов IPv4 можно с помощью iptables.

Читайте также:  Установка драйверов linux tar

iptables -A INPUT -p tcp —dport 4000 -j ACCEPT

Тестирование порта

После успешного открытия TCP-порта нужно его протестировать.

При отправке вывода ls любому подключенному клиенту, сначала запустите netcat (nc) и прослушивайте (-l) порт (-p) 4000:

Теперь клиент получит вывод ls после того, как он откроет TCP-соединение на порту 4000. Пока оставьте этот сеанс.

Откройте другой терминал на той же машине.

Поскольку мы открыли TCP-порт, мы можем протестировать TCP-подключения с помощью telnet. Если у вас этой команды нет, установите ее с помощью менеджера пакетов.

Введите IP вашего сервера и номер порта (в данном случае 4000) и выполните следующую команду:

Эта команда пытается открыть TCP-соединение на локальном хосте через порт 4000.

Получим следующий вывод, в котором указано, что соединение с программой установлено (nc):

Trying ::1. Trying 127.0.0.1. Connected to localhost. Escape character is '^]'. while.sh

Вывод ls (в данном примере while.sh) отправлен клиенту, что указывает на успешное TCP-соединение.

С помощью nmap проверьте, открыт ли порт (-p):

Эта команда проверит открытый порт:

Starting Nmap 7.60 ( https://nmap.org ) at 2020-01-18 21:51 UTC Nmap scan report for localhost (127.0.0.1) Host is up (0.00010s latency). Other addresses for localhost (not scanned): ::1 PORT STATE SERVICE 4000/tcp open remoteanything Nmap done: 1 IP address (1 host up) scanned in 0.25 seconds

Как видите, вы успешно открыли новый порт в Linux.

Примечание: nmap выводит список только открытых портов, на которых в данный момент есть прослушивающее приложение. Если вы не используете приложение для прослушивания (например netcat), то порт 4000 будет отображаться как закрытый, поскольку в настоящее время на этом порту нет ни одного прослушивающего приложения. Аналогично не будет работать и telnet, поскольку этой команде также нужно прослушивающее приложение. Именно по этой причине nc такой полезный инструмент. Он имитирует такие среды с помощью простой команды.

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

Сохранение правил брандмауэра

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

Для брандмауэра ufw

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

Для firewalld

Необходимо применить флаг –permanent, чтобы правила были действительны после перезагрузки системы.

Для iptables

Чтобы сохранить правила конфигурации, рекомендуется использовать iptables-persistent.

Подводим итоги

В этом туториале мы разобрали, как открыть новый порт в Linux и настроить его для входящих соединений, а также поработали с netstat, ss, telnet, nc и nmap.

Источник

Оцените статью
Adblock
detector