SSH服务介绍
系統(tǒng)運維
?
1. SSH是安全的加密協(xié)議(secure shell protocol),用于遠程連接liunx服務器。
2. SSH默認端口是22,安全協(xié)議版本SSH2,除了2之外還有SSH1(有漏洞沒用)。
3. SSH服務端主要包含兩個服務功能SSH遠程連接,SFTP服務。
4. Linux SSH客戶端包含ssh遠程連接命令,以及遠程拷貝scp命令等。
加密原理:
1.X原理
客戶端發(fā)出請求,服務端發(fā)送公鑰,客戶端的私鑰與服務端的公鑰經過算法得出值發(fā)送給服務端,然后建立聯(lián)機,這期間服務端不對這個值進行校驗,所以其他的客戶端有可能冒充進行偽通訊。
2.X原理
為了改正1.x的缺點2版本多加一個確認聯(lián)機正確性的Diffie-Hellman機制,在每次數據傳輸中,Server都會以該機制檢查數據的來源是否正確。
基于密鑰的安全驗證
一堆秘鑰對(鎖和鑰匙)
連接過程:
客戶端有公鑰和私鑰,一些驗證方式只需要客戶端有私鑰即可
1. cli發(fā)送公鑰到ser
2. cli發(fā)送連接請求
3. Ser使用私鑰和公鑰加密得到字串發(fā)送給cli
4. Cli使用私鑰解密該字串發(fā)給ser
5. Ser校驗通過,連接建立
基于口令的安全驗證:
使用ssh客戶端登錄:
ssh –p22 root@192.168..1.1 (-p參數制定ssh的端口,默認22的話不用寫)
我只想過去執(zhí)行命令回來:ssh root@192.168.1.1 /sbin/ifconfig
/.ssh/known_hosts是存放已知主機密鑰信息
ssh為加密的遠程連接協(xié)議,相關軟件有openssh,openssl。
默認端口22
協(xié)議版本1.x和2.x,2.x更安全。
服務端ssh遠程連接服務,sftp服務。Sshd守護進程,開機要自啟動。
Ssh客戶端包含ssh,scp,sftp命令。
Ssh安全驗證方式:口令和密鑰,這兩種都是基于口令的,SSH密鑰登錄的原理
Ssh服務安全優(yōu)化,修改默認端口22,禁止root遠程連接,禁止dns,SSH只監(jiān)聽內網IP
Ssh密鑰對,公鑰(public key)在服務器端,比喻就是鎖頭,私鑰(private key)在客戶端,比喻就是鑰匙。
SCP傳輸協(xié)議
安全的遠程文件復制程序
示例:
-p 端口 –r遞歸(連同目錄一起傳輸)-p不修改屬性
scp -P22 -r -p . root@192.168.24.32:/tmp/
相同效果可以使用:
rsync -avz /etc -e \'ssh -p 22\' root@192.168.24.21:/tmp/1
scp小結:
1. scp是加密的遠程拷貝,而cp僅為本地拷貝
2. 可以把數據從一臺機器推送到另一臺機器,也可以從其它服務器把數據拉回到本地執(zhí)行命令的服務器。
3. 每次都是全量完整拷貝,因此效率不高,適合第一次拷貝用,如果需要增量拷貝,用rsync。
總結
- 上一篇: WEB前端 前端开发者 如何突破技术瓶
- 下一篇: gitlab ssh key