使用 rsync 服務

內容提要

  1. 掌握兩種運行 rsync 服務的配置方法
  2. 熟悉配置文件 rsyncd.conf 的經常使用參數
  3. 掌握在生產服務器上同時運行 rsync 服務的配置方法
  4. 掌握在備份服務器上運行 rsync 服務的配置方法
  5. 重點掌握匿名 rsync 服務的配置方法

rsync 服務簡介

上一節講述了使用 rsync 客戶命令進行同步和備份的內容。rsync 還能夠以守護進程(daemon)方式運行,若一臺主機以 daemon 模式運行 rsync,通常稱其爲 rsync 服務器。rsync 的 C/S 方式運行方式概述以下:html

  1. rsync 客戶端鏈接遠程 rsync 守護進程進行數據同步。
  2. rsync 服務器端要開啓 rsyncd 服務,默認監聽 873 端口,等待客戶端去鏈接。
  3. rsync 服務器能夠 獨立運行,也可由 Xinetd 運行。CentOS 默認以 Xinetd 運行。
  4. rsync 服務器啓動時會讀取配置文件,默認爲 /etc/ rsyncd.conf,其格式相似於 samba 的主配置文件。
  5. 用戶驗證由服務器負責,用戶口令文件在 /etc/ rsyncd.conf 中指明。

rsync 命令既是客戶端程序,同時也是服務程序。在運行 rsync 服務時使用特殊的命令選項,經常使用的服務選項有:linux

選項 說明
–daemon 表示以守護進程方式運行
–address=ADDRESS 將此服務綁定到指定的 IP 地址運行
–port=PORT 指定特殊的監聽端口,默認爲 873 端口
–bwlimit=KBPS 限制 I/O 帶寬(單位爲 KBytes/秒)
–config=FILE 指定配置文件,默認爲 /etc/rsyncd.conf
–sockopts=OPTIONS 指定自定義 TCP 選項
-4, –ipv4 使用 IPv4
-6, –ipv6 使用 IPv6

上面僅僅列出了 rsync 用於服務的選項,rsync 用於客戶的選項請參見上節。ubuntu

配置 rsync 服務

配置 rsync 服務器的步驟

  • 首先要選擇服務器啓動方式
    • 對於負荷較重的 rsync 服務器應該使用獨立運行方式
    • 對於負荷較輕的 rsync 服務器可使用 xinetd 運行方式
  • 建立配置文件 rsyncd.conf
  • 對於非匿名訪問的 rsync 服務器還要建立認證口令文件

以 xinetd 運行 rsync 服務

CentOS 默認以 xinetd 方式運行 rsync 服務。rsync 的 xinetd 配置文件
在 /etc/xinetd.d/rsync。要配置以 xinetd 運行的 rsync 服務須要執行以下的命令:centos

# chkconfig rsync on
# service xinetd restart

管理員能夠修改 /etc/xinetd.d/rsync 配置文件以適合您的須要。例如,您能夠修改配置行安全

server_args = --daemon

在後面添加 rsync 的服務選項。服務器

獨立運行 rsync 服務

最簡單的獨立運行 rsync 服務的方法是執行以下的命令:網絡

/usr/bin/rsync --daemon

您能夠將上面的命令寫入 /etc/rc.local 文件以便在每次啓動服務器時運行 rsync 服務。固然,您也能夠寫一個腳本在開機時自動啓動 rysnc 服務。架構

配置文件 rsyncd.conf

兩種 rsync 服務運行方式都須要配置 rsyncd.conf,其格式相似於 samba 的主配置文件。
配置文件 rsyncd.conf 默認在 /etc 目錄下。爲了將全部與 rsync 服務相關的文件放在單獨的目錄下,能夠執行以下命令:
併發

# mkdir /etc/rsyncd
# touch /etc/rsyncd/rsyncd.conf
# ln -s /etc/rsyncd/rsyncd.conf /etc/rsyncd.conf

配置文件 rsyncd.conf 由全局配置和若干模塊配置組成。配置文件的語法爲:ssh

  • 模塊以 [模塊名] 開始
  • 參數配置行的格式是 name = value ,其中 value 能夠有兩種數據類型:
    • 字符串(能夠不用引號定界字符串)
    • 布爾值(1/0 或 yes/no 或 true/false)
  • 以 # 或 ; 開始的行爲註釋
  • \ 爲續行符

全局參數

在文件中 [module] 以外的全部配置行都是全局參數。固然也能夠在全局參數部分定義模塊參數,這時該參數的值就是全部模塊的默認值。

參數 說明 默認值
address 在獨立運行時,用於指定的服務器運行的 IP 地址。由 xinetd 運行時將忽略此參數,使用命令行上的 –address 選項替代。 本地全部IP
port 指定 rsync 守護進程監聽的端口號。 由 xinetd 運行時將忽略此參數,使用命令行上的–port 選項替代。 873
motd file 指定一個消息文件,當客戶鏈接服務器時該文件的內容顯示給客戶。
pid file rsync 的守護進程將其 PID 寫入指定的文件。
log file 指定 rsync 守護進程的日誌文件,而不將日誌發送給 syslog。
syslog facility 指定 rsync 發送日誌消息給 syslog 時的消息級別。 daemon
socket options 指定自定義 TCP 選項。

模塊參數

模塊參數主要用於定義 rsync 服務器哪一個目錄要被同步。模塊聲明的格式必須爲 [module] 形式,這個名字就是在 rsync 客戶端看到的名字,相似於 Samba 服務器提供的共享名。而服務器真正同步的數據是經過path 來指定的。能夠根據本身的須要,來指定多個模塊,模塊中能夠定義如下參數:
一、基本模塊參數

參數 說明 默認值
path 指定當前模塊在 rsync 服務器上的同步路徑,該參數是必須指定的。
comment 給模塊指定一個描述,該描述連同模塊名在客戶鏈接獲得模塊列表時顯示給客戶。

二、模塊控制參數

參數 說明 默認值
use chroot 若爲 true,則 rsync 在傳輸文件以前首先 chroot 到 path 參數所指定的目錄下。這樣作的緣由是實現額外的安全防禦,可是缺點是須要 root 權限,而且不能備份指向 path 外部的符號鏈接所指向的目錄文件。 true
uid 指定該模塊以指定的 UID 傳輸文件。 nobody
gid 指定該模塊以指定的 GID 傳輸文件。 nobody
max connections 指定該模塊的最大併發鏈接數量以保護服務器,超過限制的鏈接請求將被告知隨後再試。 0(沒有限制)
lock file 指定支持 max connections 參數的鎖文件。 /var/run/rsyncd.lock
list 指定當客戶請求列出可使用的模塊列表時,該模塊是否應該被列出。若是設置該選項爲 false,能夠建立隱藏的模塊。 true
read only 指定是否容許客戶上傳文件。若爲 true 則不容許上傳;若爲 false 而且服務器目錄也具備讀寫權限則容許上傳。 true
write only 指定是否容許客戶下載文件。若爲 true 則不容許下載;若爲 false 而且服務器目錄也具備讀權限則容許下載。 false
ignore errors 指定 在 rsync 服務器上運行 delete 操做時是否忽略 I/O 錯誤。通常來講 rsync 在出現 I/O 錯誤時將將跳過 –delete 操做,以防止由於暫時的資源不足或其它 I/O 錯誤致使的嚴重問題。 true
ignore nonreadable 指定 rysnc 服務器徹底忽略那些用戶沒有訪問權限的文件。這對於在須要備份的目錄中有些不該該被備份者得到的文件時是有意義的。 false
timeout 該選項能夠覆蓋客戶指定的 IP 超時時間。從而確保 rsync 服務器不會永遠等待一個崩潰的客戶端。對於匿名 rsync 服務器來講,理想的數字是 600(單位爲秒)。 0 (未限制)
dont compress 用來指定那些在傳輸以前不進行壓縮處理的文件。該選項能夠定義一些不容許客戶對該模塊使用的命令選項列表。必須使用選項全名,而不能是簡稱。當發生拒絕某個選項的狀況時,服務器將報告錯誤信息而後退出。例如,要防止使用壓縮,應該是:」dont compress = *」。 *.gz *.tgz *.zip *.z *.rpm *.deb *.iso *.bz2 *.tbz

三、模塊文件篩選參數

參數 說明 默認值
exclude 指定多個由空格隔開的多個文件或目錄(相對路徑),並將其添加到 exclude 列表中。這等同於在客戶端命令中使用 –exclude 來指定模式。
exclude from 指定一個包含 exclude 規則定義的文件名,服務器從該文件中讀取 exclude 列表定義。
include 指定多個由空格隔開的多個文件或目錄(相對路徑),並將其添加到 include 列表中。這等同於在客戶端命令中使用 –include 來指定模式 。
include from 指定一個包含 include 規則定義的文件名,服務器從該文件中讀取 include 列表定義。
  • 一個模塊只能指定一個 exclude 參數、一個 include 參數。
  • 結合 include 和 exclude 能夠定義複雜的 exclude/include 規則 。
  • 這幾個參數分別與相應的 rsync 客戶命令選項等價,惟一不一樣的是它們做用在服務器端。
  • 關於如何書寫規則文件的內容請參見 上節

四、模塊用戶認證參數

參數 說明 默認值
auth users 指定由空格或逗號分隔的用戶名列表,只有這些用戶才容許鏈接該模塊。這裏的用戶和系統用戶沒有任何關係。用戶名和口令以明文方式存放在 secrets file 參數指定的文件中。 (匿名方式)
secrets file 指定一個 rsync 認證口令文件。只有在 auth users 被定義時,該文件才起做用。
strict modes 指定是否監測口令文件的權限。若爲 true 則口令文件只能被 rsync 服務器運行身份的用戶訪問,其餘任何用戶不能夠訪問該文件。 true
  • rsync 認證口令文件的權限必定是 600,不然客戶端將不能鏈接服務器。
  • rsync 認證口令文件中每一行指定一個 用戶名:口令 對,格式爲:
# 以 "#" 開始的行爲註釋行
username:passwd
# 通常來講口令最好不要超過8個字符。

若您只配置匿名訪問的 rsync 服務器,則無需設置上述參數。 五、模塊訪問控制參數

參數 說明 默認值
hosts allow 用一個主機列表指定哪些主機客戶容許鏈接該模塊。不匹配主機列表的主機將被拒絕。 *
hosts deny 用一個主機列表指定哪些主機客戶不容許鏈接該模塊。

客戶主機列表定義能夠是如下形式:

  • 單個IP地址。例如:192.168.0.1
  • 整個網段。例如:192.168.0.0/24,192.168.0.0/255.255.255.0
  • 可解析的單個主機名。例如:centos,centos.smartraining.cn
  • 域內的全部主機。例如:*.smartraining.cn
  • 「*」則表示全部。
  • 多個列表項要用空格間隔。

六、模塊日誌參數

參數 說明 默認值
transfer logging 使 rsync 服務器將傳輸操做記錄到傳輸日誌文件。 false
log format 指定傳輸日誌文件的字段。 」%o %h [%a] %m (%u) %f %l」

* 設置了」log file」參數時,在日誌每行的開始會添加」%t [%p]「。

  • 可使用的日誌格式定義符以下所示:
    • %a - 遠程IP地址
    • %h - 遠程主機名
    • %l - 文件長度字符數
    • %p - 該次 rsync 會話的 PID
    • %o - 操做類型:」send」 或 「recv」
    • %f - 文件名
    • %P - 模塊路徑
    • %m - 模塊名
    • %t - 當前時間
    • %u - 認證的用戶名(匿名時是 null)
    • %b - 實際傳輸的字節數
    • %c - 當發送文件時,記錄該文件的校驗碼

rsync 服務器與備份

什麼時候使用 rsync 服務器

  • 若用戶在遠程主機上有登陸賬號,一般可使用 ssh 方式運行 rsync 而沒必要配置 rsync 服務。
  • 因爲 rsync 服務使用明文口令,因此在不可信任的網絡中應該儘可能使用 ssh 方式運行 rsync
  • 在可信任的網絡中能夠配置使用 rsync 服務器,固然也可使用 ssh 方式運行 rsync
  • 最須要架設 rsync 服務器的理由恐怕就是匿名 rsync 服務器了,它能夠爲客戶提供匿名訪問的同步資源,

例如:容許用戶同步 FTP 軟件資源、Linux 發行版本的軟件倉庫等。

部署 rsync 服務器的兩種方法

爲了備份數據,如何在網絡中部署 rsync 服務器呢?一般有兩種方法:

  • 在生產服務器上同時運行 rsync 服務
    • rsync 服務以只讀方式提供要備份的數據,從而避免破壞生產服務器上的數據
    • 根據須要,能夠配置一個或多個(爲了不風險)主機做爲備份主機
    • 在每一個備份主機上以」拉」的方式從生產服務器將數據同步到備份主機
  • 在備份服務器上運行 rsync 服務
    • 備份服務器其實是個數據倉庫,他集中收集了網絡中全部要備份的主機的數據
    • 備份服務器上運行的 rsync 服務以讀寫方式提供備份空間
    • 根據須要,能夠配置一個或多個(爲了不風險)備份服務器
    • 在每臺要備份的主機(包括生產服務器)上以」推」的方式將備份數據寫入備份服務器

上述關於備份的思想方法一樣也適用於以 ssh 方式運行 rsync 的狀況。固然這時無需架設 rsync 服務,所需考慮的問題僅僅是應該以」推」方式運行仍是以」拉」方式運行。

rsync 服務器應用

下面給出幾個使用 rsync 服務器的示例。

在生產服務器上同時運行 rsync 服務

假設網路中有以下3臺計算機

  • 生產服務器 - pandr (192.168.0.220)
  • 備份主機A - backupa (192.168.0.221)
  • 備份主機B - backupb (192.168.0.222)

在 pandr 上配置 rsync 服務

一、編輯配置文件

# vi /etc/rsyncd/rsyncd.conf
uid = nobody
gid = nobody
syslog facility = local3

use chroot = yes
read only = yes

max connections = 4
timeout = 300

motd file = /etc/rsyncd/rsyncd.motd
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock

hosts allow=192.168.0.221 192.168.0.222
hosts deny=*

secrets file = /etc/rsyncd/rsyncd.secrets
auth users = bua,bub

list=yes

[home]
	uid = root
	gid = root
	path = /home
	comment = product server home
	exclude = www/ samba/ ftp/
[www]
	path = /home/www
	comment = product server www
	exclude = logs/

下面考查一些權限問題:

# tree /home -p
/home
|-- [drwx------] crq
|-- [drwxr-xr-x] ftp
|-- [drwx------] osmond
|-- [drwxr-xr-x] samba
`-- [drwxr-xr-x] www
	|-- [drwxr-xr-x] cgi-bin
|-- [drwxr-xr-x] fcgi-bin
|-- [drwxr-xr-x] htdocs
`-- [drwxr-xr-x] logs

從上面的目錄權限可知,每一個用戶的自家目錄對組和其餘用戶沒有任何權限。當 uid 和 gid 設置爲 nobody時,rsync客戶端因爲無權進入用戶的自家目錄,因此不能同步各個自家目錄下的內容。爲此,[home] 部分將 uid 和 gid 設置爲 root。

rsyncd 默認將日誌寫入 /var/log/messages 文件,上面的 「syslog facility = local3」 配置將使用LOCAL3 日誌設備(facility)。 爲此須要在 /etc/syslog.conf 文件中添加以下行:

local3.info /var/log/rsync.log

而後使用以下命令從新啓動 syslog

# service syslog restart

二、編輯 rsync 服務的口令文件

# touch /etc/rsyncd/rsyncd.secrets
# chmod 600 /etc/rsyncd/rsyncd.secrets
# vi /etc/rsyncd/rsyncd.secrets
bua:backupa-s-password
bub:backupb-s-password

不要在 /etc/rsyncd/rsyncd.secrets 中使用與同名系統用戶賬號相同的口令。 三、以 xinetd 運行 rsync 服務

# chkconfig rsync on
# service xinetd restart

四、配置防火牆
使用 iptables 配置容許 rsync服務端口(默認爲 873)經過,同時限制 rsync 客戶端的鏈接。

例如:

# iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 873 -j ACCEPT
# iptables -A INPUT -p tcp -s ! 192.168.0.221 --dport 873 -j DROP

可使用以下命令查看添加的防火牆規則:

# iptables -L

在備份主機上從服務器同步

下面配置 rsync 服務器的客戶端。下面以 backupa(192.168.0.221)爲例進行說明。
首先可使用以下的命令查看服務器上提供的同步資源:

rsync --list-only bua@192.168.0.220::
rsync --list-only rsync://bua@192.168.0.220/home

而後就能夠在客戶端配置同步了,配置方法至關靈活,您能夠根據本身須要選擇不一樣的配置方法。
1)簡單同步(不保存歷史歸檔)

rsync -avzP --delete bua@192.168.0.220::home /backups/192.168.0.220/home
rsync -avzP --delete rsync://bua@192.168.0.220/www /backups/192.168.0.220/www

2)徹底備份(保存歷史歸檔)

rsync -avzP --delete bua@192.168.0.220::home /backups/192.168.0.220/$(date +'%y-%m-%d')/home
rsync -avzP --delete rsync://bua@192.168.0.220/www /backups/192.168.0.220/$(date +'%y-%m-%d')/www

上面的方法雖然簡單,可是效率不高。由於每次都將服務器提供的資源同步到不一樣的目錄(由於時間在變),因此這隻至關於使用 scp 命令進行遠程拷貝。
上面的命令沒有使用 rsync 的優點功能(即只傳輸有變化的部分),爲此作以下改進:
首先在備份主機上部署以下的目錄:

/backups/192.168.0.220/current # 存放同步的目錄
/backups/192.168.0.220/archive # 存放歸檔的目錄

接着使用以下命令進行同步:

rsync -avzP --delete bua@192.168.0.220::home /backups/192.168.0.220/current/home
rsync -avzP --delete rsync://bua@192.168.0.220/www /backups/192.168.0.220/current/www

同步以後在備份主機上使用以下命令保存歸檔:

tar -cjf /backups/192.168.0.220/archive/home-$(date +'%y-%m-%d').tbz \
-C /backups/192.168.0.220/current/home .
tar -cjf /backups/192.168.0.220/archive/www-$(date +'%y-%m-%d').tbz \
-C /backups/192.168.0.220/current/www .

這種改進方法具備以下優勢:

  • 每次同步都基於 current 目錄,因此只會傳輸變化的部分,減小了網絡流量
  • 使用壓縮的歸檔,減小了備份主機的磁盤佔用
  • 因爲是在備份主機上執行歸檔壓縮,減小生產服務器運行歸檔壓縮的CPU時間

所以,若須要進行遠程的包含歸檔文件的徹底備份,上述方法優於在生產服務器執行 tar 命令而後再上傳到備份主機的方法。

若您要在 cron 中執行 rsync,須要在 rsync 命令中添加相似以下的指定口令文件的選項,以免在終端上輸入口令:

--password-file=/root/rsync.password

而後在備份主機上生成口令文件:

echo "backupa-s-password"> /root/rsync.password
chmod 600 /root/rsync.password

3)增量備份(保存歷史歸檔)
您能夠參考上一節的內容編寫腳本實現普通型增量備份或快照型增量備份。
爲了提供安全性,應該配置一個以上的備份主機。配置方法有兩種:

  • 每臺備份主機都從生產服務器同步數據
  • 爲了下降生產服務器負載,一臺備份主機也能夠從另外一臺備份主機同步數據,實現二級備份架構

在備份服務器上運行 rsync 服務

假設網路中有以下4臺計算機

  • 備份服務器A - backupa (192.168.0.221)
  • 備份服務器B - backupb (192.168.0.222)
  • 主機A - hosta (192.168.0.111)
  • 主機B - hostb (192.168.0.112)

在備份服務器上配置 rsync 服務

只需在一臺備份服務器上配置 rsync 服務。例如,在備份服務器A上配置 rsync 服務,而後在備份服務器B上使用 rsync 客戶命令同步備份服務器A便可。

下面在 backupa (192.168.0.221)上配置備份服務器。

一、編輯配置文件

# vi /etc/rsyncd/rsyncd.conf
uid = root
gid = root
syslog facility = local3

use chroot = yes
read only = no

max connections = 20
timeout = 300

motd file = /etc/rsyncd/rsyncd.motd
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock

hosts allow=192.168.0.0/24
hosts deny=*

secrets file = /etc/rsyncd/rsyncd.secrets

[hosta-home]
	path = /backups/hosta/home
	comment = hosta home
	list=yes
	auth users = hosta
[hosta-www]
	path = /backups/hosta/www
	comment = hosta www
	list=yes
	auth users = hosta
[hostb-home]
	path = /backups/hostb/home
	comment = hostb home
	list=yes
	auth users = hostb
[hostb-www]
	path = /backups/hostb/www
	comment = hostb www
	list=yes
	auth users = hostb

二、編輯 rsync 服務的口令文件

# touch /etc/rsyncd/rsyncd.secrets
# chmod 600 /etc/rsyncd/rsyncd.secrets
# vi /etc/rsyncd/rsyncd.secrets
hosta:hosta-s-password
hostb:hostb-s-password

三、建立系統賬號

# useradd hosta
# useradd hostb
# 若不容許系統登陸,則無需設置用戶口令

四、獨立運行 rsync 服務

# chkconfig rsync off
# service xinetd restart
# echo "/usr/bin/rsync --daemon">>/etc/rc.local
# /usr/bin/rsync --daemon

五、配置防火牆 使用 iptables 配置容許 rsync服務端口(默認爲 873)經過,同時限制 rsync 客戶端的鏈接。
例如:

# iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 873 -j ACCEPT
# iptables -A INPUT -p tcp -s ! 192.168.0.0/24 --dport 873 -j DROP

可使用以下命令查看添加的防火牆規則:

# iptables -L

在主機上向服務器同步

下面配置 rsync 服務器的客戶端。每一個 rsync 客戶端的配置方法都是相似的。下面以 hosta(192.168.0.111)爲例進行說明。
首先可使用以下的命令查看服務器上提供的同步資源:

rsync --list-only hosta@192.168.0.221::
rsync --list-only rsync://hosta@192.168.0.221/hosta-home

而後就能夠在客戶端以推方式同步到服務器了。

rsync -avzP --delete --exclude "lost+found/" /home/ hosta@192.168.0.221::hosta-home
rsync -avzP --delete /www/ rsync://hosta@192.168.0.221/hosta-www

若您要在 cron 中執行 rsync,須要在 rsync 命令中添加相似以下的指定口令文件的選項,以免在終端上輸入口令:

--password-file=/root/rsync.password

而後在備份主機上生成口令文件:

echo "hosta-s-password"> /root/rsync.password
chmod 600 /root/rsync.password

配置匿名 rsync 服務

最簡單的 rsync 服務器配置就是匿名服務器。下面說明配置步驟。
一、編輯配置文件

# vi /etc/rsyncd/rsyncd.conf
uid = nobody
gid = nobody
syslog facility = local3

use chroot = yes
read only = yes

timeout = 600

motd file = /etc/rsyncd/rsyncd.motd
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock

list=yes

# 設置匿名訪問的 Centos 倉庫的同步資源
[centos]
	path = /var/www/mirror/centos
	comment = Centos Repository
	max connections = 30
# 設置匿名訪問的 ubuntu 倉庫的同步資源
[ubuntu]
	path = /var/www/mirror/ubuntu
	comment = Ubuntu Repository
	max connections = 30
# 設置匿名訪問的 Ubuntu CN 倉庫的同步資源
[ubuntu-cn]
	path = /var/www/mirror/ubuntu-cn
	comment = Ubuntu CN Repository
	max connections = 30
# 設置匿名訪問的 FTP 服務器的同步資源
[ftp]
	path = /var/ftp/pub
	comment = Anonymous FTP server
	max connections = 10
# 也能夠同時設置其餘非匿名訪問的同步資源
[tmp]
	path = /tmp
	comment = Temporary Directory
	read only = no
	hosts allow=192.168.0.0/24 127.0.0.0/8 *.sinosmond.com
	hosts deny=*
	secrets file = /etc/rsyncd/rsyncd.secrets
	auth users = user1,user2
	max connections = 5

二、編輯 rsync 服務的口令文件

# touch /etc/rsyncd/rsyncd.secrets
# chmod 600 /etc/rsyncd/rsyncd.secrets
# vi /etc/rsyncd/rsyncd.secrets
user1:user1-s-password
user2:user2-s-password

不要在 /etc/rsyncd/rsyncd.secrets 中使用與同名系統用戶賬號相同的口令。
三、獨立運行 rsync 服務

# chkconfig rsync off
# service xinetd restart
# echo "/usr/bin/rsync --daemon">>/etc/rc.local
# /usr/bin/rsync --daemon

四、配置防火牆
使用 iptables 配置容許 rsync服務端口(默認爲 873)經過,同時限制 rsync 客戶端的鏈接。
例如:

# iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 873 -j ACCEPT

可使用以下命令查看添加的防火牆規則:

# iptables -L

有關如何使用 rsync 客戶命令從匿名服務器同步數據的內容請參考上一節

參考

相關文章
相關標籤/搜索