web-dev-qa-db-ja.com

期待スクリプトによって確立されたssh接続を使用するようにnautilusを設定するにはどうすればよいですか?

Ssh接続を自動化するために、expectを使用してスクリプトを作成しました。これは問題なく機能します。ただし、このスクリプトをnautilusのサーバーへの接続機能で使用したいと思います。私の考えは、nautilusがそこで詳述されている接続を使用できるため、このexpectスクリプトを何らかの方法で.ssh/configファイルに含めることでしたが、方法がわかりません。残念ながら、RSAキーをサーバーにコピーできません。マルチホップ接続であり、最初のサーバーに書き込むことができません。この最初のサーバーは、パスワードと接続できるマシンのみを要求します。したがって、パスワードはnautilusからも提供される可能性があるため、実際には問題にはなりません。どんな助けでもありがたいです、ありがとう!

2
Daniel Förster

ssh_configではパスワードを使用できません。ただし、ポート転送を使用する場合があります(ジャンプボックスで許可されている場合)。

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

同様に、ノーチラスでも機能します。

ジャンプボックスでのポート転送は禁止されています

この場合、それはより複雑になります。リモートホストから直接ポート転送を設定するには、proxyコマンドを使用する必要があります。設定が長くなります:

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
1
Jakuje