Синтаксис
ncat [OPTIONS...] [hostname] [port]
Описание
Netcat, она же nc — простая, но очень удобная консольная утилита, предназначенная для работы с портами и TCP и/или UDP трафиком между узлами сети.
Полезные ключи:
- -l — указать какой порт будет слушать nc для приёма входящих соединений;
- -n — не использовать преобразование IP в имена хостов;
- -k — продолжать принимать соединения на указанном с ключём -l порту после того, как завершится активная сессия;
- -s — указать локальный IP интерфейса, который будет использоваться для отправки пакетов;
- -v — использовать подробный режим;
- -u — использовать UDP вместо TCP, который используется по-умолчанию;
- -w — таймаут, после которого сессия будет закрыта, если не активна;
- -X — указать тип прокси, который использоваться, иначе — используется SOCK5;
- -x — адрес:порт прокси-сервера, через который необходимо отправлять трафик;
На стороне «сервера» (машина, которая будет принимать трафик) запускаем nc для приёма входящих пакетов на порт 12345:
$ nc -l 12345 > ../temp.log
На стороне «клиента» — выполняем чтение файла и пересылаем содержимое на «сервер»:
$ tail -f /var/log/zabbix/zabbix_agentd.log | nc 10.249.140.239 12345
Переслать файл можно так. На стороне сервера — запустим nc для приёма соединений на порту 12346 и укажем выводить содержимое принятого файла в локальный файл:
# nc -l 12346 > post-install.log
На стороне клиента — запускаем nc и считываем в него содержимое файла post-install.log:
# nc 10.249.140.239 12346 < post-install.log
Интересная возможность — сканирование портов, хотя и далеко от возможностей nmap:
# nc -z -v 10.249.140.239 8080-8085
nc: connect to 10.249.140.239 port 8080 (tcp) failed: Connection refused
Connection to 10.249.140.239 8081 port [tcp/tproxy] succeeded!
nc: connect to 10.249.140.239 port 8082 (tcp) failed: Connection refused
nc: connect to 10.249.140.239 port 8083 (tcp) failed: Connection refused
nc: connect to 10.249.140.239 port 8084 (tcp) failed: Connection refused
nc: connect to 10.249.140.239 port 8085 (tcp) failed: Connection refused