Вступление
В операционной системе Linux порт — это конечная точка связи для отправки или получения данных по сети. Сетевые порты идентифицируются номером, и каждый номер порта связан с определенным типом сетевой службы. Например, порт 80 используется для HTTP-трафика, порт 21 — для FTP, а порт 25 — для электронной почты.
Чтобы установить сетевое соединение, вам нужно открыть порт в вашей системе Linux. Это можно сделать несколькими способами, в том числе с помощью встроенных программ брандмауэра FirewallD, UFW и iptables. Каждый из этих методов имеет свой набор преимуществ и недостатков, и в этой статье мы обсудим, как открыть порт в Linux с помощью каждого из этих методов.
Проверьте порты прослушивания в вашей системе.
Вы можете использовать утилиту командной строки `ss` или `netstat`, чтобы получить список всех прослушиваемых портов в вашей локальной системе.
ss -tuln
Эта команда выведет список всех прослушиваемых портов на вашем компьютере вместе с сокетом, подключенным к этим портам. Вы можете отфильтровать порт прослушивания с помощью следующей команды.
ss -tuln | grep "LISTEN"
Чтобы открыть порты в операционной системе Linux, вы можете использовать команду iptables
или брандмауэр, такой как ufw
.
Открытие портов через iptables
Вот несколько примеров того, как открывать порты с помощью iptables
:
Откройте порт 80:
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
Откройте двери с 21 по 25:
iptables -A INPUT -p tcp --dport 21:25 -j ACCEPT
Откройте порт 80 для определенного IP-адреса:
iptables -A INPUT -p tcp -s 192.168.1.5 --dport 80 -j ACCEPT
Откройте порты с помощью FirewallD
FirewallD — это инструмент управления брандмауэром, включенный во многие популярные дистрибутивы Linux, включая CentOS, Fedora и Red Hat Enterprise Linux. Он предоставляет простой и удобный интерфейс для настройки правил брандмауэра в вашей системе.
Список служб: чтобы открыть порт с помощью FirewallD, сначала нужно проверить, указана ли служба, которую вы хотите разрешить, в списке служб по умолчанию. Вы можете сделать это, выполнив следующую команду:
firewall-cmd --get-services
Отобразится список всех служб по умолчанию, поддерживаемых FirewallD.
Открыть порт для имени службы: если служба, которую вы хотите разрешить, указана в списке, вы можете открыть порт, выполнив следующую команду:
firewall-cmd --permanent --add-service=service_name
Замените «имя_службы» на имя службы, которую вы хотите разрешить. Например, чтобы открыть порт 80 для HTTP-трафика, выполните следующую команду:
firewall-cmd --permanent --add-service=http
Открыть порт по номеру: если служба, которую вы хотите разрешить, не указана в списке служб по умолчанию, вы можете открыть определенный порт, выполнив следующую команду:
firewall-cmd --permanent --add-port=port_number/protocol
Замените «port_number» на номер порта, который вы хотите открыть, а «protocol» на протокол, используемый службой (либо «tcp», либо «udp»). Например, чтобы открыть порт 8080 для HTTP-трафика по протоколу TCP, выполните следующую команду:
firewall-cmd --permanent --add-port=8080/tcp
Сохранить правила брандмауэра: после добавления необходимого правила брандмауэра вам необходимо перезагрузить брандмауэр, чтобы изменения вступили в силу. Вы можете сделать это, выполнив следующую команду:
firewall-cmd --reload
Открывай двери с ufw
Вот как открыть порты с помощью ufw
:
Откройте порт 80:
sudo ufw allow 80/tcp
Откройте двери с 21 по 25:
sudo ufw allow 80/tcp
Откройте порт 80 для определенного IP-адреса:
sudo ufw allow from 192.168.1.5 to any port 80
Имейте в виду, что открытие портов может увеличить риск безопасности вашей системы. Убедитесь, что вы понимаете последствия того, что вы делаете, и примите соответствующие меры безопасности.
Заключение
В этой статье мы рассмотрели три различных инструмента, которые можно использовать для открытия порта в Linux: FirewallD, UFW и iptables. FirewallD — это инструмент управления брандмауэром, который предоставляет внешний интерфейс для iptables. Это интуитивно понятный инструмент, позволяющий легко управлять правилами брандмауэра. UFW — еще один удобный инструмент брандмауэра, который позволяет легко открывать и закрывать порты. Наконец, мы рассмотрели iptables, более продвинутый инструмент, который предлагает больший контроль над вашим брандмауэром. Все три этих инструмента можно использовать, чтобы открыть порт в Linux и разрешить поток сетевого трафика к определенным программам или службам. Суть в том, что выбор инструмента для использования будет зависеть от вашего уровня знакомства с брандмауэрами Linux и ваших личных предпочтений.