web-dev-qa-db-ja.com

パテSSH接続が機能しない

WindowsクライアントからPuTTYを使用してSolarisサーバーに接続しようとしています。 SSH接続が機能していません。ターミナルウィンドウに「ネットワークエラー:接続が拒否されました」というエラーメッセージが表示されるだけです。 PuTTYを使用するTelnetは、同じサーバーで正常に動作しています。この場合、チェックする必要のある構成を詳しく教えてもらえますか?トラブルシューティングの方法は? (SSH接続を許可する同じネットワーク内の他のサーバーがあります。)

1
user10090

問題を診断するために使用できる一連の手順は次のとおりです。

  1. Sshdがホストで実行されているかどうかを確認します(ps -ef | grep ssh)
  2. Netstatを使用してsshdがポート22にバインドされていることを確認します(netstat -al | grep "LISTEN"が機能するはずです)
  3. ホストマシンからssh経由で実際のIPアドレスに接続できるかどうかを確認します(接続できない場合は、ローカルファイアウォールがあるか、sshdが正常に機能していません
  4. クライアントマシンからホストにpingを実行してみてください(これが失敗した場合は、ルーティングの問題があります)
  5. クライアントマシン(telnet 192.168.1.1 22)からポート22にtelnetで接続してみてください(これが失敗した場合、ファイアウォールがブロックしています)
  6. 最後に、上記のすべてが成功したが、sshクライアントを使用してsshを実行できない場合は、sshクライアントを再インストールします。
6
Brent

あなたとサーバーの間にファイアウォールがないか確認してください。

1
radius

私はそれが非常に明白なチェックのように見えることを知っています。しかし、Solarisサーバーでsshdが実行されていることを確認しましたか?マシンにtelnetした後、netstatを実行して、sshポート(ポート22)でリッスンしているかどうかを確認します。その場合、次の呼び出しポートは、MathewCが提案したように/etc/hosts.allowなどをチェックすることです。

1
Vagnerr

マシンでsshが実行されていることを確認した場合は、接続しようとしているクライアントマシンがnmapを使用してポート22が開いていることを確認できるかどうかを確認することをお勧めします。

nmap -p22 [solaris-box-ip]

1
cji

これがSolaris10の場合は、svcs -p sshコマンドを発行して、SSHDが実行されているかどうかを確認します。これにより、SSHが実行されているかどうか、実行されていない場合はその理由がわかります(何らかの理由で依存関係が失敗したか、無効になっている可能性があります)。

svcadm enable sshを発行してSSHを有効にできます

1
Milner

接続が拒否されたということは、サービスは実行されているが、アクセス権がないことを意味します。

/etc/hosts.allowを確認してください

あなたも実行する必要があるかもしれません

inetadm -m network/telnet:default tcp_wrappers = TRUE

0
MathewC

チェックのリストに追加するには、svcs -xvを使用して、失敗したサービスがあるかどうか、およびsshがその1つであるかどうかをチェックします。これにより、サービスが失敗した理由の内訳もわかります。

0
QwertyForever