web-dev-qa-db-ja.com

sshトンネル-バインド:要求されたアドレスを割り当てることができません

ソックス(-D)sshトンネルを作成しようとしています-LinuxボックスからLinuxボックス(両方のcentos):

リモート側で実行されているsshdは問題ありません。

ローカルマシンから私たちはこれを行います/これを見てください:

ssh -D 1080 [email protected].
[email protected]'s password: 
bind: Cannot assign requested address

(8.8.8.8は実際に私のサーバーのIPであり、「user」は私の実際のユーザー名です)

このターミナルウィンドウでリモート側にログインしています。このコマンドの前にローカルポートが使用されておらず、コマンドの後にsshプロセスによって使用されていたことを確認できます。

netstat -lnp | grep 1080

したがって、このエラーのあるほとんどのgoogled-responsesとは異なり、問題はループバックインターフェイスの割り当てではないようです。メールクライアントでこのトンネルを使用しようとすると、ローカル側は試行を許可しますが(「プロキシ失敗」エラーはありません)、データ/応答は返されません。

リモート側では、sshd_configに「PermitTunnel yes」があります(とにかく、「yes」がデフォルトであるはずです)。

アイデアや手がかり?

ここに関連するデバッグ出力があります

OpenSSH_5.3p1, OpenSSL 1.0.0-fips 29 Mar 2010
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Applying options for *

....

debug1: Authentication succeeded (password).
debug1: Local connections to LOCALHOST:1080 forwarded to remote address socks:0
debug1: Local forwarding listening on 127.0.0.1 port 1080.
debug1: channel 0: new [port listener]
debug1: Local forwarding listening on ::1 port 1080.
bind: Cannot assign requested address
debug1: channel 1: new [client-session]
debug1: Entering interactive session.
debug1: Sending environment.
debug1: Sending env LANG = en_US.utf8

その他の手がかり:Windowsを実行しているクライアントで仮想ボックスを実行する場合、そのボックスにPuTTYがあるトンネルを開くと、同じリモートサーバーへのトンネルが機能します。

ストレンジャースティル」をLinuxクライアントで直接実行しているPuTTY(Linuxの場合)を使用すると、設定が同じ仮想ボックス内のWindowsで実行しているPuTTYで機能するPuTTY設定の正確な複製であっても機能しません。クライアントマシン??何か怪しいものがあります...それが何であるかを理解するために実験を試みています。

28
JosephK

ここでループを閉じます。この場合の答えは、sshクライアントがipv4を使用するように強制することでした。例えば。

ssh -4 -D 8081 [email protected]
44
Fred Clausen