2011-06-11 39 views
65

我想在osx上打開端口22,以便我可以使用ssh連接到本地主機。這是我目前的狀況:如何在OS X中打開端口22 10.6.7

ssh localhost 
ssh: connect to host localhost port 22: Connection refused 

我已經生成的密鑰,並把它丟到我的authorized_keys文件,如下所示:

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

A「網絡實用工具」端口掃描證實,22(和令人驚訝的23)已關閉。

上下文:我正在努力讓Hadoop在本地建立。在我的配置中,我在localhost上運行服務:#### s並需要通過ssh打開與他們的通信。

如何打開22?或者我可能會遇到另一個問題(不正確地生成密鑰也許?)

回答

153

我認爲你的端口可能是開放的,但你沒有任何聽它。

默認情況下,Apple Mac OS X操作系統默認安裝了SSH,但是 SSH守護程序未啓用。這意味着您不能遠程登錄,或者在啓用遠程副本之前執行此操作。

要啓用它,請轉到'系統偏好設置'。在「互聯網&聯網」下有一個「共享」圖標。運行它。在出現的列表 中,選中「遠程登錄」選項。在OS X Yosemite及以上版本中,不再有'Internet & Networking'菜單;它被轉移到帳戶。共享菜單現在在主系統首選項菜單上有它自己的圖標。 (thx @AstroCB)

這會立即啓動SSH守護程序,您可以使用您的用戶名遠程登錄 。 '共享'窗口在底部顯示名稱 和要使用的IP地址。您還可以使用終端應用程序中的'whoami'和 'ifconfig'來查找。

這些說明覆制自Enable SSH in Mac OS X,但我想確保它們不會消失並提供快速訪問。

+0

我不明白你做了什麼。確切的分享圖標可用。請幫幫我。 – 2014-08-11 09:24:06

+0

它位於系統偏好設置下,位於頂部Apple菜單下。 – Haukman 2014-08-12 16:36:48

+0

如果您不是管理員,請確保您擁有「允許所有用戶訪問」。 – Donato 2015-04-09 17:39:20

0

我無法解決問題;然後,我做了以下內容和問題解決: 參考here

sudo launchctl unload -w /System/Library/LaunchDaemons/ssh.plist 
    (Supply your password when it is requested) 
sudo launchctl load -w /System/Library/LaunchDaemons/ssh.plist 
ssh -v localhost 
sudo launchctl list | grep "sshd" 
    46427 - com.openssh.sshd 
+0

我遵循這個過程,得到了'34720 com.openssh.sshd。long_string_of_digits_and_numbers',但'ssh username @ IP_address'仍然給我'ssh:連接到主機IP_address端口22:連接被拒絕' – 2016-07-25 20:22:36

13

我使用OSX 10.11.6和this article爲我工作。

enter image description here

+0

該鏈接不再有效 – 2017-09-26 16:02:02

相關問題