天天看點

搭建backup伺服器rsyncdaemon服務模式之一rsync服務端配置

daemon方式就是先搭建一個伺服器,這個伺服器上面跑一個rsync服務,服務就稱為daemon(daemon就是實時運作的程式),rsync監聽端口是873,然後在用戶端上面使用rsync指令,實作和伺服器之間推拉動作。(推拉都是在用戶端執行rsync指令)

本文中rsync服務端有兩個網卡:網卡1連接配接外網,ip位址和掩碼為10.0.0.41/24;網卡2連接配接内網,ip位址和掩碼為172.16.1.41/24

 1. 統一版本:

[root@backup ~]# uname -m

x86_64

[root@backup ~]# uname -r

2.6.32-642.el6.x86_64

[root@backup ~]# rsync --version

rsync  version 3.0.6  protocol version 30

Copyright (C) 1996-2009 by Andrew Tridgell, Wayne Davison, and others.

Web site: http://rsync.samba.org/

Capabilities:

    64-bit files, 64-bit inums, 64-bit timestamps, 64-bit long ints,

    socketpairs, hardlinks, symlinks, IPv6, batchfiles, inplace,

    append, ACLs, xattrs, iconv, symtimes

rsync comes with ABSOLUTELY NO WARRANTY.  This is free software, and you

are welcome to redistribute it under certain conditions.  See the GNU

General Public Licence for details.

檢視rsync程式是否存在

[root@backup ~]# rpm -qa rsync

rsync-3.0.6-12.el6.x86_64

如果沒有 rsync就用yum install rsync -y 安裝。

2.rsync伺服器搭建在備份伺服器上面,然後在所有伺服器上面通過指令就是推拉了。

[root@backup ~]# ll /etc/rsyncd.conf

ls: cannot access /etc/rsyncd.conf: No such file or directory

配置檔案rsyncd.conf預設是不存在的

[root@backup ~]# vim /etc/rsyncd.conf

 中插入如下資訊:

#rsync_config__________start

##rsyncd.conf start##

uid=rsync

gid=rsync

use chroot=no

max connections=200

timeout=300

pid file=/var/run/rsyncd.pid

lock file=/var/run/rsync.lock

log file=/var/log/rsyncd.log

[backup]

path=/backup

ignore errors

read only=false

list=false

hosts allow=172.16.1.0/24

#hosts deny=0.0.0.0/32

auth users=rsync_backup

secrets file=/etc/rsync.password

#rsync_config________end

/etc/rsyncd.conf配置資訊解釋

uid=rsync  #虛拟使用者,檔案和程序都要滿足屬組要求,程序對應的使用者(遠端的指令使用rsync通路共享目錄)

gid=rsync #程序對應的使用者組

use chroot=no ##安全相關

max connections=200 #最大連接配接數

timeout=300 #逾時參數

pid file=/var/run/rsyncd.pid #程序對應的程序号檔案

lock file=/var/run/rsync.lock #鎖檔案,防止檔案不一緻

log file=/var/log/rsyncd.log  #日志檔案 出錯

[backup] #子產品名稱

path=/backup #伺服器提供通路的目錄

ignore errors #忽略錯誤

read only=false #可寫

list=false #不能清單

hosts allow=172.16.1.0/24 ##允許那些機器過來連接配接

#hosts deny=0.0.0.0/32 ##拒絕哪些機器過來連接配接(0.0.0.0/32表示誰都可以過來,此處hosts deny前面要用#注釋,如果不用#注釋,任何ip都可以過來)

auth users=rsync_backup #虛拟使用者,獨立于系統賬号之外的虛拟使用者

secrets file=/etc/rsync.password #虛拟賬号對應的使用者和密碼

檢查是否存在賬号rsync,如果不存在就建立。 -s代表 不需要登入,-M代表不需要家目錄

[root@backup ~]# id rsync

id: rsync: No such user

[root@backup ~]# useradd rsync -s /sbin/nologin -M

用tail -l檢視剛剛建好的賬号

[root@backup ~]# tail -1 /etc/passwd

rsync:x:501:501::/home/rsync:/sbin/nologin

啟動服務:

[root@backup ~]# rsync --daemon

檢視服務是否啟動:

[root@backup ~]# ps -ef|grep rsync|grep -v grep

root       1344      1  0 23:54 ?        00:00:00 rsync --daemon

建立backup目錄

[root@backup ~]# mkdir /backup

使用者連接配接過來無法通路backup,需要修改/backup屬組為rsync虛拟使用者

[root@backup ~]# chown rsync.rsync /backup

[root@backup ~]# ls -ld /backup/

drwxr-xr-x 2 rsync rsync 4096 Aug  2 23:57 /backup/

vim rsync.password輸入内容rsync_backup:oldboy 其中rsync_backup為使用者名,oldboy為密碼

[root@backup ~]# vim /etc/rsync.password

[root@backup ~]# cat /etc/rsync.password 

rsync_backup:oldboy

因為/etc/rsync.password有使用者和密碼,是以不夠安全。是以需要修改rsync.password的其他組的權限。

[root@backup ~]# ll /etc/rsync.password    

-rw-r--r-- 1 root root 20 Aug  3 00:07 /etc/rsync.password

[root@backup ~]# chmod 600 /etc/rsync.password

[root@backup ~]# ll /etc/rsync.password 

-rw------- 1 root root 20 Aug  3 00:07 /etc/rsync.password

伺服器端配置完成了

已知端口檢視服務:

[root@backup ~]# lsof -i :873

COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME

rsync   1344 root    4u  IPv4  11151      0t0  TCP *:rsync (LISTEN)

rsync   1344 root    5u  IPv6  11152      0t0  TCP *:rsync (LISTEN)

[root@backup ~]# netstat -lntup|grep 873

tcp        0      0 0.0.0.0:873                 0.0.0.0:*                   LISTEN      1344/rsync          

tcp        0      0 :::873                      :::*                        LISTEN      1344/rsync

加入開機自啟動:

[root@backup ~]# echo "/usr/bin/rsync --daemon" >>/etc/rc.local

[root@backup ~]# tail -1 /etc/rc.local

/usr/bin/rsync --daemon

總結rsync伺服器配置過程:

1.檢視rsync安裝包

rpm -qa rsync

2.添加rsync服務的使用者,管理本地目錄的

useradd -s /sbin/nologin -M rsync

id rsync

3.生成rsyncd.conf配置檔案

vi /etc/rsyncd.conf 放入事先準備的配置。man rsync.con去查相關參數。

4.根據rsyncd.conf的auth users配置賬戶,遠端連接配接的,并根據secrets file參數生成密碼檔案

echo "rsync_backup:oldboy">/etc/rsync.password

cat /etc/rsync.password

5.為密碼檔案配置全新

chmod 600 /etc/rsync.password

ls -l /etc/rsync.password

6.建立共享的目錄,并授權rsync服務管理

mkdir /backup -p

chown -R rsync.rsync /backup

如果沒有/backup目錄,就會chdir failed

7.啟動rsync服務并檢查

rsync --daemon

ps -ef|grep rsync|grep -v grep

lsof -i :873

8.加入開機自啟動

echo "/usr/bin/rsync --daemon" >>/etc/rc.local

tail -1 /etc/rc.local

(over)

排錯:

1.輸出

2.日志tail /var/log/rsync.log

本文轉自sandshell部落格51CTO部落格,原文連結http://blog.51cto.com/sandshell/1952198如需轉載請自行聯系原作者

sandshell