2011-08-20 25 views
28

我試圖讓Hadoop的僞分佈式操作示例(http://hadoop.apache.org/common/docs/stable/single_node_setup.html)在OS X Lion上工作,但是在沒有密碼的情況下讓ssh無法正常工作時遇到了麻煩。在OS X上將passphraseless ssh設置爲localhost

的說明說以下內容:

設置passphraseless SSH

現在檢查,你可以ssh到本地主機沒有密碼:$ SSH本地主機

我越來越連接被拒絕:

archos:hadoop-0.20.203.0 travis$ ssh localhost 
ssh: connect to host localhost port 22: Connection refused 

如果您無法通過SSH到本地主機沒有密碼,執行 以下命令:

$ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa 
$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys 

這一步後,我仍然得到拒絕連接。有任何想法嗎???

+0

'ls/System/Library/LaunchDaemons/|的輸出是什麼? grep ssh' – Alex

回答

39

聽起來像你沒有啓用SSH。應該在網絡設置控制面板的某處。

+16

Got it!感謝您指點我正確的方向。系統偏好設置 - >共享 - >遠程登錄需要啓用。 –

0

檢查您的.ssh目錄的權限。一些ssh實現要求該目錄爲chmod 700,否則他們會忽略它。

此外,檢查的

ssh -v localhost 

輸出看到SSH客戶端如何嘗試連接。輸出非常詳細,並且可以幫助您確定它是否是身份驗證問題。

0

我有同樣的問題。 請檢查ssh服務器是否正在運行。

如果是,請打開/etc/init.d/ssh_config/etc/init.d/sshd_config文件。問題是服務器運行在不同的端口上,客戶端指向不同的端口。

在此之前,請確保已安裝openssh服務器和客戶端。

0

我有同樣的問題,我解決它通過以下方式:

  1. SSH被激活。

  2. ssh -v localhost(如Herko所述) 在輸出中,我確定不支持DSA的身份驗證方法。

DEBUG1:跳過SSH-DSS鍵/用戶/約翰/。SSH/id_dsa的 - 不PubkeyAcceptedKeyTypes

  • 我簡單地重新生成ECDSA鍵和刪除DSA密鑰對。

  • 生成密鑰後,在Hadoop文檔中給出的過程成立。

  • 因此,如果Openssh配置支持認證方法,檢查是非常重要的。

    0

    你去「系統偏好設置>共享>遠程訪問」,並有一個授權用戶列表。將其更改爲「所有用戶」。

    這就解決了這個問題。