EMZETT.
Войти

netcat и socat

Коротко: netcat (nc) и socat — утилиты командной строки, которые открывают или принимают «сырые» сетевые соединения. Их называют «швейцарским ножом» сетей.

Подробнее: Они соединяют стандартный ввод и вывод с соединением TCP, UDP или сокетом Unix. Так можно проверять службы, передавать данные и пересылать соединения.

Подробности

  • Проверка порта: nc -zv сервер 443 показывает, доступен ли порт TCP.
  • Прослушивание: nc -l 9000 ждёт соединения и выводит всё, что пришло. Удобно, чтобы увидеть, что отправляет программа.
  • Отправка файла: Приёмник nc -l 9000 > файл, отправитель nc приёмник 9000 < файл.
  • Протоколы вручную: printf 'GET / HTTP/1.0\r\n\r\n' | nc example.com 80.
  • socat: Мощнее: соединяет любые две конечные точки (файл, канал, TLS, последовательный порт), например socat TCP-LISTEN:8080,fork TCP:внутр:80 как простой переадресатор или socat - OPENSSL:host:443.
  • Осторожно: Без шифрования и без входа. Открытые слушатели в чужих сетях рискованны. См. сокеты.

См. также: SSH-туннели и проброс портов