SSH設置無密碼登錄服務器

我們在做開發的時候,經常需要在本地去登錄我們自己的服務器,我們老大給的密碼太複雜了,我每次登錄都比較要去找我記錄的密碼,在複製粘貼過來,後來我在找了一下不需要本第登錄服務器不需要密碼的方法,設置了一下,就可以免密碼登錄了,記錄下,僅做參考。

本地端-MAC版:

#進入用戶的目錄下
cd ~/  

#查看是否有.ssh的目錄,如果有,進行下一步,沒有則執行命令創建
mkdir .ssh 

#進入.ssh目錄
cd .ssh 

#把分組和其他用戶的讀、寫、執行權限去掉,確保讀、寫、執行權限只限當前用戶
chmod go-rwx .ssh 

#創建你的私鑰和公鑰,最後的“”,是代表私鑰不需要密碼,這就是爲什麼可以免密碼登錄
ssh-keygen -b 1024 -t rsa -f id_rsa -P "" 

#進入.ssh目錄就可以查看文件了
cd .ssh  
ls -la

結果如下:

本地端—windows版:

1.在用戶主目錄下(一般爲C:\Users\your username),看看有沒有.ssh目錄;
2.如果有,再看看這個目錄下有沒有id_rsa和id_rsa.pub;
3.這兩個文件,如果已經有了,可直接跳到下一步。如果沒有,打開Shell(Windows下打開Git Bash),創建SSH Key:

ssh-keygen -b 1024 -t rsa -f id_rsa -P "" 

4.進入.ssh目錄就可以查看文件是否生成了;

注:id_rsa 是私鑰  id_rsa.pub 是公鑰

服務器端:

#登錄之後,進入目錄
cd ~/

#查看是否有.ssh的目錄,如果有,進行下一步,沒有則執行命令創建
mkdir .ssh 

#在.ssh目錄下創建authorized_keys文件
touch authorized_keys

#查看客戶端的id_rsa.pub
cat id_rsa.pub
結果如下:

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDTN8zeJh/jjKqezPw4int3HtPAw+WJ48JLTUPiUZrqPANMpzWbqLmwoqT3bQS2/BMvx0OetsYHJKogLarMTKPF7cAMAwV+5NKpUDxuKYxjBLbWBBZdEbml1MzzWiYRT/gGyosYBd8wiDaYMME2Fo9x5xEaEEKvp8dvT8YW/VXNO5ZvvHUF5+w4IDXY+kruroOdp/KZVvZEefbqVb5y1Y1P5iB9vKq1qy1DDc1rso3KaNsxSRMgMUm5HZWFI6+AKrO+0URbeFLdeAZAm8XfQ0ZYlNoo/ksuNA77guSj5X9dlzjHl1m2e0pePkXuc5DtKJ63FyJ7Md3wUh81rO6SQ5xTE4BV5+gZYDYLnRm0aOQwEq3kow== [email protected]

#把內容複製到authorized_keys即可
vi authorized_keys

注:如果authorized_keys沒有寫權限,這加上:chmod u+w authorized_keys 複製保存之後,記得把權限去掉:chmod u-w authorized_keys

以上的步驟完成之後,你就可以在本地無需密碼的登錄服務器了,因爲你的服務器已經有了你的本地電腦的公鑰,只有你本地的私鑰纔可以解密,所以不用密碼也是安全的。

你就可以這樣登錄了:

第一種:

ssh [email protected] 即可。
第二種:(這種方式就是給一個長一點的命令去一個別名,執行起來簡單點)
#進入.bash_profile
cd ~/
vi .bash_profile

#給你要執行的文件取一個別名-serverstart
alias serverstart='ssh [email protected]'

#重新加載一下.bash_profile這個文件
source ~/.bash_profile

#執行別名就可以了
serverstart

















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