天天看點

Linux 學習筆記_12_檔案共享服務_4_SSH SSH檔案共享服務

1、Linux上遠端指令行登入:ssh 使用者名@遠端主機IP位址

常用選項:

-2:表示SSH2,強制使用第二代SSH協定,建議使用

-p:端口号

大多數SSH登入的兩個規則:1)禁止空密碼使用者登入;2)禁止root使用者登入

2、SSH配置檔案:/etc/ssh/ssh_config

選項1:PermitRootLogin yes           #添加該行,或者将該行前的#去掉,則會限制root使用者登入

選項2:Port 10022                          #設定SSH的端口号為10022,建議修改此處

設定成功後:services shd restart     #重新加載配置檔案以生效

【Windows上有用戶端SecureCRT】

   #登入之後與ftp非常相像

【Windows上有SSHSecure Transfer Client】

1、本機拷貝檔案到遠端主機【加密傳輸】

scp  本地檔案  使用者名@遠端主機位址:遠端主機目标目錄

scp  -r 本地目錄  使用者名@遠端主機位址:遠端主機目标目錄

2、從遠端主機拷貝檔案到本地

scp  使用者名@遠端主機位址:遠端主機檔案  本地目錄

scp  -r 使用者名@遠端主機位址:遠端主機目錄  本地目錄

3、常用選項

-r               #複制目錄

-p              #保持檔案原有屬性

-P(大寫)    #指定端口号

四、加密與解密

1、對稱密鑰加密

說明:加密與解密使用同一密鑰

優點:速度快

缺點:密鑰本身需要交換

Linux 學習筆記_12_檔案共享服務_4_SSH SSH檔案共享服務

2、非對稱密鑰加密

說明:又稱為公開密鑰加密,使用時生成兩個密鑰,一個公開存放,為公鑰;一個私人持有,為私鑰。使用者用其中一個密鑰加密的資料隻有用另一個密鑰才能解開

優點:安全性好

缺點:速度慢

Linux 學習筆記_12_檔案共享服務_4_SSH SSH檔案共享服務

是以加密時,通常是同時使用對稱與非對稱兩種加密結合使用

3、示例

公鑰加密 --->私鑰解密 ---加密檔案

私鑰加密 --->公鑰解密 ---數字證書【用私鑰标記一下,然後用公鑰檢驗】

4、建立信任主機

主機一(本機)

主機二(192.168.16.155)

建立密鑰對

獲得主機一公鑰,并生成認證密鑰

ssh-keygen -t rsa #直接回車就可以了

該公鑰預設儲存在目前使用者家目錄的.ssh下

catid_rsa.pub >> .ssh/authorized_keys #名稱固定,最好用追加符号!

生成公鑰id_rsa.pub

chmod 600 .ssh/authorized_key

chmod 700 .ssh【有些系統現在不需要這兩步】

說明:

1、此時,主機一登入主機二将不用再使用密碼

如:scp -rp [email protected]/webadmin /backup

ssh [email protected]                  #執行這兩條指令将不再需要密碼

2、信任主機關系是跟使用者是相關的,如root生成的密鑰對,隻有root可以用,用zhansan登入的時候也是需要使用密碼的

3、在主機二上,如果沒有.ssh目錄的話,需要手工建立一下

特點:

1)、友善增量備份實作

2)、可鏡像儲存整個目錄樹和檔案系統

3)、保持檔案的權限,時間,軟硬連結等

4)、檔案傳輸效率高

5)、可以使用SSH加密通道

1、啟動rsync

rpm  -qf   /etc/xinetd.d/rsync     #檢視rsync是否已經安裝,但是大部分Linux是預設安裝的

編輯/etc/xinetd.d/rsync檔案:添加或修改選項 disable=no

service xinetd restart                #将xinetd服務重新啟動一下

附:sync  指令:将記憶體資料同步到硬碟上

2、使用rsync

示例1: rsync  -arHz  --progress  --delete [email protected]:/website /backup

#備份web伺服器端的目錄到本地/backup

#上傳/script目錄到使用者samlee的宿主目錄下

3、選項說明

-a                     #all:保持檔案屬性

-r                     #遞歸:子目錄遞歸處理

-H                   #保持檔案硬連結

-z                   #備份檔案傳輸時壓縮處理,以優化備份速度,建議加上

--progress      #在傳輸時顯示整個傳輸過程,在自動化執行時就不用加了

--delete         #删除目标備份沒有的檔案,必須加

-e ssh           #使用ssh加密隧道傳輸,進行加密處理

六、綜合執行個體分析

伺服器A/webadmin 192.168.16.155 penny ---> 備份伺服器B(localhost)root

&需要提前做好信任主機關系

a)在備份伺服器B生成密鑰,将公鑰拷貝到伺服器A

b)在伺服器A上生成認證密鑰

1)每周日做一次完全備份:crontab -e

/webadmin_$(date +%F)

2)每周一~周六做一次增量備份:crontab -e

0 2 * * 1-6 /usr/bin/rsync -arHz --delete [email protected]:/website  /backup

繼續閱讀