5月15日

10.32-10.33 rsync經過服務同步linux


. rsync經過服務同步vim

在遠程主機上創建一個rsync的服務器,在服務器上配置好rsync的各類應用,而後將本機做爲rsync的一個客戶端鏈接遠程的rsync服務器。安全

實驗測試:服務器

1.1 找兩臺主機,一個IP是172.16.111.100,另外一個是172.16.111.110。網絡

1.2在100主機上創建並配置rsync的配置文件/etc/rsyncd.conf,以下所示less

命令:vi /etc/rsyncd.conf ssh

blob.png 

啓動服務: rsync --daemon ide

blob.png 

2.在172.16.111.110機子上操做(在客戶端機器上操做,這個是從客戶端將文件推送到服務端)工具

命令:rsync -avP /tmp/1.txt 172.16.111.100::test/momo.txt 測試

blob.png 

[root@localhost ~]# telnet 172.16.111.110 873 //檢測端口是否通訊

[root@localhost ~]# iptables -nvL //查看iptables Chain INPUT (policy ACCEPT 0 packets, 0 bytes)  pkts bytes target     prot opt in     out     source               destination          10951   16M ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            ctstate RELATED,ESTABLISHED     4   286 ACCEPT     all  --  lo     *       0.0.0.0/0            0.0.0.0/0               15   868 INPUT_direct  all  --  *      *       0.0.0.0/0            0.0.0.0/0               15   868 INPUT_ZONES_SOURCE  all  --  *      *       0.0.0.0/0            0.0.0.0/0               15   868 INPUT_ZONES  all  --  *      *       0.0.0.0/0            0.0.0.0/0                0     0 DROP       all  --  *      *       0.0.0.0/0            0.0.0.0/0            ctstate INVALID     0     0 REJECT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            reject-with icmp-host-prohibited

 [root@localhost ~]# systemctl stop firewalld //關閉firewalld服務 

[root@localhost ~]# iptables -nvL //查看服務已關閉 

Chain INPUT (policy ACCEPT 0 packets, 0 bytes)  pkts bytes target     prot opt in     out     source               destination          Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)  pkts bytes target     prot opt in     out     source               destination          Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)  pkts bytes target     prot opt in     out     source               destination   

2.1 172.16.111.110機子上操做(在客戶端機器上操做,這個是從服務端拉取文件到客戶端) 

命令:rsync -avP 172.16.111.100::test/momo.txt /tmp/2.txt 

blob.png 

 

三、rsyncd.conf 樣例:

port=873 

log file=/var/log/rsync.log 

pid file=/var/run/rsyncd.pid 

address=172.16.111.100

[test] 

path=/tmp/rsync 

use chroot=true 

max connections=4 

read only=no 

list=true 

uid=root 

gid=root 

auth users=test 

secrets file=/etc/rsyncd.passwd 

hosts allow=172.16.111.110

上面的 port,log file,pid file,address都屬於全局配置。[]內的test是模塊名,如下屬於模塊配置。一個配置文件能夠有多個不一樣模塊

rsyncd.conf配置文件詳解

port:指定在哪一個端口啓動rsyncd服務,默認是873端口。

log file:指定日誌文件。

pid file:指定pid文件,這個文件的做用涉及服務的啓動、中止等進程管理操做。

address:指定啓動rsyncd服務的IP。假如你的機器有多個IP,就能夠指定由其中一個啓動rsyncd服務,若是不指定該參數,默認是在所有IP上啓動。

[]:指定模塊名,裏面內容自定義。

path:指定數據存放的路徑。

use chroot true|false:表示在傳輸文件前首先chroot到path參數所指定的目錄下。這樣作的緣由是實現額外的安全防禦,但缺點是須要以roots權限,而且不能備份指向外部的符號鏈接所指向的目錄文件。默認狀況下chroot值爲true,若是你的數據當中有軟鏈接文件,建議你設置成false。

max connections:指定最大的鏈接數,默認是0,即沒有限制。

read only ture|false:若是爲true,則不能上傳到該模塊指定的路徑下。

list:表示當用戶查詢該服務器上的可用模塊時,該模塊是否被列出,設定爲true則列出,false則隱藏。

uid/gid:指定傳輸文件時以哪一個用戶/組的身份傳輸。

auth users:指定傳輸時要使用的用戶名。

secrets file:指定密碼文件,該參數連同上面的參數若是不指定,則不使用密碼驗證。注意該密碼文件的權限必定要是600。格式:用戶名:密碼

hosts allow:表示被容許鏈接該模塊的主機,能夠是IP或者網段,若是是多個,中間用空格隔開。

例如:當設置了auth users和secrets file後,客戶端連服務端也須要用用戶名密碼了,若想在命令行中帶上密碼,能夠設定一個密碼文件:

rsync -avL test@192.168.133.130::test/test1/ /tmp/test8/ –password-file=/etc/pass

其中/etc/pass內容就是一個密碼,權限要改成600

 10.34 linux系統日誌


 1、linux系統日誌

日誌記錄了系統天天發生的各類各樣的事情,好比監測系統情況、排查系統故障等,你能夠經過日誌來檢查錯誤發生的緣由,或者受到***時***留下的痕跡。日誌的主要功能是審計和監測,還能夠實時的監測系統狀態,監測和追蹤侵入者等。

 /var/log/messages 核心的系統日誌,包含了系統啓動時的引導消息,以及系統運行時的其餘狀態信息,I/0錯誤、網絡錯誤和其餘系統錯誤都會記錄到這個文件中來。一般狀況下,/var/log/messages是作故障診斷時首先要查看的文件。

1.1 日誌切割配置文件

系統上有不少服務,若是都把服務日誌放到這個文件/var/log/messages裏那豈不是會很大,因此係統有一個日誌輪詢的機制,每星期切換一個日誌,切換後的日誌名字相似於messages-20171206,會存放在/var/log/目錄下面,連同messages一共有5個這樣的日誌文件,這裏的20171206就是日期,它表示日誌切割的年月日。它的配置文件是/etc/logrotate.conf(若是沒有特殊要求,請不要修改這個配置文件),示例以下:

blob.png 

備註:/var/log/messages是由rsyslogd這個守護進程產生的,若是中止這個服務則系統不會產生/var/log/messages,因此這個服務不要中止。rsyslogd服務的配置文件爲/etc/rsyslog,conf,這個文件定義了日誌的級別,若沒有特殊需求,這個配置文件是不須要修改的

參考文章:http://www.javashuo.com/article/p-tauwscem-r.html

1.2 dmesg

dmesg 這個命令顯示系統的啓動信息,在開機時啓動,並存儲在內存中。若是某個硬件有問題(如網卡),能夠在這裏看到,示例以下

命令:dmesg | head    (dmesg -c 能夠清空掉 )

blob.png 

1.3 last命令 來查看正確的登陸歷史,包括reboot。調用的文件/var/log/wtmp 

blob.png 

last命令實際讀取的是/var/log/wtmp文件,但這個文件不能直接用cat,vi,vim,head,tail查看。

1.4 lastb命令,查看登陸失敗的用戶,對應的文件時 /var/log/btmp 

blob.png 

1.5 /var/log/dmesg 系統啓動的日誌文件 

blob.png 

1.6 安全日誌   /var/log/secure

/var/log/secure記錄的也是和登陸有關的信息,如ssh登陸失敗的信息在這裏均可以記錄到。

命令:less /var/log/secure

blob.png 

 


10.35 screen工具


1、screen工具

有時咱們要執行一個命令或者腳本,須要幾小時甚至幾天,在這個過程當中,若是中途斷網或出現其餘意外狀況怎麼辦?如下兩種方法就是來避免這情況發生的。

1. nohup 命令

首先寫一個sleep.sh腳本,而後把它放到後臺執行,示例以下:

[root@gary-tao ~]# nohup /usr/local/sbin/sleep.sh &

上例中,直接在sleep.sh後面加&雖然能夠在後臺運行,可是當退出該終端時,這個腳本頗有可能也會退出,因此在前面加上nohup就沒有問題了,執行後在當前目錄下生成一個nohup的文件,它的做用就是防止進程意外中斷,而且會把輸出信息記錄到nohup文件中。

2. screen工具的使用

screen是一個虛擬終端,簡單來講,screen是一個能夠在多個進程之間多路複用一個物理終端的窗口管理器screen中有會話的概念,用戶能夠在一個screen會話中建立多個screen會話窗口,在每個screen窗口中就像操做一個真實的ssh鏈接窗口同樣。

2.1 首先 screen工具安裝  yum install -y screen

2.2 screen直接回車就進入了虛擬終端 

ctrl+a組合鍵再按d退出虛擬終端,但不是結束 

blob.png 

2.3 screen -ls 查看虛擬終端列表

blob.png 

2.4 screen -r id 進入指定的終端 

blob.png 

2.5 screen -S aming 給對應的虛擬終端命名

blob.png 

2.6 screen -r cfk 直接經過命名的名稱進入對應的虛擬終端

blob.png

相關文章
相關標籤/搜索