web-dev-qa-db-ja.com

エラーの解決方法:「ssh_exchange_identification:リモートホストによって接続が閉じられました」

エラー:

ssh_exchange_identification:リモートホストによって接続が閉じられました

多くの提案された解決策がありますが、どれも私の問題を解決していないようです。

これが私が達成したいことです:

サーバー(10.0.0.5)SSHがあります。サーバーには、次のユーザーとそのシェルがあります。

passport , Shell=/bin/false
user1, Shell=git-Shell
user2, Shell=git-Shell
me, Shell=bash

sshd_configファイルには、最後に次のエントリがあります。

AllowTcpForwarding no
      Match User passport,user1,user2
      AllowTcpForwarding true
      PermitOpen 10.0.0.5:8080
      PermitOpen 10.0.0.5:22

公開鍵認証も有効にしました。目標は、SSHからのすべてのtcp転送を無効にし、上記のユーザーのみが2つのポートで転送できるようにすることです。

- SSH
- a web server

私の/etc/hosts.allowファイルと.denyファイルにはエントリがありません。

authorized_keys fileに適切な/home/passport/.ssh/authorized_keys(ssh-rsa ...のみ)を設定します。

Windowsマシンから、SSHを試してください。

ssh [email protected] -N -L 22:10.0.0.5:22 -L 8080:10.0.0.5:8080

http://127.0.0.1:8080にサーフィンしようとすると」これは正常に機能します。これは、ポート転送が正常に機能することを意味します。

ここで、そのトンネルを介してSSHを実行し、「user1」を使用したいと思います。

ssh -N [email protected]

現時点では、次のようになります。

ssh_exchange_identification:リモートホストによって接続が閉じられました

一方、Windowsマシンから直接SSHを実行するだけで、成功します。

ssh -N [email protected]

なぜ動かないのかわかりません。

/var/log/auth.logを調べて、次のことを確認します。

Feb  4 10:28:23 myhost sshd[2097]: debug1: server_input_channel_open: ctype direct-tcpip rchan 257 win 16384 max 16384
Feb  4 10:28:23 myhost sshd[2097]: debug1: server_request_direct_tcpip: originator 0.0.0.0 port 0, target 10.0.0.5 port 22
Feb  4 10:28:23 myhost sshd[2097]: Received request to connect to Host 10.0.0.5 port 22, but the request was denied.
Feb  4 10:28:23 myhost sshd[2097]: debug1: server_input_channel_open: failure direct-tcpip

Iptablesを-Fでフラッシュし、sshdを再起動しようとしましたが、それでも接続が閉じられたというエラーが発生します。

  • トンネル経由でsshできないのはなぜですか?

  • 「パスポート」ユーザーを作成した理由は、ユーザーが自分のネットワークにリモートでログインできるようにするためです。彼らはウェブサーバーを使用できるようになります。

ここで、GITを使用する場合は、たとえば次のものを使用します。

git clone ssh://[email protected]/repos/repo.git

Linux2.6.32とOpenSSH5.5p1でDebian6を実行しています

私の問題を解決する方法についてアドバイスしてください。質問と同じタイトルの質問にリストされているすべての解決策を試しましたが、役に立ちませんでした。

1

指定できるPermitOpenディレクティブは1つだけです。複数の転送を許可する場合は、空白で区切った同じ行にそれらを指定します。

PermitOpen 10.0.0.5:8080 10.0.0.5:22

OpenSSHは最初に見つかったディレクティブを適用しているようです。

1
mgorven