4

cygwin を使用して ssh 接続を試みています。ここに記載されている指示に従いました。ssh localhostコマンドを起動すると、エラーが発生しConnection closed by ::1ます。私は unix と cygwin の初心者なので、何が問題なのかわかりません。このエラーが発生する理由と解決方法を誰か教えてください。

私のcygwinシェルは次のようになります:

$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/home/Shekhar/.ssh/id_rsa):
/home/Shekhar/.ssh/id_rsa already exists.
Overwrite (y/n)? y
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/Shekhar/.ssh/id_rsa.
Your public key has been saved in /home/Shekhar/.ssh/id_rsa.pub.
The key fingerprint is:
85:69:77:cc:fd:21:8a:ce:fe:46:41:ee:c8:e7:3d:7b Shekhar@Shekhar-PC
The key's randomart image is:
+--[ RSA 2048]----+
|                 |
|         o + .   |
|        + = +... |
|       . o.+. ...|
|        S.o..   .|
|        oo +     |
|         o+ .    |
|        .  o o E |
|         .o. .+  |
+-----------------+

Shekhar@Shekhar-PC ~
$ cd ~/.ssh/

Shekhar@Shekhar-PC ~/.ssh
$ ls -l
total 10
-rw-r--r-- 1 Shekhar None 1200 Jun 16 19:49 authorized_keys
-rw------- 1 Shekhar None 1675 Jun 20 08:55 id_rsa
-rw-r--r-- 1 Shekhar None  400 Jun 20 08:55 id_rsa.pub
-rw-r--r-- 1 Shekhar None  171 Jun  6 23:28 known_hosts

Shekhar@Shekhar-PC ~/.ssh
$ cat id_rsa.pub >> authorized_keys

Shekhar@Shekhar-PC ~/.ssh
$ ssh localhost
Connection closed by ::1
4

4 に答える 4

5

この同じ問題が発生しました。少なくとも私にとっての問題は、ssh-host-config を使用して cyg_server ユーザーを作成することでした。これはホーム ディレクトリなしで作成され、シェルは /bin/false に設定されています。そこで、cyg_server ユーザーの /etc/passwd ファイルを /home/cyg_server (/var/empty から変更) および /bin/false を /bin/bash に反映するように変更し、ユーザーのホーム ディレクトリを作成しました。cyg_server ユーザーと出来上がりを使用して再接続を試みました。

要するに:

mkdir /home/cyg_server
vim /etc/passwd
cyg_server:...(bunch of stuff)...:/var/empty:/bin/false

cyg_server:...(bunch of stuff)...:/home/cyg_server:/bin/bash

おそらくcygwinには、これを少し安全にするusermodコマンドまたは同義語があります。しかし、私はせっかちで、これが私がしたことです。誰かがこれに従う場合は、/etc/passwd ファイルを編集する際に細心の注意を払ってください。

于 2012-12-19T00:58:33.100 に答える
3

他の人が同じ問題を見つけた場合に備えて。ssh の構成中にユーザー名として cyg_server を選択したため、デフォルトの「ssh localhost」ではなく、「ssh cyg_server@localhost」コマンドを使用して接続を試みます。パスワードは、設定時に指定したものと同じにすることができます

于 2012-10-16T06:53:35.213 に答える
2

誰かが後でこれに出くわした場合に備えて、これをここに入れます。私は同じ問題を抱えていて、cygwinを再インストールすると解決しました...再起動するまで。その後、再び同じエラーが発生しました。ssh-host-config の実行時に cygwin が提案するアカウント名「cyg_server」を使用する代わりに、Windows の通常の管理者アカウントの名前を入力しました。これまでのところ機能しているようです。

于 2012-08-01T10:34:02.777 に答える
-4

私の問題は解決しました。cygwinを削除して再インストールしたところ、どういうわけか正しく機能するようになりました。

于 2012-06-21T02:48:33.360 に答える