文章目錄
- 一、簡介
- 二、安全加強方案
-
- 1、隐藏 module 資訊
- 2、使用權限控制
- 3、限制網絡通路
- 4、啟用賬戶認證
- 5、資料加密傳輸
一、簡介
Rsync 是一個通過檢查檔案的時間戳和大小,來跨計算機系統高效地傳輸和同步檔案的工具。
通常情況下,管理程式在啟動 Rsync 服務後,會直接運作傳輸任務。如果 Rsync 服務未經過安全加強,則很容易出現未授權通路等安全問題;其直接後果是傳輸資料裸露在網際網路上,可以被任何人通路擷取,帶來嚴重的資料洩露風險。
二、安全加強方案
1、隐藏 module 資訊
将配置檔案修改為以下内容:
2、使用權限控制
将不需要寫入權限的 module 設定為隻讀
3、限制網絡通路
使用安全組政策或白名單,限制允許通路主機的 IP 位址。
hosts allow = 123.123.123.123
4、啟用賬戶認證
隻允許指定的使用者,使用指定的密碼,來調用 Rsync 服務。
服務端配置
auth users = ottocho
secrets file = /etc/rsyncd.secrets
在檔案 /etc/rsyncd.secrets 中寫入使用的賬号密碼,格式為:username:password,支援多行。
注意:密碼要求滿足強密碼政策,必須是 8 位以上,且包括大小寫字母、數字、特殊字元的字元串。此處的 password 使用明文。
用戶端配置
在用戶端,使用 --password-file=/etc/rsyncd.secrets 參數,在 /etc/rsyncd.secrets 中寫入密碼。
Rsync -av --password-file=/etc/rsyncd.secrets test.host.com::files /des/path
在上述 /etc/rsyncd.secrets 密碼檔案中,使用者或使用者組必須和實際使用者保持一緻,且權限必須是 600。
5、資料加密傳輸
Rsync 預設不支援加密傳輸,如果需要使用 Rsync 傳輸重要性很高的資料,可以使用 SSH 模式。
Rsync 支援以下兩種同步模式:
當源路徑或目的路徑的主機名後面包含一個冒号分隔符時,Rsync 使用 SSH 傳輸。
當源路徑或目的路徑的主機名後面包含兩個冒号,或使用 Rsync://URL 時,Rsync 使用 TCP 直接連接配接 Rsync daemon。
在配置好 SSH 後,推薦參照以下方式來使用:
Rsync -av test.host.com:/path/to/files /des/path