К основному контенту

Mylg — средство мониторинга сети для командной строки для Linux-систем

В этой статье мы покажем, как установить и использовать программное обеспечение для мониторинга сети под названием My Looking Glass, или mylg.

Оно было довольно рано разработано, но  уже поддерживает множество замечательных функций, таких как, например, анализатор пакетов, веб-панель мониторинга, сканирование портов и многое другое.

Мы установим его на Ubuntu 16.04 LTS.

Что mylg может диагностировать в сети

1) Трассировка в реальном времени (поддержка сетей IPv4 и IPv6)
2) Улучшена команда Dig
3) Анализатор пакетов TCP/IP
4) Улучшенный HTTP-пинг и дамп
5) Команды сканирования портов
6) Информация о пирах
7) Обнаружение LAN сети
8) Сбор информации о ASN, IP/CIDR
9) Информация о поиске DNS

Как установить mylg

Программное обеспечение mylg написано на языке программирования Go.

Оно требует libcap как зависимость пакетов.

 #  apt-get install libpcap-dev golang 

Затем нам нужно получить mylg deb пакет. Скачаем его:

 # wget http://mylg.io/dl/linux/mylg.amd64.deb

И затем установите его:

 # dpkg -i mylg.amd64.deb 

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

 # mylg 



При этом часть установки завершена.

Мы переходим к части его использованию.

Использование анализатора пакетов mylg

Mylg содержит мощные функции анализа пакетов, которые полагаются на libcap и несколько сопоставимы с Wireshark.

Таким образом, это будет первая функция, которую мы проверим. Чтобы получить захваченный и проанализированный пакет, мы будем использовать команду dump.

# dump -c 7 

Он должен захватывать и анализировать до 7 пакетов.

Мы получили 6.

Поскольку у меня есть активное соединение SSH с примером KVM Ubuntu, на котором запущен mylg, он будет захватывать связь между VM и хостом.

Вот что я получил:



Обратите внимание, что протоколы окрашены, а ваш собственный хост, где работает mylg, выделен жирным шрифтом.

Чтобы получить более конкретный вывод, вы можете использовать синтаксис фильтра пакетов berkeley и длинный список модификаторов.

Например, чтобы получить только udp-пакеты, вы можете ввести:

# dump -c 3 udp Interface: ens3, capture size: 6144 bytes 13:03:04.351 IPv4/UDP 192.168.122.1:17500(db-lsp-disc) > 192.168.122.255:17500(db-lsp-disc) , len: 145 13:03:04.355 IPv4/UDP miki-Standard-PC-i440FX-PIIX-1996.:40595 > 192.168.122.1:53(domain) , len: 0 13:03:04.355 IPv4/UDP 192.168.122.1:53(domain) > miki-Standard-PC-i440FX-PIIX-1996.:40595 , len: 0

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

# dump -c 1 host miki-Standard-PC-i440FX-PIIX-1996 Interface: ens3, capture size: 6144 bytes 13:02:22.067 IPv4/UDP miki-Standard-PC-i440FX-PIIX-1996.:37228 > 192.168.122.1:53(domain) , len: 0

Некоторый синтаксис, который вы можете использовать для получения необходимой информации:

host hostname

src host hostname

dst host hostname

and, not, or support in the syntax

tcp, udp, icmp, icmp6, ip, ipv6

Как показать маршруты трассировки

Mylg поддерживает traceroute по сравнению с большинством других инструментов сетевого мониторинга, но добавляет немного дополнительной поддержки в реальном времени.

Позволяет отслеживать Google с помощью основной команды трассировки:

 # trace google.com trace route to google.com (216.58.214.206), 30 hops max 1 192.168.122.1 0.092 ms 0.097 ms 0.061 ms 2 192.168.1.1 1.886 ms 1.195 ms 1.652 ms 3 212.200.180.146 [ASN 8400/TELEKOM-AS] 10.282 ms 13.892 ms 8.344 ms 4 212.200.180.123 [ASN 8400/TELEKOM-AS] 8.929 ms 8.749 ms 8.287 ms 5 212.200.7.74 [ASN 8400/TELEKOM-AS] 12.248 ms 19.486 ms 11.621 ms 6 212.200.7.79 [ASN 8400/TELEKOM-AS] 10.686 ms 11.148 ms 10.833 ms 7 79.101.96.177 [ASN 8400/TELEKOM-AS] 22.842 ms 22.434 ms 25.806 ms 8 209.85.243.181 [ASN 15169/GOOGLE] 22.145 ms 23.683 ms 23.397 ms 9 66.249.94.113 [ASN 15169/GOOGLE] 21.702 ms 22.207 ms 21.780 ms 10 bud02s23-in-f14.1e100.net. (216.58.214.216) [ASN 15169/GOOGLE] 22.946 ms 23.247 ms 22.676 ms 

Если вам нужно захватить отчет, команда трассировки может запускаться в реальном времени для 10 захватов пакетов и делать отчет.

 # trace bing.com -r -R ──[ myLG ]── traceroute to bing.com (204.79.197.200) Host ASN Holder Sent Lost% Last Avg Best Wrst 192.168.122.1 10 0.0 0.18 0.17 0.08 0.20 192.168.1.1 10 0.0 1.32 1.42 1.06 2.34 212.200.180.146 8400 TELEKOM 10 0.0 16.09 14.18 8.49 21.78 212.200.180.128 8400 TELEKOM 10 0.0 24.93 16.90 8.05 24.93 212.200.7.84 8400 TELEKOM 10 0.0 12.36 12.21 11.44 13.23 212.200.7.79 8400 TELEKOM 10 0.0 12.07 16.81 10.30 32.09 212.200.5.119 8400 TELEKOM 10 0.0 23.25 25.45 23.25 53.53 ams-ix-1.microsoft.com. 1200 AMS 10 0.0 51.46 51.44 51.03 52.97 104.44.80.25 8075 MICROSOFT 10 0.0 61.44 61.78 61.44 63.82 ??? 10 100.0 ??? 10 100.0 ??? 10 100.0 a-0001.a-msedge.net. 8068 MICROSOFT 10 0.0 60.04 59.95 59.41 61.26 

Если вам нужно более 10 образцов пакетов, используйте ключ  -c с номером.

Как использовать команду dig

С командой dig вы можете выполнить DNS-запрос и получить IP-адрес, nameserver, mail exchange и текстовые аннотации.

Он также имеет опцию трассировки, которая даст информацию о принятых маршрутах.

# dig bing.com +trace



Без функции трасировки:

 # dig bing.com 



Как отслеживать сайты с помощью HTTP-запроса

Команда Mylg hping используется для проверки узла или сайта, аналогичного команде ping, но вместо ICMP, который использует ping, hping использует протокол HTTP.

Он показывает время ответа, версию протокола HTTP, код, который он возвращает (status HTTP-code).

При использовании без счетчика (опция -c с номером) он пингует 5 раз.

Мы будем использовать запрос два раза.

# hping bing.com -c 2 HPING bing.com (204.79.197.200), Method: HEAD, DNSLookup: 32.0384 ms HTTP Response seq=0, proto=HTTP/1.1, status=405, time=130.057 ms HTTP Response seq=1, proto=HTTP/1.1, status=405, time=129.607 ms --- bing.com HTTP ping statistics --- 2 requests transmitted, 2 replies received, 0% requests failed HTTP Round-trip min/avg/max = 129.61/129.83/130.06 ms HTTP Code [405] responses : [████████████████████] 100.00%

В hping также есть опция -trace, которая даст нам дополнительную информацию о том, сколько времени потребовалось, чтобы прочитать первый байт и как долго продолжалось соединение.

# hping bing.com -c 2 -trace HPING bing.com (204.79.197.200), Method: HEAD, DNSLookup: 53.2580 ms HTTP Response seq=0, proto=HTTP/1.1, status=405, time=129.112 ms, connection=61.990 ms, first byte read=67.022 ms HTTP Response seq=1, proto=HTTP/1.1, status=405, time=128.614 ms, connection=61.797 ms, first byte read=66.740 ms --- bing.com HTTP ping statistics --- 2 requests transmitted, 2 replies received, 0% requests failed HTTP Round-trip min/avg/max = 128.61/128.86/129.11 ms HTTP Code [405] responses : [████████████████████] 100.00%

Обнаружение Lan и запрос RIPE NCC

Чтобы обнаружить хосты в вашей локальной сети, вам просто нужно использовать команду disk.

Но поскольку я использую пример KVM в режиме NAT, их нет:

 # disc please wait . . Network LAN Discovery +----+-----+------+-----------+-------------------+ | IP | MAC | HOST | INTERFACE | ORGANIZATION NAME | +----+-----+------+-----------+-------------------+ +----+-----+------+-----------+-------------------+ 0 host(s) has been found 

Затем попробуйте выполнить запрос базы данных RIPE.

RIPE — это европейская организация и открытый онлайн-форум, который поддерживает базу данных публичных IP-адресов и телефонных номеров.

Команда Mylg whois запрашивает эту базу данных.

Вам нужно только ввести IP-адрес, ASN или CIDR.

Итак, давайте посмотрим, кто стоит за ip addres 8.8.8.8

 # whois 8.8.8.8 +------------+-------+--------------------------+ | PREFIX | ASN | HOLDER | +------------+-------+--------------------------+ | 8.8.8.0/24 | 15169 | GOOGLE - Google Inc., US | +------------+-------+--------------------------+

Кто бы мог подумать, что Google DNS-серверы управляются Google.

 #whois 605 VHS-CHIL - Vanguard Health Management, Inc., US +--------------------+-----------+ | LOCATION | COVERED % | +--------------------+-----------+ | United States - IL | 100.0000 | +--------------------+-----------+

Как выполнить сканирование портов

Команда Mylg scan может помочь вам сканировать любые порты на определенном хосте.

Он принимает имя хоста или IP-адрес.

 # scan www.bing.com +----------+------+--------+-------------+ | PROTOCOL | PORT | STATUS | DESCRIPTION | +----------+------+--------+-------------+ | TCP | 443 | Open | | | TCP | 80 | Open | | +----------+------+--------+-------------+ Scan done: 2 opened port(s) found in 2.007 seconds 

Далее сканирование виртуальной машины, на которой запущен mylg:

  # scan localhost +----------+------+--------+-------------+ | PROTOCOL | PORT | STATUS | DESCRIPTION | +----------+------+--------+-------------+ | TCP | 22 | Open | | +----------+------+--------+-------------+ Scan done: 1 opened port(s) found in 0.013 seconds

Открыт только порт ssh. Узнайте Как обезопасить свою систему?

Эта простая команда сканирования чрезвычайно полезна по разным причинам.

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

Комментарии


Дистанционная компьтерная помощь, удаленная компьютерная помощь онлайн.

Популярные сообщения из этого блога

Лучшие плагины для OBS Studio

Open Broadcast Software или OBS - это свободное программное обеспечение с открытым исходным кодом для стриминга аудио и видео данных в сеть интернет. Программа полностью кроссплатформенная и может работать в Windows, Linux или MacOS. Это отличная альтернатива для таких программ, как Wirecast и XSplit. OBS использует для вещания стандартный протокол обмена сообщениями в реальном времени, а поэтому может транслировать данные в любой сервис, поддерживающий это, например, Yotube. Несмотря на широкие возможности OBS, программа поддерживает еще и множество плагинов. В этой статье мы рассмотрим лучшие плагины для OBS Studio, которые вы можете использовать. Содержание статьи: Лучшие плагины OBS Studio 1. Browser Source Plugin 2. Video Source Plugin 3. Simple Scene Switcher 4. DirectShow Audio Source 5. CLR Browser Source 6. OBS Remote 7. AMD Advanced Media Framework Encoder 8. Text Source Plugin Выводы Лучшие плагины OBS Studio Чтобы найти плагины OBS Studio для Video пользователям пр…

Лучшие аналоги Paint для Linux

Когда я работал в Windows, я часто использовал стандартную программу редактора изображений Windows - Paint. Не всегда нужен очень и многофункциональный инструмент вроде Photoshop или Gimp. Иногда, чтобы подправить ту или иную картинку, дорисовать на ней несколько фигур или вставить текст достаточно простого, легкого в освоении графического редактора вроде Paint. В Linux таких программ довольно много. В этой инструкции мы рассмотрим лучшие аналоги Paint для Linux. В этот список не будут включены такие программы, как Gimp и Krita, ведь это полнофункциональные графические редакторы, векторные редакторы, такие как Inkscape мы тоже рассматривать не будем. А теперь перейдем к списку. Содержание статьи: KolourPaint MyPaint Gnome Paint XPaint Pinta mtPaint GPaint Rassam-paint Выводы KolourPaint На первом месте в списке аналогов Piant для Linux будет KoloutPaint. Это стандартный графический редактор для окружения рабочего стола KDE. Он поддерживает множество форматов изображений PNG, J…

Подключение OneDrive в Linux

OneDrive (Ранее известный как SkyDrive) это популярное облачное хранилище файлов от Майкрософт. Сейчас OneDrive бесплатно предоставляет 7 гигабайт пространства новым пользователям. Как вы знаете OneDrive хорошо интегрирован с другими продуктами компании  Microsoft. В OneDrive Также есть официальный клиент который автоматически загружает ваши видео и фотографии с камеры в облако. Но к сожалению этот клиент недоступен для операционных систем семейства Linux. Но не все так плохо. Сообщество открытого программного обеспечения уже нашло решение. Это opedrive-d от Boilermaker. Запустившись как демон программа автоматически синхронизирует локальную папку с облаком OneDrive. Содержание статьи: Установка Onedrive-d в Linux Настройка Синхронизация локальной папки с OneDrive Установка Onedrive-d в Linux Несмотря на то что onedrive-d разрабатывается для Ubuntu/Debian, CentOs/Fedora/RHEL поддерживается тоже хорошо. Для установки достаточно набрать несколько команд: $ git clone https://gith…