2012-07-17 66 views
6

因此,我正在通過本教程(Running Hadoop on windows using cygwin...)在我的WINDOWS上設置hadoop(請不要問我爲什麼要使用Linux)。所以,我得到了這一點,我需要SSH到我的本地主機和測試使用Cygwin的SSH,但它關閉連接並說:ssh localhost連接由127.0.0.1關閉?

連接通過127.0.0.1

我GOOGLE了很多,但關閉找不到任何適合我的問題的答案。

P.S:我在Windows 7專業版64位

任何想法運行cygwin的?

順便說一句,這是一個運行示例:

$ ssh -v localhost 
OpenSSH_6.0p1, OpenSSL 1.0.1c 10 May 2012 
debug1: Reading configuration data /etc/ssh_config 
debug1: Connecting to localhost [127.0.0.1] port 22. 
debug1: Connection established. 
debug1: identity file /home/Soroush/.ssh/id_rsa type 1 
debug1: identity file /home/Soroush/.ssh/id_rsa-cert type -1 
debug1: identity file /home/Soroush/.ssh/id_dsa type -1 
debug1: identity file /home/Soroush/.ssh/id_dsa-cert type -1 
debug1: identity file /home/Soroush/.ssh/id_ecdsa type -1 
debug1: identity file /home/Soroush/.ssh/id_ecdsa-cert type -1 
debug1: Remote protocol version 2.0, remote software version OpenSSH_6.0 
debug1: match: OpenSSH_6.0 pat OpenSSH* 
debug1: Enabling compatibility mode for protocol 2.0 
debug1: Local version string SSH-2.0-OpenSSH_6.0 
debug1: SSH2_MSG_KEXINIT sent 
debug1: SSH2_MSG_KEXINIT received 
debug1: kex: server->client aes128-ctr hmac-md5 none 
debug1: kex: client->server aes128-ctr hmac-md5 none 
debug1: sending SSH2_MSG_KEX_ECDH_INIT 
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY 
debug1: Server host key: ECDSA 19:2d:f6:84:4d:e5:0d:d4:5e:e6:e5:a4:6a:3c:ea:8b 
debug1: Host 'localhost' is known and matches the ECDSA host key. 
debug1: Found key in /home/Soroush/.ssh/known_hosts:1 
debug1: ssh_ecdsa_verify: signature correct 
debug1: SSH2_MSG_NEWKEYS sent 
debug1: expecting SSH2_MSG_NEWKEYS 
debug1: SSH2_MSG_NEWKEYS received 
debug1: Roaming not allowed by server 
debug1: SSH2_MSG_SERVICE_REQUEST sent 
debug1: SSH2_MSG_SERVICE_ACCEPT received 
debug1: Authentications that can continue: publickey,password,keyboard-interactive 
debug1: Next authentication method: publickey 
debug1: Offering RSA public key: /home/Soroush/.ssh/id_rsa 
Connection closed by 127.0.0.1 

回答

5

當您安裝Cygwin就跑ssh-host-config設置,您可能已經創建的用戶cyg_server。因此,當您連接到ssh時,您需要使用用戶[email protected]

當您與該用戶運行ssh時,它會詢問您在運行ssh-host-config時提供的密碼。

$ ssh [email protected] 
[email protected]'s password: 
Last login: Mon Dec 31 01:14:44 2012 from ::1 
[email protected] ~ 
$ 

我希望它會有用。

+0

出於某種原因,我習慣於重新啓動才能完成這項工作。 – FelikZ 2015-01-24 09:29:02

2

看起來關鍵是不能被接受。檢查/home/Soroush/.ssh/id_rsa.pub已添加到/home/Soroush/.ssh/authorized_keys

我還要檢查 RSAAuthentication yes/etc/ssh/sshd_config

+0

好吧,我將id_rsa.pub添加到了authorized_keys,並且在sshd_config文件中將RSAAuthentication設置爲yes,但仍然得到相同的結果。我已經編寫了這段代碼,將密鑰添加到authorized_keys中: cd〜/ .ssh \ n cat id_rsa.pub >> authorized_keys – Gabriel 2012-07-17 05:39:42

+0

刪除'\ n'部分。做到這一點:'cat〜/ ssh/.id_rsa.pub〜〜/ ssh /。authorized_keys'這會用你的rsa密鑰覆蓋現有的並且應該工作。 '\ n'是文檔中的錯字,順便說一句 - 這不是一個編程問題:) – Minsc 2012-07-17 08:26:22

+0

我做到了......仍然沒有工作...... :( – Gabriel 2012-07-17 10:39:50

2

我不得不做這些來解決這個問題:

chown <USERNAME> /var/log/sshd.log 
chown -R <USERNAME> /var/empty 
chown <USERNAME> /etc/ssh* 
chmod 755 /var/empty 
chmod 644 /var/log/sshd.log 

注意,是我想要的用戶名,不cyg_server。

0

我發現這篇文章與我的問題有關,但事實證明,我的cyg_server帳戶沒有管理員權限。

0

我有同樣的問題,它是由膩子身份驗證代理(Pageant)生成的:它使用私鑰運行。出於某種原因,它試圖使用它來連接到本地主機。如果我關閉了Pageant(或刪除了這個鍵),我可以SSH到localhost。 但是因爲我想讓Pageant運行(成爲其他ssh服務器的客戶端),所以我設法修改了本地的sshd服務,以便它以某種方式'Page'忽略',以接受連接: 修改/ etc/ssh/sshd_config中:

Pubkey驗證沒有

現在,它的工作原理

0

我不得不使用Cygwin的64位版本,以獲得這個工作。

相關問題