Сервера
August 24

Руководство по работе с портами на серверах


Что такое порты?

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

Основные типы портов

  1. TCP (Transmission Control Protocol): Обеспечивает надежную передачу данных с подтверждением доставки.
  2. UDP (User Datagram Protocol): Быстрый, но ненадежный метод передачи данных без подтверждения доставки.

Файрволл: защита и управление трафиком

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

Управление портами и файрволлом

Прежде чем включать или отключать UFW(Uncomplicated Firewall), рекомендуется проверить его текущий статус:

1. Проверка состояния UFW

sudo ufw status

2. Включение и отключение UFW

Включение

sudo ufw enable

Выключение

sudo ufw disable

3. Просмотр всех правил UFW

sudo ufw status verbose

4. Открытие порта

sudo ufw allow 8080/tcp

5. Закрытие порта:

sudo ufw deny 8080/tcp

iptables

Если UFW не включен, используется iptables для управления правилами:

1. Открытие порта с помощью iptables:

sudo iptables -A INPUT -p tcp --dport 8080 -j ACCEPT

2. Закрытие порта:

sudo iptables -A INPUT -p tcp --dport 8080 -j DROP

3. Сохранение правил iptables

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

sudo iptables-save > /etc/iptables/rules.v4

4. Просмотр всех правил iptables

sudo iptables -L

Перенаправление трафика с одного порта на другой

Для перенаправления трафика с одного порта на другой используется iptables:

sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080

Этот пример перенаправляет весь входящий трафик с порта 80 на порт 8080.

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

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

ss -tuln
netstat -tuln

Проверка прослушиваемых портов

Прослушивание порта — это процесс, при котором определенный сервис или приложение на сервере ожидает входящих соединений на заданном порте. Когда приложение или сервис начинает работать, оно открывает один или несколько портов для прослушивания, чтобы принимать входящие запросы от клиентов. Например, веб-сервер может прослушивать порт 80 (HTTP) или 443 (HTTPS) для обработки запросов пользователей.

sudo lsof -nP -i | grep LISTEN
Наш телеграмм канал по нодам — https://t.me/g7monitor
Наш чат по нодам — https://t.me/g7team_chat