Mac上無法ssh localhost

0.背景

在Hadoop的僞分佈式等場景中,我們需要主機可以ssh到自身啓動守護進程,所以需要無密碼登錄localhost。

1.正常的流程

在其他Unix-like的系統中,我們使用一下方式即可。

ssh-keygen -t -rsa -P '' -f ~/.ssh/id_rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

關於authorized_keys,如果A要無密碼登錄B,則需要把A的公鑰寫入B的authorized_keys中國。這裏A/B均是自身。

2.Mac系統的問題

Mac系統默認不能被遠程登錄(自己遠程登錄自己同樣屬於)。

所以,在使用以上配置後,鍵入ssh localhost會出現以下提示。

ssh: connect to host localhost port 22: Connection refused

解決方法:打開系統偏好,在右上角搜索框中鍵入“互聯網共享”或者“Internet sharing”。在打開的頁面中,勾選中左邊的“遠程登錄”或者“Remote Login”即可。

Reference

1.https://stackoverflow.com/questions/6313929/how-do-i-open-port-22-in-os-x-10-6-7

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章