PDA

Просмотр полной версии : Не слушается порт для ssh-туннеля


savigm
15.05.2009, 12:45
Удаленная машина удачно содиняется с ssh-сервером, но не может открыть порт для прослушки:
debug1: Remote connections from LOCALHOST:4040 forwarded to local address localhost:22
debug1: Entering interactive session.
debug1: remote forward failure for: listen 4040, connect localhost:22
Warning: remote port forwarding failed for listen port 4040
Возможно в маршрутизаторе, но я его сделал прозрачным - ничего он фильтровать не должен.
Большее подозрение вызывает фаервол ОС и сам сервер sshd. ОС - openSuse 11.0, в ферволе открыл порт 4040, если на него повесить ssh-сервер, то canyouseeme.org говорит что порт открыт. В настройках sshd есть строка:
# AllowTcpForwarding no
Я ее разкоментировал, поставил yes, перезапустил ssh daemon - не помогло - порт 4040 не прослушивается.
В man ssh_config обнаружил еще кое-что:
Privileged ports can be forwarded only when logging in as root on the remote machine.
Я же соединяюсь с сервером как обычный пользователь, возможно поэтому ssh-сервер не позволяет ssh-клиенту перенаправить стандартный 22 порт на 4040?
Если есть мысли по данному вопросу - прошу высказать.

X-3
15.05.2009, 13:39
Где ты настраивал перенаправление на 4040 порт?

savigm
15.05.2009, 15:06
Есть рабочая станция, подключенная к интернету через NAT и ssh-сервер. Я пробрасываю туннель с машины за NAT на сервер, где должен перенаправляться 4040 порт обратно на машину за NAT.
Вот что выполняется на машине за NAT:
ssh -f -N -v -R 4040:localhost:22 user@sshserver.org -o ConnectTimeout=60 -o ServerAliveInterval=20 -o ServerAliveCountMax=5 -o StrictHostKeyChecking=no

Вот что происходит на ssh-сервере:
debug1: Connecting to someserver.org [xxx.xxx.xxx.xxx] port 22.
debug1: fd 3 clearing O_NONBLOCK
debug1: Connection established.
debug1: identity file /home/user/.ssh/id_rsa type 1
debug1: identity file /home/user/.ssh/id_dsa type -1
debug1: Remote protocol version 2.0, remote software version OpenSSH_5.0
debug1: match: OpenSSH_5.0 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_5.0
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-cbc hmac-md5 none
debug1: kex: client->server aes128-cbc hmac-md5 none
debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024<1024<8192) sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
debug1: Host 'someserver.org' is known and matches the RSA host key.
debug1: Found key in /home/user/.ssh/known_hosts:17
debug1: ssh_rsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey,keyboard-interactive
debug1: Next authentication method: publickey
debug1: Offering public key: /home/user/.ssh/id_rsa
debug1: Server accepts key: pkalg ssh-rsa blen 277
debug1: read PEM private key done: type RSA
debug1: Authentication succeeded (publickey).
debug1: Remote connections from LOCALHOST:4040 forwarded to local address localhost:22
debug1: Entering interactive session.
debug1: remote forward failure for: listen 4040, connect localhost:22
Warning: remote port forwarding failed for listen port 4040

ShAnKaR
15.05.2009, 15:14
PermitTunnel yes
mb?