знать какие порты используются в системе - это основная задача любого администратора. От настройки интерфейсов до защиты от вторжений и устранения любых неполадок, которые мы можем себе представить, мы должны иметь возможность проверить, предоставляет ли порт какие-либо услуги в нашей среде.
Представьте себе ситуацию, в которой вы установили службу печати CUPS в своей системе и не знаете, правильно ли была запущена служба и подняла ли она соответствующий порт 631 или дополнительный порт 515. В этом руководстве мы покажем вам три основных команды для определения портов, используемых системой и каков его статус.
Далее мы рассмотрим 3 основные команды, которые особенно полезны при администрировании любой системы. Около lsof, netstat и nmap, утилиты, которые мы будем запускать из консоли терминала и с привилегиями root.
Индекс
Команда lsof
Команда Lsof самый простой сколько мы даем вам взаймы, и, будучи родным от Linux, базой, которую должен знать каждый пользователь. Чтобы узнать, какие порты открыты в системе с помощью этой команды, вы должны ввести следующую последовательность: он покажет вам различную информацию где выделим: название приложения (например, sshd), гнездо программы (в данном случае IP-адрес 10.86.128.138, связанный с портом 22, который является ПРОСЛУШИВАНИЕМ) и идентификатор процесса (который будет 85379).
$ sudo lsof -i -P -n $ sudo lsof -i -P -n | grep LISTEN

Команда netstat
Команда NetStat немного отличается по синтаксису от предыдущего, но имеет некоторые параметры намного легче запомнить благодаря простому мнемоническому слову. Отныне не забывай слово путона, который относится к следующим характеристикам:
- p: показывает соединения для указанного протокола, который может быть TCP или UDP.
- u: список всех портов UDP.
- t: перечислить все TCP-порты.
- o: отображает таймеры.
- n: показывает номер порта.
- a: отображает все активные соединения в системе.
Таким образом, введя команду и отфильтровав ее с помощью труба мы можем получить информацию о конкретном порте.
$ netstat -putona | grep numero-de-puerto
Команда Nmap
Nmap Это утилита, которую мы позволяет выполнять множество сканирований в нашей системе и один из них, один из открытых портов в оборудовании. Для его выполнения необходимо ввести последовательность вида nmap -sX -OY, принимая X значение T или U для TCP или UDP соединения соответственно и значение Y IP-адрес нашей машины (или localhost для краткости). Взгляните на следующий пример.
</pre> $ sudo nmap -sU -O localhost $ sudo nmap -sT -O 192.168.0.1 <pre>
С этими тремя приложениями у вас уже есть достаточно инструментов для определения открытых портов вашего компьютера. Используете ли вы те же инструменты или знаете ли вы какой-либо другой способ проверить открытые порты системы?
5 комментариев, оставьте свой
Я ничего не понимаю. Нормально, я не специалист, но интересно 🙂
Привет, добрый день, как я могу увидеть данные, поступающие через порт?
У меня есть устройство, которое с помощью gprs отправляет мне строки на порт 10005 моего Ubuntu, и мне нужно через терминал, чтобы увидеть строки, которые мне приходят, не могли бы вы поддержать меня? Спасибо. slds
С помощью команды netstat -putona я заметил, что адрес 127.0.0.1 появляется в двух протоколах tcp и upd, в обоих случаях это порт 53. Это нормально или правильно? По совпадению у меня проблемы с рабочим столом dnsmasq и zimbra, который не запускается в ubuntu 16.04.
При попытке запустить zimbra он показывает мне: Страница 127.0.0.1 отклонила соединение.
Я ценю вашу помощь в присоединении к этому сообществу.
Очень хорошо.
Просто добавьте: с помощью ls вы можете узнать путь процесса, а также есть другие команды, такие как ss или fuser, с помощью которых мы можем увидеть, какой процесс использует порт.
Видно здесь: https://www.sysadmit.com/2018/06/linux-que-proceso-usa-un-puerto.html
Отлично, хорошо резюмировано и объяснено, я не забываю о PUTONA, хе-хе. ;-D