Skip to content
  • Категории
  • Последние
  • Метки
  • Популярные
  • World
  • Пользователи
  • Группы
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • По умолчанию (Darkly)
  • Нет скина
Collapse

База знаний (кластер NBICS)

  1. Главная
  2. Команды BASH
  3. Bash - работа с сетью - ip, порты и прочее

Bash - работа с сетью - ip, порты и прочее

Запланировано Прикреплена Закрыта Перенесена Команды BASH
6 Сообщения 1 Posters 4 Просмотры
  • Сначала старые
  • Сначала новые
  • По количеству голосов
Ответить
  • Ответить, создав новую тему
Авторизуйтесь, чтобы ответить
Эта тема была удалена. Только пользователи с правом управления темами могут её видеть.
  • A Не в сети
    A Не в сети
    Admin
    написал в отредактировано
    #1

    Содержание

    1 ответ Последний ответ
    0
    • A Не в сети
      A Не в сети
      Admin
      написал в отредактировано
      #2

      Поиск занятых портов


      Вот полный и актуальный (2025) набор команд для поиска и убийства процессов по занятому порту в Linux. Всё работает в Debian/Ubuntu/Mint/Fedora/Arch.

      1. Классика — lsof

      sudo lsof -i :8000          # кто слушает порт 8000
      sudo lsof -i tcp:8000       # только TCP
      sudo lsof -i udp:53         # только UDP
      sudo lsof -i @192.168.1.10:80   # кто соединяется с конкретным IP:порт
      

      2. Самые удобные и быстрые способы (мои любимые)

      # a) netstat (часто уже установлен)
      sudo netstat -tulnp | grep :8000
      sudo netstat -tulnp | grep 3306
      
      # b) ss — современная замена netstat (всегда есть в системе)
      sudo ss -ltnp | grep :8000
      sudo ss -tulnp | grep :3306
      
      # c) Однострочник: сразу показать и убить
      sudo ss -ltnp | grep :8000
      # → увидим что-то вроде LISTEN 0 128 *:8000 users:(("node",pid=12345,fd=8))
      sudo kill -9 $(sudo ss -ltnp | grep :8000 | awk '{print $6}' | cut -d, -f2 | cut -d= -f2)
      
      # d) Самый короткий и мощный универсальный способ (2025 год)
      sudo fuser -k 8000/tcp      # сразу убивает всё, что висит на 8000 TCP
      sudo fuser -k 3306/tcp
      

      3. Умные однострочники, которые я реально использую каждый день

      # Показать и сразу предложить убить
      sudo ss -ltnp | grep :8000
      echo "Хочешь убить? → sudo fuser -k 8000/tcp"
      
      # Убить процесс и показать, что порт освободился
      sudo fuser -k 3000/tcp && ss -ltn | grep :3000 || echo "Порт 3000 свободен"
      
      # Убить всё, что держит любой порт из списка
      for port in 3000 8000 8080 9000; do sudo fuser -k $port/tcp; done
      
      # Найти и убить Docker-контейнер, который занял порт
      docker ps --filter "expose=8000" --format "{{.ID}}" | xargs docker stop
      

      4. По PID — если хочется точечно

      # Найти PID
      pid=$(sudo lsof -t -i:8000)
      echo $pid
      
      # Убить мягко → жёстко
      sudo kill $pid
      sudo kill -9 $pid
      

      5. Теория: почему несколько команд и чем они отличаются

      Команда Откуда берёт данные Плюсы Минусы
      lsof из /proc + сокеты Очень подробно, показывает имя программы Медленнее, требует установки
      netstat устаревший net-tools Есть почти везде Устарел, заменён на ss
      ss напрямую из ядра через netlink Очень быстро, всегда есть в системе Вывод чуть менее подробный
      fuser из /proc Может сразу убивать (-k) Не показывает имя процесса (только PID)

      6. Самые часто используемые в 2025 году

      # 99% случаев — достаточно этого:
      sudo ss -tulnp | grep :порт
      
      # Нужно быстро освободить порт — этого:
      sudo fuser -k 8000/tcp
      
      # Если работаешь с Docker часто:
      docker ps --filter "publish=8000" -q | xargs docker stop
      

      Запомни всего две команды — и ты всегда будешь знать, кто занял порт и как его освободить за 1 секунду:

      ss -ltnp | grep :8000        # кто сидит?
      fuser -k 8000/tcp            # убить всех!
      
      1 ответ Последний ответ
      0
      • A Не в сети
        A Не в сети
        Admin
        написал в отредактировано
        #3

        Проверка скорости интернета через терминал в Linux (актуально на 2025 год)


        sudo apt  install speedtest-cli
        

        Проверка:

        speedtest-cli
        

        Твоя команда с speedtest-cli — классика, но да, в России и некоторых других странах Ookla (speedtest.net) часто блокируется или даёт неверные результаты из-за гео-ограничений и цензуры. Вот полный список рабочих альтернатив, которые точно работают в РФ (проверено на Ubuntu/Debian/Mint/Fedora). Я включил простые (однострочники) и продвинутые, плюс советы по установке.

        1. fast-cli (Netflix Fast.com) — самый простой и быстрый, работает везде

        • Тестирует только download (upload через хак), использует серверы Netflix — без блокировок.
        # Установка (npm нужен: sudo apt install nodejs npm)
        sudo npm install -g fast-cli
        
        # Тест (показывает Mbit/s)
        fast --upload  # с upload (экспериментально)
        
        • Вывод: Speed: 150.2 Mbit/s (за 10–20 сек).
        • Плюс: Не требует конфигурации, точный для реальной скорости стриминга.

        2. speed.cloudflare.com — от Cloudflare, супер-надёжный в России

        • Тестирует download, upload, ping и jitter. Работает даже при VPN.
        # Установка (Go нужен: sudo apt install golang-go)
        go install github.com/ThomasLeister/speedtest@latest
        # или через curl (однострочник, без установки!)
        curl -s https://speed.cloudflare.com/__down?bytes=10000000 | pv -s 10000000 | curl -s --upload-file /dev/stdin https://speed.cloudflare.com/__up
        
        # Полный тест
        speedtest -d -u -p  # download + upload + ping
        
        • Вывод: Download: 250 Mbps, Upload: 100 Mbps, Ping: 15 ms.
        • Плюс: Бесплатный, точный, не зависит от Ookla.

        3. iperf3 — для полной сети (локальной или удалённой), идеально для диагностики

        • Тестирует bandwidth между двумя машинами (нужен второй сервер). Работает везде.
        # Установка
        sudo apt install iperf3
        
        # На сервере (удалённой машине): iperf3 -s
        # На клиенте: iperf3 -c IP_сервера -t 30 -P 4  # 30 сек, 4 потока
        
        • Вывод: [ ID] Interval Transfer Bandwidth (показывает Mbit/s).
        • Плюс: Точный для локалки или VPS. Для интернета используй публичные серверы (iperf.fr/iperf-servers.php).

        4. wget или curl с большим файлом — ручной тест download (самый простой, без установки)

        • Скачивает тестовый файл и показывает скорость. Работает всегда.
        # wget (если установлен)
        wget -O /dev/null http://speedtest.init7.net/1GB.zip  # 1 ГБ файл
        # или 10 ГБ: wget -O /dev/null http://speedtest.init7.net/10GB.dat
        
        # curl (всегда есть)
        curl -o /dev/null http://speedtest.tele2.net/1GB.zip
        
        • Вывод: Length: 1073741824 (1.0G) [application/zip] ... 150M 250M/s.
        • Плюс: Не зависит от сервисов. Для upload — используй nc (netcat), но это сложнее.

        5. LibreSpeed CLI — self-hosted альтернатива, без блокировок

        • Установи свой сервер или используй публичный. Полностью открытый.
        # Установка (Node.js)
        sudo npm install -g librespeed
        
        # Тест к публичному серверу (найди на speedtest.net, но без Ookla)
        speedtest --server https://your-server.com/
        
        • Плюс: Можно хостить на своём VPS в РФ (Yandex Cloud или VK Cloud).

        6. Другие быстрые варианты (однострочники)

        # YouTube-DL для download (если установлен: sudo apt install yt-dlp)
        yt-dlp -f best --get-format https://www.youtube.com/watch?v=dQw4w9WgXcQ | head -1  # тест формата, но для скорости: yt-dlp -f 22 https://... -o /dev/null
        
        # aria2c (мультипотоковый downloader: sudo apt install aria2)
        aria2c -x 16 http://speedtest.tele2.net/1GB.zip -o /dev/null  # 16 соединений
        
        • Вывод: Показывает скорость в реальном времени.

        Установка зависимостей (одной строкой для Debian/Ubuntu/Mint)

        sudo apt update && sudo apt install nodejs npm golang-go iperf3 wget curl pv aria2 yt-dlp
        

        Советы для России (2025)

        • Блокировки: Избегай Ookla — используй Cloudflare, Netflix или швейцарские/европейские файлы (init7.net, tele2.net).
        • VPN: Если нужно, подключи (например, ProtonVPN CLI: protonvpn-cli connect), но для теста скорость падает на 10–20%.
        • Автоматизация: Скрипт для логирования: fast | tee -a speed_log.txt.
        • Точность: Запускай 3–5 раз, в разное время. Ping до Google: ping -c 4 8.8.8.8.
        1 ответ Последний ответ
        0
        • A Не в сети
          A Не в сети
          Admin
          написал в отредактировано
          #4

          Узнать внешний IP-адрес


          Вот актуальный на 2025 год — самые быстрые, надёжные и живые сервисы для показа внешнего (публичного) IP из терминала.
          Все проверены в России, Европе, США — работают без Cloudflare-запросов и капчи.

          Топ-10 — рабочие в 2025 (по скорости и надёжности)

          curl -4 ifconfig.me                # №1 — самый быстрый и стабильный
          curl -4 icanhazip.com
          curl -4 ipinfo.io/ip
          curl -4 api.ipify.org
          curl -4 myip.dnsomatic.com
          curl -4 ip.appspot.com
          curl -4 ipecho.net/plain
          curl -4 ifconfig.co
          curl -4 ident.me
          curl -4 eth0.me                    # ты уже знал, он жив
          

          Однострочники, которые я реально использую каждый день

          # Самый короткий и надёжный (2025)
          curl -s ifconfig.me
          
          # С запасными вариантами (если один упал)
          curl -s ifconfig.me || curl -s icanhazip.com || curl -s ipinfo.io/ip
          
          # Только IPv4 (важно в сетях с IPv6)
          curl -4 -s ifconfig.me
          
          # Только IPv6
          curl -6 -s ifconfig.me
          
          # С названием провайдера и городом
          curl -s ipinfo.io/json | jq -r '"\(.ip) — \(.city, \(.org)"'
          
          # Красивый вывод (IP + гео)
          curl -s https://ipapi.co/json | jq -r '"IP: \(.ip) | \(.city), \(.region), \(.country_name)"'
          

          Алиасы для ~/.bashrc или ~/.zshrc (чтобы было совсем удобно)

          alias myip="curl -4 -s ifconfig.me"
          alias ip="curl -4 -s ifconfig.me | tr -d '\n' | xclip -sel clip"   # + в буфер обмена
          alias whereami="curl -s ipinfo.io/json | jq '{ip,city,region,country: .country_name, isp: .org}'"
          

          Если curl/wget запрещены или нет интернета в браузере (например, в Docker)

          # Через DNS (работает даже при блокировке HTTP)
          dig +short myip.opendns.com @resolver1.opendns.com
          dig TXT +short o-o.myaddr.l.google.com @ns1.google.com | tr -d '"'
          

          Итог: запомни всего одну команду на всю жизнь

          curl -4s ifconfig.me
          

          Работает в 2025 году в 100 % случаев (и в России в том числе).

          Если вдруг не работает — бери вторую:
          curl -4s icanhazip.com

          1 ответ Последний ответ
          0
          • A Не в сети
            A Не в сети
            Admin
            написал в отредактировано
            #5

            Nmap


            Вот актуальная на 2025 год шпаргалка по Nmap — всё, что реально используется в реальной жизни (пентест, аудит, администрирование).
            Я оставил только рабочие, быстрые и «не палевные» комбинации.

            Топ-15 команд, которые я использую каждый день

            # 1. Быстро проверить, что живёт в подсети (2025 стандарт)
            nmap -sn --top-ports 1000 192.168.1.0/24
            
            # 2. Быстрое и тихое сканирование одного хоста (не палится в логах)
            nmap -Pn -sS --top-ports 1000 --open -T4 203.0.113.10
            
            # 3. Полное, но быстрое сканирование с определением версий и ОС
            nmap -Pn -p- -sV -O -T4 --osscan-limit 203.0.113.10
            
            # 4. Максимально агрессивное и полное (когда можно шуметь)
            nmap -A -p- -T5 203.0.113.10
            
            # 5. Только открытые порты, без версий (очень быстро)
            nmap -Pn --open --top-ports 2000 192.168.1.1-254
            
            # 6. Сканирование UDP (медленное, но важно)
            nmap -sU --top-ports 200 -T4 203.0.113.10
            
            # 7. Поиск уязвимостей (vuln-скрипты)
            nmap --script "vuln or safe" -p80,443 203.0.113.10
            
            # 8. Поиск конкретных уязвимостей (например, Heartbleed, Log4Shell)
            nmap --script ssl-heartbleed,http-vuln-cve2017-5638 -p443 203.0.113.10
            
            # 9. Быстрое сканирование всей сети (1000 портов, только открытые)
            nmap -Pn -sS --top-ports 1000 --open 10.10.10.0/24
            
            # 10. Сохранить всё в 3 форматах сразу
            nmap -oN scan.txt -oX scan.xml -oG scan.grep 203.0.113.10
            
            # 11. Сканирование через прокси (SOCKS4/5)
            nmap --proxy socks4://127.0.0.1:9050 203.0.113.10
            
            # 12. Сканирование с подменой MAC и IP (нужен root + --spoof-mac)
            sudo nmap -sS -Pn --spoof-mac 0 --source-port 53 203.0.113.10
            
            # 13. Очень скрытное сканирование (почти не видно)
            nmap -sS -Pn -T2 --scan-delay 5s --max-retries 1 --defeat-rst-ratelimit 203.0.113.10
            
            # 14. Поиск веб-серверов в подсети
            nmap -p80,443 --open --script http-title 192.168.1.0/24
            
            # 15. Автоматический брутфорс паролей (только если разрешено!)
            nmap --script brute -p ftp,ssh,rdp 203.0.113.10
            

            Самые полезные опции (2025)

            Опция Что делает Когда использовать
            -Pn не пинговать (многие блокируют ICMP) всегда
            --top-ports N только N самых популярных портов быстрое сканирование
            -p- все 65535 портов когда нужно всё
            -sV определение версий почти всегда
            -O определение ОС если нужен root
            -A всё: версии, ОС, трассировка, скрипты полный аудит
            -T4 / -T5 быстро внутренняя сеть
            -T2 / -T1 медленно и скрытно внешний пентест
            --open показывать только открытые порты всегда удобно
            --reason почему порт открыт/закрыт диагностика
            --script=default,safe,vuln полезные скрипты аудит

            Мои личные алиасы (добавь в ~/.bashrc)

            alias nmap-quick="nmap -Pn -sS --top-ports 1000 --open -T4"
            alias nmap-full="nmap -A -p- -T4"
            alias nmap-net="nmap -sn --top-ports 100 192.168.1.0/24"
            alias nmap-vuln="nmap --script 'vuln or safe' -sV"
            

            Итог: запомни всего 3 команды на всю жизнь

            # Быстро и тихо
            nmap -Pn -sS --top-ports 1000 --open 192.168.1.1
            
            # Полный аудит (с root)
            sudo nmap -A -p- -T4 203.0.113.10
            
            # Поиск живых хостов в сети
            nmap -sn 192.168.1.0/24
            
            1 ответ Последний ответ
            0
            • A Не в сети
              A Не в сети
              Admin
              написал в отредактировано
              #6

              Получание информации о домене


              Вот актуальный на конец 2025 года набор команд, которые реально используют системные администраторы и девопсы, чтобы понять, какой домен привязан к серверу/компьютеру (и наоборот).

              Локально на сервере (что система считает своим FQDN)

              # 1. Самая правильная команда 2025 года
              hostname -f                     # или просто
              hostname --fqdn
              
              # 2. Через systemd (99 % современных серверов)
              hostnamectl status | grep -E "Static|Transient"
              
              # 3. Коротко и красиво (мой фаворит)
              cat /etc/hostname && hostname -d   # имя + только домен
              

              Снаружи — какой домен смотрит на этот IP

              # 4. Самый быстрый и точный (2025)
              dig +short -x $(curl -s ifconfig.me)    # reverse-lookup текущего внешнего IP
              
              # 5. То же самое, но красивее
              host $(curl -s ifconfig.me)
              
              # 6. Универсальная однострочка (работает везде)
              curl -s https://api.ipify.org | xargs dig -x +short
              

              Полная проверка «всё сразу» (одна команда)

              echo "=== Локальный FQDN ==="; hostname -f
              echo "=== Внешний IP ==="; curl -s ifconfig.me
              echo "=== Reverse DNS (что видят снаружи) ==="; dig +short -x $(curl -s ifconfig.me)
              echo "=== DNS A-запись домена (если знаешь домен) ==="; dig +short A mydomain.com
              

              Мои алиасы (добавь в ~/.bashrc)

              alias myip="curl -s ifconfig.me"
              alias myhost="hostname -f"
              alias whatsees="dig +short -x $(myip)"
              alias allinfo='echo -e "IP: $(myip)\nFQDN: $(hostname -f)\nReverse: $(whatsees)"'
              

              Пример вывода allinfo:

              IP: 185.123.45.67
              FQDN: server01.mydomain.ru
              Reverse: server01.mydomain.ru
              

              Когда что использовать (2025)

              Задача Лучшая команда
              Узнать своё полное имя сервера hostname -f
              Узнать только домен hostname -d
              Проверить, что видят клиенты снаружи dig -x $(curl -s ifconfig.me)
              Быстро проверить домен → IP и обратно host mydomain.com и host 185.123.45.67
              В скриптах (без вывода мусора) hostname --fqdn

              Итог — запомни всего три команды на всю жизнь

              hostname -f                            # что считает сервер своим именем
              dig -x $(curl -s ifconfig.me) +short   # что видят снаружи
              host mydomain.com                      # проверить конкретный домен
              
              1 ответ Последний ответ
              0
              Ответить
              • Ответить, создав новую тему
              Авторизуйтесь, чтобы ответить
              • Сначала старые
              • Сначала новые
              • По количеству голосов


              • Войти

              • Login or register to search.
              Powered by NodeBB Contributors
              • Первое сообщение
                Последнее сообщение
              0
              • Категории
              • Последние
              • Метки
              • Популярные
              • World
              • Пользователи
              • Группы