Я пытаюсь перенаправить очень конкретные порты, используя обратный туннель SSH. MachineA - это целевая машина (с которой запускается команда), а MachineB - это туннель (к которому подключается SSH и увидит одно общедоступное соединение).
(Порт 123 используется в качестве заполнителя для другого порта, который работает).
Команда, используемая для туннеля:
[user@MachineA ~]$ ssh -gnN -R *:500:localhost:500 -R *:311:localhost:311 -R *:123:localhost:123 user@MachineB
Он показывает следующий вывод, указывающий, что определенные порты не могут быть перенаправлены:
Warning: remote port forwarding failed for listen port 500
Warning: remote port forwarding failed for listen port 311
Если я иду в MachineB, я вижу это до начала туннеля:
[user@MachineB ~]$ netstat -na | grep 500
[user@MachineB ~]$ netstat -na | grep 311
[user@MachineB ~]$ netstat -na | grep 123
[user@MachineB ~]$
и это после (где порт 123 - это порт, который я успешно туннелирую:
[user@MachineB ~]$ netstat -na | grep 500
[user@MachineB ~]$ netstat -na | grep 311
[user@MachineB ~]$ netstat -na | grep 123
tcp 0 0 0.0.0.0:123 0.0.0.0:* LISTEN
[user@MachineB ~]$
Похоже, что это не проблема с используемыми портами. Другие порты (например, заполнитель 123) пересылаются нормально. Так в чем проблема?