文件同步工具 rsync安全
rsync -av /etc/passwd /tmp/1.txt `-v 能夠查看過程` rsync -av /etc/passwd root@192.168.100.100:/tmp/1.txt
遠程同步服務器
本機 -av src源目錄 DEST 目標文件或者目錄 遠程 -av SRC user@ip:DEST 反遠程 -av user@ip:SRC DEST -av SRC user@ip::DEST -av user@ip::SRC DEST
`-a :包含-rtplgoD選擇 `-r :同步目錄時要加上,相似cp時的-r 選項 `-v :同步時顯示一些信息,讓咱們知道同步的過程 `-l :保留軟鏈接 `-L :加上該選項後,同步軟鏈接是會把源文件給同步 `-p :保持文件的權限屬性 prem權限 `-o :保持文件的屬主 `-g :保持文件的屬組 `-D :保持設備文件信息 `-t :保持文件的時間屬性 `- -delte :刪除DEST中SRC沒有的文件 (保持如出一轍的) `- -exclude :過濾指定文件,如--exclude "logs"會把文件名包含logs的文件或者目錄過濾掉,不一樣步 (支持通配符) `-P :顯示同步進程,好比速率,比-v更加詳細 `-u :加上選項後,若是DEST中文件比SRC新,則不一樣步 `-z :傳輸時壓縮 `-e :指定端口 -e "ssh -p 22" `- -port 8730 :指定端口 #rsync --port 8730 192.168.100.100:: rsync 經過ssh 方式同步傳輸 rsync -av root/test/ 192.168.100.100:/tmp/test2/ rsync -av -e "ssh -p 22" test1/192.168.100.100:/tmp/1
rsync 經過服務的方式同步
要編輯配置文件 /etc/rsyncd.conf
啓動服務 rsync --daemonssh
格式: rsync -av test1/192.168.100.100::module(模塊名)/dir(目錄)/
檢查端口是否通的命令ide
telnet 192.168.100.100 873
兩個::冒號就是使用的rsyncd 服務 工具
port=873 #默認端口873 log file=/var/log/rsync.log #日誌文件 pid file=/var/run/rsyncd.pid #制定pid 文件 address=192.168.100.100 #指定啓動rsyncd服務的IP [test] #模塊名字 path=/tmp/rsync #指定數據存放的路徑。 use chroot=true #安全模式,建議設置成false, max connections=4 #指定最大的鏈接數,默認是0,即沒有限制 read only=no #安全選項,若是爲true,則不能上傳到該模塊指定的路徑下。 list =true #查看服務器上可用模塊,設定爲true則列出,false則隱藏 uid=root #指定傳輸文件時以哪一個用戶/組的身份傳輸。 gid=root auth users=test #指定傳輸時要使用的用戶名,能夠是nobody,最小權限用戶 secrets file =/etc/rsyncd.passwd #鏈接須要輸入密碼 hosts allow=192.168.100.102 #定義容許鏈接白名單,加空格或者/24
port: 指定在哪一個端口啓動 rsyncd服務,默認是873端口。 log file: 指定日誌文件。 pid file: 指定pid文件,這個文件的做用涉及服務的啓動、停等進程管理操做。 address: 指定啓動rsyncd服務的IP。 假如你的機器有多個IP就能夠指定由其中一個啓動rsy.ncd服務,若是不指定該參數,默認是在所有IP上啓動。 [ ... ]: 指定模塊名,裏面內容自定義。 path : 指定數據存放的路徑。 use chroot = true | false: 表示在傳輸文件前首先chroot到path參數所指定的目錄下。 這樣作的緣由是實現額外的安全防禦,但缺點是須要以roots權限,而且不能備份指向外部的符號鏈接所指向的目錄文件。 默認狀況下chroot值爲true,若是你的數據當中有軟鏈接文件,建議設置成false。 max connections: 指定最大的鏈接數,默認是0,即沒有限制。 read only ture | false: 若是爲true,則不能上傳到該模塊指定的路徑下。 list: 表示當用戶查詢該服務器上的可用模塊時,該模塊是否被列出,設定爲true則列出,false則隱藏。 #rsync - -port 8730 192.168.100.100:: true 列出 uid / gid : 指定傳輸文件時以哪一個用戶/組的身份傳輸。 auth users: 指定傳輸時要使用的用戶名。 secrets file: 指定密碼文件,該參數連同上面的參數若是不指定,則不使用密碼驗證。 注意該密碼文件的權限必定要是600。格式: 用戶名:密碼 hosts allow: 表示被容許鏈接該模塊的主機,能夠是IP或者網段,若是是多個,中間用空格隔開。 當設置了auth users和secrets file後,客戶端連服務端也須要用用戶名密碼了。 若想在命令行中帶上密碼,能夠設定一個密碼文件。 rsync-avL test@192.168.133.130::test/test /tmp/test8/ - -password-file=/etc/pass。 其中/etc/pass內容就是一個密碼,權限要改成600
rsync - -daemon
關閉服務ui
killall rsync
##########killall工具要yum安裝psmisc命令行
secrets file = 指定密碼文件,該參數連同上面的參數若是不指定,則不使用密碼驗證。 注意該密碼文件的權限必定要是600。格式: 用戶名:密碼 `- -password-file=/密碼路徑 #rsync -avP - -port 8730 - -password-file=/root/passwd /etc/passwd test@192.168.100.100::huidou/3ppp
rsync 客戶端
直接寫密碼
rsync 服務端 密碼
用戶名:密碼
權限設置都爲 chmod 600 flie日誌