RHEL6 SSH連接測試
ssh相對於vnc來說算是比較安全的一個軟件啦,這裡來測試一下ssh的兩種網絡驗證方式:密碼驗證和證書驗證。考慮到服務器的安全性,一般用證書方式比較好,不用把服務器端的賬戶密碼都告訴用戶。
下面就開始吧,這個測試裡我把宿主機作為服務器端,把虛擬機作為客戶端。
一、服務器采用密碼驗證
1、修改服務器端配置文件(vim /etc/ssh/sshd_config)
a、將驗證方式改為“密碼驗證”;PasswordAuthentication yes
b、重啟 ssh服務;service sshd restart
2、客戶端登錄(ssh
[email protected])
然後退出來測試一下證書方式登錄吧。
二、證書方式登錄服務器
注意:保證服務器端是以密碼驗證方式,否則證書上傳不了。
1、客戶端先自己生成一份證書(ssh-keygen)然後要求選擇證書保存路徑,默認在家目錄的.ssh文件夾裡,按回車接受默認路徑,接著輸入證書密碼,兩次確認後,ok,證書生成。
2、上傳生成的證書(ssh-copy-id -i ~/.ssh/id_rsa.pub
[email protected])
這裡我將證書上傳到服務器端的student賬戶裡,下次登錄student賬戶就不用輸入密碼了,也可以是其它賬戶。同樣要求密碼先驗證身份,輸入密碼,ok,成功上傳證書。
3、更改服務器驗證方式為加密證書
同樣是在/etc/ssh/sshd_config裡改,將yes改為no即為證書驗證了。然後重啟服務,ok!配置成功。
4、虛擬機登錄服務器驗證
ssh
[email protected](我們把證書是上傳到student下的,所以只有登錄student才能成功)ok,成功登錄
logout退出,試著登錄root吧,發現“permission denied操作不被允許‘,原因是沒有證書,不讓通過了。
再試著登錄student,還用輸入密碼嗎?No ,直接連上了^_^,用logout | exit 試試退出再登,哈哈,沒問題。索性關掉這個shell環境吧,再打開一個終端,連接,還是ok,直到你注銷或重啟之後才得再登錄一次
三、有一個問題了,如果我在外辦公,使用的這台點腦又沒有給服務器上傳過證書,怎麼辦?難道讓服務器再改成密碼驗證讓你上傳證書?麻煩
檢查一下服務器端的認證文件到底是什麼樣的,能不能偽造一份證書呢,來先看看吧
2、用第三台電腦測試,將客戶端的id_rsa密鑰拷貝到第三台電腦的/root/.ssh/下,注意,之前是root生成的證書只能上傳至點三台電腦的root下,以偽造root用戶。
3、用第三台電腦偽造和客戶端一樣的hostname: --> vim /etc/sysconfig/network ,將其改為和客戶機一樣的hostname,ok完成。(注意,改hostname只能重啟生效)
4、用第三台電腦連服務器端,輸入證書密碼,ok,登錄成功!
本文為我的實驗筆記,openoffice還不會排版,難免粗糙 QQ345258361
最後的測試不好截圖請自己測試,我已測試通過,如有錯誤之處請指正,謝謝!