2

Чтобы автоматизировать ssh-соединение, я написал сценарий, использующий ожидаемый файл, который прекрасно работает. Тем не менее, я хотел бы использовать этот скрипт в функции подключения к nautilus к серверу. Моя идея заключалась в том, чтобы каким-то образом включить этот ожидаемый сценарий в файл .ssh/config, поскольку nautilus может использовать подробно описанные здесь соединения, но я не знаю как. К сожалению, я не могу скопировать ключ RSA на сервер. Это многопользовательское соединение, и я не могу написать на первый сервер. Этот первый сервер запрашивает только пароль и машину, к которой я могу подключиться. Таким образом, пароль не является проблемой, так как он также может быть предоставлен nautilus. Любая помощь приветствуется, спасибо!

1 ответ1

1

Вы не можете использовать пароль в ssh_config . Но вы можете использовать переадресацию портов (если это разрешено в Jumpbox):

SSHPASS=password sshpass -e ssh -L 2222:remotehost:22 user@jumpbox

а потом

ssh -p 2222 localhost

приведет вас прямо к удаленному хосту. Вы можете поместить это в ваш ssh_config , например:

Host remote-forwarded
  Hostname localhost
  Port 2222

а затем подключите такие как

ssh remote-forwarded

Похожим образом это будет работать в nautilus.

Переадресация портов запрещена на Jumpbox

В этом случае все будет сложнее. Вам нужно будет использовать прокси-команду для настройки переадресации портов непосредственно с удаленного хоста. Ваш конфиг будет длиннее:

Host remote-forwarded
  Hostname localhost
  Port 2222
Host jumpbox
  Hostname jumpbox-host
Host remote
  Hostname remote-host
  ProxyCommand ssh -W %h:%p jumpbox
  LocalForward 2222 localhost:22

В противном случае он должен работать так же, сначала

SSHPASS=password sshpass -e ssh remote

а затем непосредственно к другому хосту:

ssh remote-forwarded

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .