Проблема
Я пытаюсь настроить туннель SSH к устройству NexentaStor с компьютера под управлением Windows или Linux, чтобы можно было подключить графический интерфейс Crashplan Desktop к автономному серверу Crashplan, работающему на компьютере Nexenta, следуя этим инструкциям на сайте поддержки Crashplan:Подключитесь к рабочему столу CrashPlan Headless.
До сих пор мне не удалось получить рабочий SSH-туннель ни с Windows-клиента (используя Putty), ни с Linux-клиента (используя командную строку SSH). Я почти уверен, что проблема на принимающей стороне с NexentaStor. Статья в блоге -CrashPlan для резервного копирования на Nexenta- указывает, что это можно сделать, только «включив пересылку TCP в Nexenta в /etc/ssh/sshd_config
» - хотя я не уверен, как это сделать или что конкретно мне нужно сделать.
Что я пробовал
Убедитесь, что сервер Crashplan на устройстве Nexenta прослушивает порт 4243
$ netstat -na | grep LISTEN | grep 42
127.0.0.1.4243 *.* 0 0 131072 0 LISTEN
*.4242 *.* 0 0 65928 0 LISTEN
Создание туннеля с хоста Linux:
$ ssh -L 4200:localhost:4243 admin:10.0.0.56
а затем с другого терминала на хосте Linux с помощью telnet проверьте туннель:
$ telnet localhost 4200
Trying ::1...
Connected to localhost.
Escape character is #^]'.
ничего больше, хотя сервер Crashplan должен ответитьчто-нибудь.
Из Windows, используя PuTTY, я следовал инструкциям на сайте поддержки Crashplan, чтобы установить эквивалентный туннель, но затем telnet
в Windows я не получаю никакого ответа, и Crashplan GUI также не может подключиться. Журнал PuTTY для туннелированного соединения показывает разумный вывод:
...
2011-11-18 21:09:57 Opened channel for session
2011-11-18 21:09:57 Local port 4200 forwarding to localhost:4243
2011-11-18 21:09:57 Allocated pty (ospeed 38400bps, ispeed 38400bps)
2011-11-18 21:09:57 Started a shell/command
2011-11-18 21:10:09 Opening forwarded connection to localhost:4243
но telnet localhost 4200
команда из Windows вообще ничего не делает — она просто ждет с пустым терминалом.
На сервере NexentaStor я проверил /etc/ssh/sshd_config
файл, и все выглядит «нормально». Я закомментировал записи ListenAddress, чтобы убедиться, что я прослушиваю все интерфейсы.
Как создать туннель и как проверить его работу?
решение1
Роб, попробуйте запустить SSH-туннель от имени root
пользователя на сервере NexentaStor вместо admin
, и сообщите о результатах.
$ ssh -L 4200:localhost:4243 [email protected]
решение2
Еще одна вещь, которую вы, возможно, захотите попробовать, это проверить, что ваш хост linux ssh разрешает туннелирование. Я используюOpenMediaVault, и у него была определенная настройка под названием "разрешить делать SSH-туннелирование", которая была не отмечена. Отметив ее, я смог успешно использовать метод PuTTY.
решение3
Вам необходимо перенаправить на порт 4242, а не на порт 4243.
ssh -L 4200:localhost:4242 admin:10.0.0.56