LINUX.ORG.RU
ФорумAdmin

Проблема моздание ssh tunnel.

 ,


0

2

Создаю туннель на выделенном сервере Debian 7.7 x64

root@debian:~# strace -e open -f sshpass -p guest ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null guest@11.11.11.11 -C -N -D 127.0.0.1:22220 -f

вывод обрезан

[pid 10451] open("/dev/tty", O_RDWR)    = 4
[pid 10451] open("/dev/tty", O_RDWR)    = 4
debug1: Enabling compression at level 6.
debug1: Authentication succeeded (keyboard-interactive).
Authenticated to 11.11.11.11 ([11.11.11.11:22).
debug1: Local connections to 127.0.0.1:22220 forwarded to remote address socks:0
debug1: Local forwarding listening on 127.0.0.1 port 22220.
debug1: channel 0: new [port listener]
debug1: Entering interactive session.
^CProcess 10451 detached
root@debian:~# debug1: channel 0: free: port listener, nchannels 1
debug1: Killed by signal 1.
^C

создаю туннель на debian 7.7 x64 (тот же образ) установлен на virtualbox или qemu

получаю ошибку

root@debian:~# strace -e open -f sshpass -p guest ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null guest@11.11.11.11 -C -N -D 127.0.0.1:22220 -f
Warning: Permanently added '11.11.11.11' (RSA) to the list of known hosts.
[pid 10454] open("/dev/tty", O_RDWR)    = 4
[pid 10454] open("/dev/tty", O_RDWR)    = 4
Process 10455 attached
Process 10454 detached
[pid 10453] --- SIGCHLD (Child exited) @ 0 (0) ---
--- SIGHUP (Hangup) @ 0 (0) ---
Process 10455 detached
root@debian:~# 

если создавать туннель в режиме -v verbose то все впорядке, но надо в режиме -f fork_after_authentication

почему на виртуальных машинах не работает - я не понимаю.



Последнее исправление: ipo (всего исправлений: 1)

-f sshpass -p guest

но надо в режиме -f force

Ощущение, что у меня man-страницы из другой реальности. Потому, что у меня у strace опция ″-f″ не имеет аргумента, ″-p″ требует PID-процеса, ну и ″-f″ у ssh это fork_after_authentication, а не force.

mky ★★★★★
()
Ответ на: комментарий от mky

у меня у strace опция ″-f″ не имеет аргумента, ″-p″ требует PID-процеса,

Просто ты не правильно распарсил строку:

strace -e open -f   \
  sshpass -p guest  \
     ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null guest@11.11.11.11 -C -N -D 127.0.0.1:22220 -f

sdio ★★★★★
()
Ответ на: комментарий от ipo

Я, просто, вобще не понял, как у вас это работает. Зачем нужен strace? Авторизация по паролю, который вы вводите с клавиатуры? В виртуалке при ″ssh -f″ пароль не запрашиватеся?

mky ★★★★★
()
Ответ на: комментарий от mky

strace нужен что чтобы увидеть где происходит ошибка. в виртуалке и на выделенном сервере пароль передают утилита sshpass. вопрос же не в в правильности команд или что то другое, а в том что на выделенном сервере работает ssh -f, а на виртуалках нет.

ipo
() автор топика
Ответ на: комментарий от ipo

Это вот не ваша тема: http://unix.stackexchange.com/questions/149335/ssh-failing-to-fork-with-sshpass ?

Возможно, что проблема не в виртуалках, а во взаимодействии ″sshpass″ и ″ssh -f″. Попрбуйте авторизацию по ключам или ″expect″ вместо ″sshpass″.

mky ★★★★★
()
Ответ на: комментарий от mky

не моя тема, но почему же на выделенном сервере работает, а на виртуалках нет?

ipo
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.