Почему Сокат отправляет данные обратно клиенту?
Я использую эту команду
socat -lm -d -d TCP4-LISTEN:5555,reuseaddr,fork EXEC:/bin/myscript,chroot=/root/,su=root,pty,stderr
чтобы запустить сервер, но когда я отправляю его, я подключаюсь к нему через netcat и отправляю некоторый ввод, он отправляет обратно ввод + вывод. Это почему? Я не хочу, чтобы мой вклад вернулся.
Терминал 1:
socat -lm -d -d TCP4-LISTEN:5555,reuseaddr,fork EXEC:/bin/myscript,chroot=/root/,su=root,pty,stderr
Терминал 2:
root@vm:echo "AAAAAA" | nc localhost 5555
AAAAAA
[Я не хочу, чтобы это возвращалось ко мне]output(AAAAAA)
1 ответ
Решение
Входные данные, возвращаемые клиенту, являются результатом использования pty
вариант.
Если нет необходимости иметь pty
самым простым решением было бы просто удалить это из командной строки.