剛接觸mac不久,在使用中自己遇到的一些小問題,現在一一記錄下來,供其他人參考和自己學習。
ssh命令:ssh (-P端口)用戶名@遠程服務器IP。
要實現ssh登錄服務器,首先就要保證mac和服務器的ssh服務是開啟的,它們的相關的命令如下:
linux:service sshd start (start:開啟 stop:關閉 restart:重啟 status:查看服務狀態;知道的忽略)
Mac :1.編輯/etc/sshd_config文件,注釋掉
#ForceCommand /usr/local/bin/ssh_session
2.啟動sshd服務:
sudo launchctl load -w /System/Library/LaunchDaemons/ssh.plist
3.停止sshd服務:
sudo launchctl unload -w /System/Library/LaunchDaemons/ssh.plist
4查看是否啟動:
sudo launchctl list | grep ssh
其次,就是要生成密鑰:
在終端下執行命令:
ssh-keygen -t rsa
一路回車,各種提示按默認不要改,等待執行完畢。然后執行:
ls ~/.ssh
#可以看到兩個密鑰文件:id_rsa(私鑰) id_rsa.pub(公鑰)
最后,把密鑰放到服務器上:
放置公鑰到Linux服務器。使用scp命令:
scp ~/.ssh/id_rsa.pub 用戶名@服務器IP:/home/cssor/.ssh/
然后把id_rsa.pub的內容加入到服務器端的默認驗證文件authorized_keys,執行:
#先登錄到遠程服務器
cd ~/.ssh
cat -n /home/cssor/.ssh/id_rsa.pub >> authorized_keys #將公鑰內容加入到authorized_keys文件,沒有則新建一個就行
注意事項:
公鑰要放在登錄服務器所用的賬號的家目錄下,比如你用 abc登錄遠程服務器,就要把公鑰 放到 /home/abc/.ssh/下, authorized_keys文件也是在這個目錄下。
這里我遇到的問題:
1.mac端ssh服務不確定是否開啟。
2.遠程服務器在登錄后,用戶名自動轉換到了root帳號下了,這種情況要特殊注意,這個時候,公鑰就不能放到自己的家目錄下了,要把authorized_keys 放到遠程服務器的root帳號目錄下/root/.ssh/;然后,在客戶端登錄的時候要用root帳號,命令如下:ssh root@服務器IP。