- Как узнать, открыт или закрыт порт TCP или UDP в Linux
- Просмотр открытых портов с помощью Netcat
- Просмотр открытых портов с помощью Nmap
- Проверьте брандмауэр в Linux
- Просмотр статуса TCP- и UDP-подключений
- Проверка доступности TCP / UDP портов на удаленной машине
- Selectel — ведущий провайдер облачной инфраструктуры и услуг дата-центров
- UPD 05.01.2022
- Похожие записи
- Перенос файлового хранилища Seafile со всеми данными на другой сервер
- Синхронизация времени в Debian
- Установка CalDAV / CardDAV сервиса Davical 1.1.5 + LDAP на CentOS 6.8
- Установка и настройка MRTG + SNMP на CentOS 6
- [РЕШЕНО] GPT структура разделов при авто установке (preseed) Debian 11 / Debian 10
- Как установить Notepadqq (аналог Notepad++) in Ubuntu 18.04, 17.10
Как узнать, открыт или закрыт порт TCP или UDP в Linux
Информация о том, открыт или закрыт порт TCP или UDP, является фундаментальной задачей для любого системного и сетевого администратора. Часто важно знать, открыты ли порты, чтобы установить связь со службой, которая прослушивает их, но также очень важно знать, закрыты ли они, чтобы избежать возможных проблем с безопасностью. Сегодня в этой статье мы покажем вам, как узнать, открыт или закрыт порт в Linux операционная система, поскольку эта операционная система обычно используется на серверах.
Есть несколько способов проверить, открыт или закрыт определенный порт, особенно в Linux, первый из них — использовать популярную программу Netcat, которая предустановлена во всех дистрибутивах, а затем очень хороший способ узнать, открыт ли порт. Это можно сделать, проверив его напрямую с помощью Nmap программа, которая позволит нам сканировать все порты определенного хоста. Наконец, если мы хотим знать, есть ли у нас открытый или закрытый порт, нам нужно будет посмотреть его в брандмауэр а также в текущих подключениях операционной системы.
Просмотр открытых портов с помощью Netcat
Netcat — это инструмент, который по умолчанию входит в большинство дистрибутивов Linux, поэтому, помимо того, что он очень прост в использовании, нам не нужно устанавливать никаких дополнительных пакетов. Прежде чем проверять с помощью Netcat, открыт ли порт, давайте посмотрим на два наиболее важных параметра Netcat:
- z — это параметр, который гарантирует, что в конце проверки соединение будет закрыто или, в противном случае, программа будет продолжать работать в цикле до тех пор, пока мы вручную не завершим ее с помощью Ctrl + C, аналогично тому, как когда пинг на Linux.
- v — параметр, отвечающий за проверку того, открыт ли порт или закрыт.
Чтобы проверить порт, мы должны ввести в терминал следующее:
Например, чтобы проверить порт 443 на нашем маршрутизаторе мы будем Тип:
На следующем изображении вы можете увидеть, как этот порт открыт:
Если мы протестируем сайт этой статьи и порт 443, мы получим аналогичную информацию:
В случае, если он закрыт, мы должны поставить это:
Как вы видели, очень легко проверить, открыт или закрыт порт, с помощью Netcat, очень простой утилиты, которая предустановлена в Linux. В дополнение к командам «z» и «v» у нас также есть другие доступные аргументы, которые позволят нам узнать больше информации. Если мы выполним следующую команду, появится справка:
Как видите, у нас есть много аргументов в пользу расширения функциональности.
Просмотр открытых портов с помощью Nmap
Nmap — это программа, которая по преимуществу обнаруживает хосты, а также проверяет, открыты ли разные порты. Эта программа не предустановлена в операционных системах Linux, но мы можем установить ее прямо из репозиториев в следующем порядке:
После установки, чтобы узнать, открыт ли конкретный порт, мы должны ввести следующую команду:
На следующем изображении вы можете увидеть, как будет выглядеть открытый порт:
В случае, если порт закрыт или фильтруется брандмауэром, появится следующее:
Если мы хотим просканировать все порты определенного хоста или диапазон портов, нам нужно будет указать диапазон портов следующим образом:
Как видите, проверить открытые порты с помощью Nmap действительно просто, кроме того, мы можем сканировать все хосты в домашней или профессиональной локальной сети, чтобы позже просканировать различные порты.
Проверьте брандмауэр в Linux
Если мы хотим проверить, есть ли у нас открытый порт для приема соединений, первое, что нужно проверить, — это статус брандмауэра в нашей операционной системе Linux. По умолчанию на всех серверах Linux политика разрешающая, то есть все пакеты принимаются политикой. Мы можем изменить эту политику на ограничительную и даже добавить новые таблицы, цепочки и правила, чтобы разрешить или запретить трафик.
Если в нашем Linux-терминале мы ставим следующее:
Все цепочки и правила мы получим из таблицы «filter» iptables, в случае использования Nftables необходимо указать следующую команду:
Очень важная рекомендация по безопасности заключается в том, что все порты на сервере Linux должны быть закрыты, таким образом, когда мы запускаем службу, прослушивающую определенный порт, он не будет доступен, если мы не разрешим это в брандмауэре. Мы должны детально проверить, открыт ли тот или иной порт, чтобы наши услуги были доступны из-за границы.
Просмотр статуса TCP- и UDP-подключений
Если нас интересует состояние всех протоколов TCP, UDP, ICMP и других в нашей операционной системе, широко используемым инструментом всегда был «netstat», однако этот инструмент был на втором месте благодаря новому «ss». это позволит нам легко и быстро получить большой объем информации. Этот инструмент отвечает за проверку всех открытых или закрытых сокетов на нашем сервере Linux, и мы сможем увидеть статистику этих открытых или закрытых сокетов. Если вы использовали инструмент netstat в прошлом, мы уверены, что вам понравится этот новый инструмент «ss».
Инструмент «ss» уже предустановлен в операционных системах Linux как часть самой системы, как и в случае с «ping», «traceroute» и многими другими инструментами. Если мы открываем консоль как в пользовательском режиме, так и в режиме суперпользователя, мы должны выполнить:
Как только мы выполним этот заказ, мы увидим следующее:
Мы увидим статус соединения (ESTAB), а также полученные и отправленные пакеты, локальный адрес и порт, а также удаленный адрес и используемый порт. Мы собираемся получить большое количество портов, используемых различными программами и службами, которые мы установим в операционной системе.
Если мы хотим видеть статус всех портов (сокетов), мы можем установить следующий порядок:
Если мы хотим видеть только порты, которые «слушают», мы должны ввести следующую команду:
На следующем изображении вы можете увидеть пример портов, которые ГОТОВЫ для приема входящих соединений:
В случае, если мы хотим показать TCP-соединения, нам нужно будет использовать аргумент «-t», а в случае, если мы хотим показать UDP-соединения, нам придется использовать аргумент «-u».
Команда «ss» действительно полезна для отображения всех установленных соединений, а также для прослушивания в нашей операционной системе Linux.
Как вы видели, у нас есть разные методы, чтобы узнать, открыт или закрыт порт на удаленном хосте, а также на нашем локальном компьютере, в зависимости от того, что нам интересно знать, мы будем использовать тот или иной инструмент, самое важное. заключается в том, что все неиспользуемые порты должны быть закрыты в целях безопасности через брандмауэр, таким образом мы избежим проблем с безопасностью и эксплуатации уязвимостей на серверах.
Проверка доступности TCP / UDP портов на удаленной машине
Для проверки доступности TCP / UDP портов на удаленной машине будем использовать утилиту Netcat Установка:
### CentOS $ sudo yum install nc ### Debian / Ubuntu $ sudo apt update $ sudo apt install netcat
Selectel — ведущий провайдер облачной инфраструктуры и услуг дата-центров
Компания занимает лидирующие позиции на рынке на рынке выделенных серверов и приватных облаков, и входит в топ-3 крупнейших операторов дата-центров в России.
$ nc -zv 10.10.4.4 22 srv-app.local [10.10.4.4] 22 (ssh) open
$ nc -uv 10.10.4.2 123 srv-dc01.local [10.10.4.2] 123 (ntp) open
UPD 05.01.2022
$ sudo nmap -p22 79.308.191.187 Starting Nmap 6.40 ( http://nmap.org ) at 2022-01-05 19:40 MSK Nmap scan report for 79.308.191.187 Host is up (0.0015s latency). PORT STATE SERVICE 22/tcp open ssh Nmap done: 1 IP address (1 host up) scanned in 0.53 seconds
$ sudo nmap -sU -p U:123 94.247.111.10 Starting Nmap 6.40 ( http://nmap.org ) at 2022-01-05 19:37 MSK Nmap scan report for ntp.truenetwork.ru (94.247.111.10) Host is up (0.049s latency). PORT STATE SERVICE 123/udp open ntp Nmap done: 1 IP address (1 host up) scanned in 0.47 seconds
У блога появился новый хостинг, его любезно предоставила компания Selectel. Selectel — Серверы. Облако. Дата-центры. Строим и поддерживаем IT-инфраструктуру компаний, которые создают и развивают цифровые продукты.
Если вам понравился мой блог и вы хотели бы видеть на нем еще больше полезных статей, большая просьба поддержать этот ресурс. Если вы размещаете материалы этого сайта в своем блоге, соц. сетях, и т.д., убедительная просьба публиковать обратную ссылку на оригинал
Похожие записи
Перенос файлового хранилища Seafile со всеми данными на другой сервер
Чтобы перенести seafile со всеми пользователями и данными на другой сервер, необходимо: На старом сервере сделать бэкап mysql-базы и каталога, где лежит seafile На новом сервере установить и настроить mysql-сервер и web-сервер Перенести бэкап со старого сервера на новый Развернуть бэкап на новом сервере Создаем резервную копию Seafile на старом сервере Разворачиваем бэкап на новом…
Синхронизация времени в Debian
Systemd-timesyncd – встроенная служба для синхронизации времени компьютера с ntp-серверами. Эта служба реализует упрощенный клиент SNTP. В отличие сложных реализаций NTP, systemd-timesyncd представляет только клиентскую часть. Смотрим текущий статус синхронизации времени Включаем использование systemd-timesyncd для синхронизации времени Настроим systemd-timesyncd.Конфигурационный файл расположен тут: /etc/systemd/timesyncd.conf где 192.168.1.1, 192.168.1.2 – ntp серверы По-умолчанию служба выключена. Включаем и перезапускаем…
Установка CalDAV / CardDAV сервиса Davical 1.1.5 + LDAP на CentOS 6.8
Скачиваем davical и awd wget https://gitlab.com/davical-project/awl/repository/archive.tar.gz?ref=master -O awl.tar.gz wget https://gitlab.com/davical-project/davical/repository/archive.tar.gz?ref=master -O davical.tar.gz Распаковываем tar -xzf awl.tar.gz tar -xzf davical.tar.gz Перемещаем mv awl-master-4c75c662e8605ed54ba4b8e65e4c3a8cc773052f/ /usr/share/awl mv davical-master-8313f765ce89f752af77e0e0a90f3d1f5981b5b5/ /usr/share/davical Меняем права chmod 755 -R /usr/share/awl/ chmod 755 -R /usr/share/davical/ Устанавливаем postgresql 9.6 rpm -Uvh https://yum.postgresql.org/9.6/redhat/rhel-6-x86_64/pgdg-redhat96-9.6-3.noarch.rpm yum install postgresql96-server postgresql96 postgresql96-lib Инициализируем базу данных service postgresql-9.4 initdb Запускаем сервис…
Установка и настройка MRTG + SNMP на CentOS 6
1. Ставим утилиты: yum install net-snmp net-snmp-utils net-snmp-devel zlib libpng gd mrtg После установке имеем следующие конфигурационные файлы: /etc/snmpd/snmpd.conf /etc/mrtg/mrtg.cfg /etc/cron.d/mrtg /etc/httpd/conf.d/mrtg.conf 2. Редактируем конфиг SNMP /etc/snmpd/snmpd.conf nano /etc/snmpd/snmpd.conf com2sec local localhost public group MyRWGroup v1 local group MyRWGroup v2c local group MyRWGroup usm local view all included .1 80 access MyRWGroup “” any noauth…
[РЕШЕНО] GPT структура разделов при авто установке (preseed) Debian 11 / Debian 10
GPT — более новая и продвинутая структура разделов. При использовании MS-DOS partition table (MBR) на жёстком диске может быть сформировано 3 основных раздела (primary) и один дополнительный (extended). Загружаться можно только в режиме эмуляции BIOS. Ограничение на емкость диска 2 Tb. При использовании GUID partition table (GPT) на жёстком диске может быть сформировано 128 разделов,…
Как установить Notepadqq (аналог Notepad++) in Ubuntu 18.04, 17.10
Рассмотрим варианты установки: установка Notepadqq из репозитория установка Notepadqq как snap пакета Установка Notepadqq из репозитория Добавим репозиторий. Откройте терминал (Ctrl+Alt+T) и выполните команду Синхронизируем индексные файловые пакеты с источниками Установим Notepadqq Удаление Notepadqq Для удаления Notepadqq откройте терминал (Ctrl+Alt+T) и выполните команду Установка Notepadqq как snap пакета Добавим поддержку snap в Ubuntu. Откройте терминал…