web-dev-qa-db-ja.com

Cygwin sshサーバーが接続を受け入れない

Cygwinを使用してWindows 7マシンにSSHサーバー(OpenSSH)をセットアップしたばかりで、Windows VistaマシンでPuTTYを使用して接続しようとしていますが、接続がタイムアウトし続けます。 Wiresharkを使用してWindows 7マシンのネットワークアクティビティを確認したところ、Win = 7マシンのポート22でTCP SYNを受信して​​いますが、sshサーバーが応答していないようです。sshdが使用するように構成されているポート番号を確認し、ファイアウォールルールを確認し、localhostをsshできることを確認しました(これで問題ありません)。この問題のトラブルシューティング方法はまったくわかりません。

14
Surma

Windowsファイアウォールを実行している可能性があります。開く:コントロールパネル-> Windowsファイアウォール-> Windowsファイアウォールを介したプログラムまたは機能の許可

[設定の変更]ボタンをクリックしてから、[別のプログラムを許可...]ボタンをクリックします。 SSHDはおそらく表示されるリストにないので、[参照...]ボタンを使用してバイナリを探し、[開く]をクリックしてから[追加]をクリックします。鉱山はC:\ cygwin\usr\sbin\sshd.exeにありました

どこかで、使用する「ネットワークロケーションタイプ...」を決定できます。私はチェック済みのプライベートとチェックなしのパブリックを残しました。リモートでログインできるようになりました。

23
Frank

sshd_configListenAddress.0.0.または127.0.0.1として指定していますか?

.0.0.またはコメント化されている場合は、マシンの外部、つまり別のコンピュータから接続できます。

127.0.0.1(またはその他の127.0.0.x番号)の場合は、LOCALHOSTでのみリッスンしており、同じマシンからのみログインできます。外部マシンは拒否されました。

5
lornix

Windowsファイアウォールをいじって効果がなくなった後、最終的に/etc/hosts.allowファイルを介してCygwin自体の自分のサブネットへの接続を許可する必要があることに気付きました。

この行(私のサブネットを使用)は、最初のルールとして問題を修正しました。

ALL:192.168.0.0/24:許可

1
chriswhitmore

私にとっての問題は、/var/emptyファイルの所有権が正しくないことでした。 /usr/sbin/sshd.exe -D -ddを使用してsshdをデバッグモードにすると、問題が明らかになりました。私はそれを修正する必要がありました:

chown [user]:[group] /var/empty

ユーザーとグループはls -la /varディレクトリから取得されました(他のファイルと一致しました)。詳細はこちら: https://docs.Oracle.com/cd/E24628_01/install.121/e22624/preinstall_req_cygwin_ssh.htm#EMBSC34

1
demisx

Windows 7アンチウイルスがポート22をブロックしていないことを確認します。また、Windowsサービスパネルに移動し、CYGWINsshdを検索して有効にします。ボックスを見つけてチェックするようにログオンを設定します。

これで問題が解決します:user @ mymachine〜$ net start sshdシステムエラー1069が発生しました。

ログオンの失敗により、サービスは開始されませんでした。

0
D Go