您好(hǎo),歡迎來(lái)到(dào)盤龍區華銘誠泰網絡工作室官 ✘★★方網站(zhàn)!ZJJCL.CN
新聞動态
您現(xiàn)在的(de)位置:首頁 > 技(jì)術(shù)文(wén)摘
Linux計(jì)劃任務與日(rì)志(zhì)管理(lǐ)
來(lái)源:創立工(gōng)作(z∞↕↑₩uò)室 作(zuò)者:馮軍 發布時(shí)間(jiān):2020↕↕σ-09-23 21:04:38 閱讀(dú) 1884 次
  • 計(jì)劃任務-at-cron-計(jì)劃任務使用(yòng)方法
  • 日(rì)志(zhì)的(de)種類和(hé)記錄方式-自(zì)γ'§定義ssh服務日(rì)志(zhì)類型₩↔和(hé)存儲位置
  • 實戰-日(rì)志(zhì)切割-搭建遠₽₽‌(yuǎn)程日(rì)志(zhì)收集服務器(qì)
  • 實戰-配置公司內(nèi)網服務器(qì)每天定時(​®&shí)自(zì)動開(kāi)關機(jī)

1、計(jì)劃任務-at-cron-計(jì)劃任 ‍務使用(yòng)方法

計(jì)劃任務的(de)安排方式分(fēn)為(wèi)兩種:&‌"Ω
一(yī)種是(shì)定時(shí)性的(de):也(y♠φ↔£ě)就(jiù)是(shì)例行(xíng)。就(ji££ù)是(shì)每隔一(yī)定的(de)周期就(jiù)要(yào)重複來(" ♥lái)做(zuò)這(zhè)個(gè)事(shì)情
一(yī)種是(shì)突發性的(de):就(jiù)是(shì)這(zh ∑è)次做(zuò)完了(le)這(zhè)個(gè)事(shì)情,下ε¶₽Ω(xià)次就(jiù)沒有(yǒu)了(le)。臨時(shí)決定,隻有∞↑↓→(yǒu)一(yī)次執行(xíng)

at和(hé)crontab這(zhè)兩個(gè)命令
at:可(kě)以處理(lǐ)僅執行(xíng)一(yī)次就(jiù)結束£δ↔的(de)命令
crontab:會(huì)把你(nǐ)指定的(de)工(gōng)作(z↑∞$πuò)或任務,比如(rú):腳本等,按照(z "hào)設定的(de)周期循環執行(xíng)

at命令使用(yòng)方法:
語法:at 時(shí)間(jiān)
服務名:atd
例1:查看(kàn)at服務狀态

[root@xuegod140 ~]# systemctl staε±tus atd #查看(kàn)服務狀态
[root@xuegod14←↓β0 ~]# systemctl enable atd #開(kāi)∑‌‍機(jī)啓動atd服務
[root@xuegod14™↓0 ~]# systemctl disable✘¶ Ω atd #開(kāi)機(jī)不(bù)啓動atd服務
[π≥≠δroot@xuegod140 ~]# systemctl start atd ÷α​#開(kāi)啓atd服務
[root@xuegod140€Ω← ~]# systemctl stop atd #☆φ關閉atd服務

centos6查看(kàn)開(kāi)機(jīλΩ★δ)啓動服務:

[root@xuegod140 ~]# chkconfig --list  ≈φ★| grep atd #7上(shàng)無法執行(xíng)

例2:使用(yòng)at創建任務計(jì)"¶♣δ劃

[root@xuegod140 ~]# at<★∑ 23:33 #23:33創建一(yī)個(gè)test目錄
at∑±↓ > mkdir /tmp/test
at>₹Ω<↕;
job 1 at Tue Apr 16 23:33:00♠↔↓≈ 2019
[root@xuegod140 ~]# at -l #查↕≈δ看(kàn)計(jì)劃任務,atq也(yě)可(kě)以查看(kàn)計('♣jì)劃任務
1 Tue Apr 16 ™​23:33:00 2019 a root
[root@xuegod1¥♣ $40 ~]# ls -ld /tmp/test/
d​×♥rwxr-xr-x 2 root root 6 Apr ↔₹16 23:33 /tmp/test/

注:任務執行(xíng)完了(le)後,會(huì)自(zì)動删除。

例3:at計(jì)劃任務的(de)特殊寫法

[root@xuegod140 ~]# at©‍  now +50min #當前時(shí)間(jiān)50分(fēn)鐘>↔(zhōng)以後執行(xíng)任務
[ro‍‌σot@xuegod140 ~]# at 20:00​γ  2019-4-17 #2019-4-1£‌♣≈7 20:00 執行(xíng)任務
[roo'≈ σt@xuegod140 ~]# at 6:00 +3day‍♣↔•s #三天以後的(de)6:00執行(xíng)任務

例4:at計(jì)劃任務的(de)目錄文(wén)件(jiàn)

[root@xuegod140 ~]# ls /var/s ↓®pool/at/a00002018b912b
/var/spool/at/a¶§•↓00002018b912b
[root@xuegod€☆®140 ~]# tail -3 !$
tail -5 /var/sp™εool/at/a00002018b912 ≥b
rm -rf /tmp/test
marcinD'‌<ELIMITER13ba1c4f
[root@xuegod140 ~]#₽λ< atq
2Wed Apr 17 00:43:00 2019 a r≈α•oot
[root@xuegod140 ~]# at -c 2 | tail>∑✘ -3
rm -rf /tmp/test
marcinDELIMIT••'¶ER13ba1c4f

注:兩種查看(kàn)計(jì)劃任務內(nèi)容的(deα↔)方式,一(yī)種通(tōng)過查看(kàn)a↔ ↕t的(de)文(wén)件(jiàn),一(yī)種at -c 任務号查看(§‍∏ kàn)
注:在xshell終端中,如(rú)果按下(xià)ctrl+∞→©s,會(huì)鎖定當前終端,無法使用(yòng);按下(xià)ctrl+q ♦接觸鎖定

例5:計(jì)劃任務的(de)删除
命令:atrm 任務編号

[root@xuegod140 ~]# atq
2 Wed ★ Apr 17 00:43:00 2019 a root
[root@xu"£'£egod140 ~]# atrm 2
[root@xueφ÷≈'god140 ~]# atq

2、crontab定時(shí)任務使用(yòng)方法

crontab file是(shì)用(yòng)← 來(lái)定義定時(shí)任務條目的(de)文(wén)件≥∞'(jiàn),在Linux中,這(zhè)個(gè)文(wén×↔β®)件(jiàn)有(yǒu)存在幾個(gè)地(dì)方
系統執行(xíng)的(de)工(gōng)作(zuò) upd&÷‍atedb、whatis、/etc/cron.d/*
用(yòng)戶自(zì)己定義的(de)任務文(wén)件∞ '←(jiàn) /var/spool/cron/USERNAME

cron命令參數(shù):

  • crontab -u 用(yòng)戶名 #指定XX用(y₽©òng)戶的(de)cron服務
  • crontab -l #列出當前用(yò£↓ng)戶下(xià)的(de)cron的(de)詳$↑≈÷細內(nèi)容
  • crontab -u zx -l #列出zx用(yòng)戶下(xφ✔φ"ià)的(de)cron的(de)詳細內(→βεnèi)容
  • crontab -r #删除所有(yǒu)用(yòng)戶的(de≥☆ε)cron內(nèi)容,普通(tōng)用(yòng)戶φ>執行(xíng),隻删除自(zì)己的(de)cron內(nè'✘​i)容
  • crontab -r -u zx #删除zx用(yòng)戶的(de♣♠>₽)cron內(nèi)容
  • crontab -e #編輯cron服務

cron -e 編輯時(shí)的(de)語法:
分(fēn)為(wèi)7個(gè)字段:分(fēn) 時(shí) λ₽♦<日(rì) 月(yuè) 周 用(yòng)戶 命令

  • 分(fēn):0-59取值
  • 時(shí):0-23取值,24點即使0點
  • 日(rì):1-31取值
  • 月(yuè):1-12取值,或者直接月(yuè)份的(de)英文(γεwén)單詞
  • 周:0-6取值,0或者7表示星期天

特殊符号的(de)含義:

  • *:任意/每
  • /:指定時(shí)間(jiān)的(de)間(jiān)隔頻¥δ(pín)率;*/10=每隔十分(fēn)鐘(zhōng)(位于分(fēn)字​¥→段);0-23/2=每隔兩小(xiǎo)時(shí)
  • -:代表從(cóng)某個(gè)數(shù)字到(dào)某個(gè$γλ )數(shù)字:8-17=8号到(dào)↕↔Ω<17号(日(rì)字段)
  • ,:分(fēn)開(kāi)幾個(gè)離(lí)散的(de)數(shù≥∑÷♥)字:6,10-13,20=6号,10号到(dào)13号,20号(日(rì)δ↑λ字段)

例1:cron服務的(de)管理(lǐ)

[root@xuegod140 ~]# systemctl status cr☆ ond
[root@xuegod140 ~₽ππ]# systemctl start crond
[roo♣≤t@xuegod140 ~]# systemctl stop↔≈γ crond
[root@xuegod140 ~]# systemc♥≤★tl enable crond
[root@xuegodπ₹→ 140 ~]# systemctl di≤₹sable crond

例2:每天淩晨2點1分(fēn)開(kāi)始備♣÷份數(shù)據

[root@xuegod140 ~]# cron$<€tab -e
no crontab for root -♣×£ using an empty one
crontab: insta★<lling new crontab
[root@xuegod140 ~÷®÷]# crontab -l
1 2 * * *​π∞ tar cf /opt/grub.tar /boot/grub/

例3:以zx用(yòng)戶,創建一(yī)個(gè)計∑•$(jì)劃任務

[root@xuegod140 ~]# crontab -u zx  ≥-e
no crontab for zx - using an empty ≈∏♥one
crontab: installing ne♠​≠εw crontab
[root@xuegod∏✔δ140 ~]# crontab -l
1 2 * * * tar cf /o •♥pt/grub.tar /boot/grub/
[root@xuego​☆♣"d140 ~]# crontab -u zx -l #加上(shàngφ>)-u可(kě)以查看(kàn)單個(gè)用(≈Ωσ♥yòng)戶的(de)計(jì)劃任務
1 * * * *Ω≈$ echo “hello word”&  > /dev/null

例4:查看(kàn)所有(yǒu)的(de)計(jì)劃任務

-rw------- 1 root root 43 ≥ λApr 17 00:22 root
-§✘ rw------- 1 root root 41 Apr 17 0$'0:25 zx
[root@xuegod140 ~]# cat !$/±≥≈root
cat /var/spool/cron//root
1 2 * >λ÷♦* * tar cf /opt/grub.tar /b↓​↕ oot/grub/
[root@xuegod140 ~]# cat"×∞‌ /var/spool/cron/zx
1 * * * * echo ↔☆α“hello word” > /dev/nul✔≠≥₽l

例5:每月(yuè)的(de)1,10,22÷α>号4:45分(fēn)在/tmp/創建一(yī)個λ'(gè)a.txt

[root@xuegod140 ~]# crontab ★✘ -e
crontab: installing new crontab
[r®​→​oot@xuegod140 ~]# cron©φ"tab -l
45 4 1,10,22"← * * touch /tmp/a.txt

例6:每月(yuè)的(de)1到(dào)10号的(de)4:45,輸入§™hello word

[root@xuegod140 ~]# crontab -e
croΩσntab: installing new cr ∑>$ontab
[root@xuegod1βγ☆£40 ~]# crontab -l
45 4 1 ♦<₹-10 * * echo “hello word” §β≠

例7:每隔2天的(de)8-11點的(de)3分(fēn)和(hé)©εδ15分(fēn),創建一(yī)個(gè)/☆ tmp/b.txt

[root@xuegod140 ~]# crontab ✘>"-e
crontab: installing ₩€new crontab
[root@xuegod140 ~]# cr÷✘§ontab -l
3,15 8-11 */2 * * touch /tmp✘←/b.txt

例8:周一(yī)到(dào)周五的(deφ≈  )21:15,創建/tmp/d.txt

[root@xuegod140 ~]# crontab -e
crontab: installing new cronta®φb
[root@xuegod140 ~]# crontab -l
15 21 * * 1-5 touch /t€¥♠♥mp/d.txt

例9:删除cron計(jì)劃任務

[root@xuegod140 ~]# crontab -l
1 2 * * * tar cf /opt/grub.tar ↑✔→®/boot/grub/
45 4 1,10,22 * * touch /tmp/a.txt
45 4 1-10 * * echo “h₩±§ ello word”
3,15 8-11 */2 * * touch /t σπ↓mp/b.txt
15 21 * * 1-5 touch /tmp/d.txt
[root@xuegod140 ~]# cr>"ontab -r
[root@xuegod140 ~]# crontab -l
no crontab for root

注:cron計(jì)劃任務中如(rú)果出現(xiàn)%号,↓♠必須加轉義符,不(bù)然表示換行(xíng)意思∏£₽

例10:crontab不(bù)支持每秒(miǎo)。每1 γ♦♣0秒(miǎo)執行(xíng)一(yī)次腳本

[root@xuegod140 ~]# crontab -e
crontab: installing new crontab
You have new mail in /var/spool/mai§λl/root
[root@xuegod140 ~]# crontab -l

          • sleep 10;echo $(date +" ≤δ%F %T") >> a.txt
          • sleep 20;echo $(date♥₽ © +"%F %T") >> a.txt # 黑(hēi)點♣&實際是(shì)*
          • sleep 30;echo $(date +"%F %T¥'₽‌") >> a.txt
          • sleep 40;echo $(date +"'‌$δ%F %T") >> a.txt
          • sleep 50;echo $(date +"%F %T") >&'λαgt; a.txt

[root@xuegod140 ~]# cσ±<at a.txt
2019-04-17 01:06:11
2019-04-17 01:06:21
2019-04-17 01:06:31
2019-04-17 01:06:41
2019-04-17 01:06:51

3、系統級别的(de)計(jì)劃任務

系統任務調度配置文(wén)件(jiàn)

[root@xuegod140 ~]# ll /et&∑≤δc/crontab
-rw-r–r--. 1 root root♦≤γ 451 Jun 10 2014 /etc/cront→₩ab
[root@xuegod140 ~]# cat /etc/cront ↔↔ab
SHELL=/bin/bash #指定操作(zuò)系統使用(yòng)哪個>™♥♥(gè)shell
PATH=/sbin:/bin:/usr/sbi≠∞n:/usr/bin #系統執行(xíng)命令的(deππ)搜索路(lù)徑
MAILTO=root #将執行(xín✘↕→g)任務的(de)信息通(tōng)過mail發送給↑'α₹XX用(yòng)戶
For details see man 4 crontabs
Example of job definition:
.---------------- minute (0 - 5↓☆9)
| .------------- hour (0 - 23)
| | .---------- day of month ‍÷'(1 - 31)
| | | .------- month (1 φδ- 12) OR jan,feb,mar,apr &helli✘¶₹p;
| | | | .---- day of week (0 - 6) (•↑ ₽Sunday=0 or 7) OR sun∏™,mon,tue,wed,thu,fri,sat
| | | | |

          • user-name command to be executed # 黑(hπ§γēi)點實際是(shì)*

我們也(yě)可(kě)以直接在配置文(w¶₽←én)件(jiàn)中添加計(jì)劃任務

/etc/con.d/目錄下(xià)文(wλ$§én)件(jiàn)說(shuō)明(míng):
cron.deny #控制(zhì)用(yòng)♥δ€↔戶是(shì)否能(néng)做(zuò)計(jì)劃任務的(de)±"∞文(wén)件(jiàn);
cron.monthly #每月(yuè)執行(xíng)的(de)腳本;±​£₹
cron.weekly #每周執行(xíng)的(de)腳本;
cron.daily #每天執行(xíng)的(de)腳γ'♣↓本;
cron.hourly #每小(xiǎo)時(shí)≥π執行(xíng)的(de)腳本;
crontab #主配置文(wén)件(jiàn)

4、案例要(yào)求:

每天2:00備份/etc/目錄到(dào)/tmp/backup/目錄↑♥¶®下(xià);
将備份命令寫入一(yī)個(gè)腳本中
每天備份文(wén)件(jiàn)名要(yào)求格&✔§≥式:2017-08-19_etc.tar.gz
在執行(xíng)計(jì)劃任務時(shí),不(bù"₽¥γ)要(yào)輸出任務信息
存放(fàng)備份內(nèi)容的(de)目錄要(yào)<®♦求隻保留三天的(de)數(shù)據
實驗步驟:
創建備份文(wén)件(jiàn)的(de)存放(fàng)目錄:

[root@xuegod140 ~]# mkdir /tmp/bπ✔©ackup

編寫執行(xíng)腳本,因為(wèi)需要(yào)備份/etc目錄 ​,所以需要(yào)使用(yòng)到(dào)tar命令;
備份的(de)文(wén)件(jiàn)&'©隻保留三天,所以需要(yào)删除三天以前的(de)數(shβ★↕γù)據,使用(yòng)find命令
将上(shàng)述的(de)兩條命令,寫到(dào)σ€&腳本文(wén)件(jiàn)

[root@xuegod140 ~]# σ♦vim back.sh
[root@xuegod140 ~]# cat back.sh
#!/bin/bash
find /tmp/backup/ -name &ldq→∞Ωuo;.tar.gz" -mtime +3 -delete
#find /tmp/backup/ -name "
.tar.gz” -mtime +3 -ex∞♠←ec rm -rf {} ;
#find /tmp/backup/ -name &ldquo ✘ ;*.tar.gz” -mtime +3 |‍δλ xagre rm -rf
tar zcvf /tmp/backup/date +%F_etc.tar.gz /etc

編寫crontab任務,按照(zhào)★≠每天2:00備份,設置計(jì)劃任務

[root@xuegod140 ~]# cron¶‍§tab -e
crontab: installing n↔₩σ×ew crontab
[root@xuegod140 ~]# crontab  ≠• -l #因為(wèi)需要(yào)立即看(kàn)到π¶λ(dào)實驗效果,所以時(shí)間(jiān)不(bù)同
39 20 * * * bash /root/&≥β‍back.sh &> /dev/null
[root@xuegod140 ~]# l₹π₽ s /tmp/backup/
2019-04-17_etc.tar.g≥πz

這(zhè)裡(lǐ)為(wèi)了(le)能(néng)看(kàn)到(d£β ào)find的(de)命令的(de)效果,我們先修改日(rì)期後,♥↕®手動執行(xíng)腳本文(wén)件(jiàn)

[root@xuegod140 ~]# date -s ₹ד2019-04-18”
[root@xuegod140 ~]# dat¥♠e
Thu Apr 18 00:05:56 CST ""§2019
[root@xuegod140 ~]# bash&  nbsp;back.sh
[root@xuegod140 ~]# date ≠σ♦σ-s “2019-04-19”
Fri Apr 19 00:00:00 CST ☆♣2019
[root@xuegod140 ~]# bash back.sh
[root@xuegod140 ~]# ™σ' date -s “2019-04-20”
Sat Apr 20 00:00:00 CST 2019
[root@xuegod140 ~]# date -s &ldquo‌↓"♠;2019-04-21”
Sun Apr 21 00:00:00 CST 2019
[root@xuegod140 ~]# bash ​±♠≤;back.sh
[root@xuegod140 ~]# ll ∏γ/tmp/backup/
total 52520
-rw-r–r-- 1 root root ®≥λ10755840 Apr 19 00:00 2019-04₹§★§-19_etc.tar.gz
-rw-r–r-- 1 root≤€δ root 10755840 Apr 20 00:00 2019-04-₽÷"‌20_etc.tar.gz
-rw-r–r-- 1 root root 10755π♦↑840 Apr 21 00:00 2019-04-21_etc.tar.™♣÷gz

注:-mtime +3 :不(bù)包含當前的(de)天數(shù),≤¶ε往前數(shù)三天

5、日(rì)志(zhì)的(de)種類

在centos7中,系統日(rì)志(zhì)消息有(yǒu)兩個(‌±₩gè)服務負責處理(lǐ):systemd-journalΩ≈δd和(hé)rsyslog
常見(jiàn)日(rì)志(zhì)文(wén)件(¥ ∏✘jiàn)概述:/var/log目錄保管由rsys♥δ€‌log維護的(de),裡(lǐ)面存放(↓♣βfàng)的(de)一(yī)些(xiē)特定于系統和(hé)服務的(↔•de)日(rì)志(zhì)文(wén)件(jiàn)
日(rì)志(zhì)文(wén)件(jiàn) 用(♣ yòng)途
/var/log/message 大(dà)₹ε€多(duō)數(shù)系統日(rì)志(zhì)消息記錄在此處。有(yǒ∞↑ u)也(yě)例外(wài)的(de):如(rú)與身(shē↑✘©♠n)份驗證,電(diàn)子(zǐ)郵件(jiàn)"‍✔處理(lǐ)相(xiàng)關的(de)定期作(zuò)業(yè)任✘'​務等
/var/log/secure 安全和(hé)身(shēn)份×<​¥驗證相(xiàng)關的(de)消息和(hé)登錄失敗的(de)日¥∏(rì)志(zhì)文(wén)件(jiàn)。 ssh遠(yuǎn)程連接産₽↓♦<生(shēng)的(de)日(rì)志(zhì)
/var/log/maillog 與郵件(ji←ε©∞àn)服務器(qì)相(xiàng)關的★♣¥£(de)消息日(rì)志(zhì)文(wén)件(jiàn)
/var/log/cron 與定期執行(xíng)任務相('λε↔xiàng)關的(de)日(rì)志(zhì)$→文(wén)件(jiàn)
/var/log/boot.log 與系統啓動相(xiàng)關的(££₽↑de)消息記錄
/var/log/dmesg 與系統啓動相(xiàng)關的(de)消息記εγ​↓錄

例1:查看(kàn)那(nà)個(gè)IP地(dì)址經₽™£常暴力破解系統用(yòng)戶密碼

[root@xuegod140 log]# ssh ≤®‍☆root@192.168.1.140 #先故意輸錯(cuò)3次€σ∑φ密碼
[root@xuegod140 log]# grep -i fa¥ iled /var/log/secure #-i忽略大(dà)小(‍€÷xiǎo)寫,查看(kàn)登錄失敗的(de)信息
Apr 17 01:08:01 xuego±±≠‍d140 CROND[5527]: pam_syst"♠ ↔emd(crond:session): Failed to release s 'ession: Interrupted system caγ∞✘ ll
Apr 21 20:25:01 xuego​§d140 sshd[1920]: Faile↑©"φd password for root fr¥φ≈om 192.168.1.140 port &"≤43712 ssh2
Apr 21 20:25:04 xuegod140 sshd[1920]: F'™♠∏ailed password for root from 192.168.1.←☆140 port 43712 ssh2
Apr 21 20:25:07 xuegod140 sshd[1920]:₹₽ § Failed password for ro₽Ωot from 192.168.1.140 pσε★ ort 43712 ssh2
[root@xuegod140 log]# grep -i failed≥φ /var/log/secure | awk ‘{pr'> &int $11}’ #打印第11列↑σ內(nèi)容
192.168.1.140
192.168.1.140
192.168.1.140
[root@xuegod140 log]# grep -i'☆≠ failed /var/log/secure | awk &lsquo©";{print $11}’| uniq -c #uniq 去 £(qù)除重複項,-c 統計(jì)個(♦±≠gè)數(shù)
3 192.168.1.140

例2:/var/log/wtmp文(wén)件$£&™(jiàn)作(zuò)用(yòng)
wtmp是(shì)一(yī)個(gè)二進制(zhì)文(wén)件(j>β☆±iàn),記錄每個(gè)用(yòng)戶登錄ε☆☆次數(shù)和(hé)持續時(shí)間(jiān)等信息

[root@xuegod140 log]# last
root pts/0 192.168.1.188 Sun Apr 21 ☆​★20:15 still logged in
#登錄用(yòng)戶 虛拟終端 登錄終端的(de)IP 登錄日π↓(rì)志(zhì) 仍然登錄中
root pts/1 192.168.1.188 Wed Apr 17 20:≠±←23 - down (2+03:52)

可(kě)以使用(yòng)last命令輸入wtmp中的(de)內(¥φ•$nèi)容,last 顯示到(dào)目 π前為(wèi)止,成功登錄系統的(de)記錄
或者:

[root@xuegod140 log]# last -f /≤Ωvar/log/wtmp
root pts/0 192.168.1.1♣>÷88 Sun Apr 21 20:15 sσ>™till logged in
reboot system boot 3.10.0-862.el7.x♣γσ Wed May 22 11:29 - 20:36 (10196&‍+10:07

例3:/var/log/btmp文(wén)件(jiàn)作(z★ uò)用(yòng)
查看(kàn)暴力破解系統用(yòng)戶;b≥ ∏tmp文(wén)件(jiàn)記錄錯(cuò)誤登錄系統的(de)日(rΩ£ì)志(zhì),如(rú)果發現(xiàn)此文(wén)件(jiàn®​Ω)大(dà)于1M,就(jiù)就(jiù)說(shuō)明(míng)有™ (yǒu)很(hěn)多(duō)人(rén)在暴力破σφ解ssh服務,此日(rì)志(zhì)需要(yào)用(y♠✔≤∏òng)lastb命令查看(kàn)

[root@xuegod140 log]# lastb #>Ω可(kě)以看(kàn)到(dào)剛剛登錄失敗的(de)三次記錄
root ssh:notty 192.168.1.140 Sun Apr ‌σ21 20:25 - 20:25 (00:00)
root ssh:notty 192.168.1.140 Sun Ap∞←★r 21 20:25 - 20:25 (00:♣§₩00)
root ssh:notty 192.168.1.140 S∞Ωun Apr 21 20:25 - 20:25 (00:00)
[root@xuegod140 log]# ll -γ‍α£h btmp #此文(wén)件(jiàn)大(dà)于1M✔≈,就(jiù)說(shuō)明(míng)有(yǒu)人(rén≠♣)暴力破解
-rw-------. 1 root utmp 1.5K Apr 2↑∏1 20:25 btmp

例4:btmp文(wén)件(jiàn)信息過多(∑↑duō)時(shí),我們需要(yào)查看(kàn)某₹•☆♥個(gè)IP地(dì)址的(de)暴力破解次數(♦✘∏shù)

[root@xuegod140 log]# lastb | aφ₽™wk ‘{print $3}’ |₩∑‍÷sort -n|uniq -c #查看(kàn§ ×)所有(yǒu)登錄失敗的(de)IP地(dì)址
3 192.168.1.140
或者
[root@xuegod140 log]#©Ωπ lastb | awk ‘{print $3}’ |™★  grep 192.168.1.140 | ←₹wc -l #查看(kàn)某個(gè)IP地(dì)址
3

例5:清空(kōng)日(rì)志(zhì)
方法1:

[root@xuegod140 log]# &ε≤•gt; /var/log/secure #× 使用(yòng)重定向清空(kōng)日(rì)志(zhì)文λπ∞π(wén)件(jiàn)

方法二:

[root@xuegod140 log]# rm -rf /var↔>±/log/btmp && touch /var/logσ§×/btmp #先删除後創建

上(shàng)述兩種方法,建議(yì)使用(yòng)第一(yī)種,使φ♥₩↓用(yòng)方法二,新創建的(de)文(wén)件(jiàn)會(hφ∞ uì)重新生(shēng)成inode号¥λγ¥,服務使用(yòng)的(de)還(hái)∑×€是(shì)舊(jiù)的(de)inode号和(hé)文(wén)件(jα™iàn)描述符,需要(yào)手動重啓服務加載新的(de)inodeε₽α<号才生(shēng)效。
方法一(yī),不(bù)改變文(wén)件₩δπ(jiàn)的(de)inode和(hé)描述符信息。δ¶

5、日(rì)志(zhì)的(de)記錄方式

分(fēn)類和(hé)級别
日(rì)志(zhì)的(de)分(fēn)類:
daemon 後台進程相(xiàng)關
kern 內(nèi)核産生(shēng)的(de)信息
lpr 打印系統産生(shēng)的(de)
authpriv 安全認證相(xiàng)關
cron 計(jì)劃任務相(xiàngαα)關
mail 郵件(jiàn)相(xiàng)關
syslog 日(rì)志(zhì)服務本身(shēn)的(λ​‍★de)
news 新聞系統
local0-7 自(zì)定義的(de)日(rì)志(•₩←δzhì)設備
local0-7 8個(gè)系統保留的(de)類,供其它的(de)程序使用(β‍πyòng)或者是(shì)用(yòng)戶自(zì✔∑‍•)定義

日(rì)志(zhì)的(de)級别
從(cóng)輕>>>重

6、rsyslog日(rì)志(zhì)服務

rhel5 服務名稱syslog 配置文(wén)件(jiàn) /etc/sγ≥yslog.conf
rhel6/7 服務名稱rsyslog 配置文(wén)件∞©​↕(jiàn)/etc/rsyslog.conf
查看(kàn)配置文(wén)件(jià‌<n)信息:

[root@xuegod140 ~]# grep -v “#|$” /etc/rsyslo♦±'g.conf
$ModLoad imuxsock # provides supp ♦ort for local system l♥™♦φogging (e.g. via logger command)
$ModLoad imjournal # provides acc↕☆ess to the systemd j→<™♥ournal
$WorkDirectory /var/lib/rsyslog
$ActionFileDefaultTemplatφ©e RSYSLOG_TraditionalFileFormat
$IncludeConfig /etc/rsyslog.d/.conf
$OmitLocalLogging on↓ ₽₹
$IMJournalStateFile imjournal.stat♦₩βe
.info;mail.none;auth×£priv.none;cron.none /var/€<log/messages
authpriv.
 /var/log/secure
mail.
 -/var/log/maillog
cron.* /var/log/cron
.emerg :omusrmsg:
uucp,news.crit /var/log/spooler
local7.* /var/log/boot.log

注釋:
#UDPServerRun 514 #允許 514 端口接收使用(yò±>ng) UDP 協議(yì)轉發過來(lái)的(de)日(rì)志(z&φ‍∞hì)
#InputTCPServerRun 514 #允許 5→₩π14 端口接收使用(yòng) TCP 協議(yì)轉發過來(lái)π✔∏的(de)日(rì)志(zhì)

例:kern.* /dev/console #所有(yǒu)≠↓÷內(nèi)核級别的(de)日(rì)志(zhì)存放(fàng)到←"επ(dào)/dev/console
.info;mail.none #所有(yǒu)類型的(de)iγ&÷nfo級别,除mail類型外(wài)
authpriv.
 #所有(yǒu)認證級别的(de)日(rì)λδ<β志(zhì)存放(fàng)到(dào) /var/log/secur≤&✘e
cron.* #計(jì)劃任務類型的(de)所有(yǒu)級别存放(fà★↑ε∞ng)到(dào) /var/log/cron$☆↕
.emerg #所有(yǒu)類型的(de)緊急級别,存放↑★♥(fàng)到(dào) :omusrmsg:
local7.* #local7類型的(d♣€≤¶e)所有(yǒu)級别,存放(fàng)到(dào) /var/log/b★÷☆↕oot.log
注:
mail.* -/var/log/maillog
“-”:郵件(jiàn☆>γ)的(de)信息比較多(duō),先将數(shù)據存儲到(dào)內(nè×‌♦>i)存,達到(dào)一(yī)定大(dà)小(xiǎo),‌ 全部寫到(dào)硬盤。有(yǒu)利于減少(shǎoπγ÷ )硬盤IO進程的(de)開(kāi)銷,數(shù)據存儲在內(nèi)存,¥≤<☆如(rú)果關機(jī)不(bù)當數(shù)據消失。

7、日(rì)志(zhì)輸入的(de)規則π¶

.info 大(dà)于等于info級别的(de)信息全部記$★錄到(dào)某個(gè)文(wén)件(jiàn)
.=級别 僅記錄等于某個(gè)級别的(de)日(rì)志(zhì)
例:.=info 隻記錄info級别的(de)日('€↔€rì)志(zhì)
.! 級别 除了(le)某個(gè)級别以外(wài),記錄所有(₽↔'yǒu)的(de)級别信息
例:.!err 除了(le)err級别以外(wài),記錄其它所有(yǒu☆¥ )級别所有(yǒu)信息
.none 指的(de)是(shì)排除某個(gè)類别
例: mail.none mail類型的(de)所有(yǒu&®¥>)級别都(dōu)不(bù)記錄

實戰:自(zì)定義ssh服務的(de)日(rì)志(zhì)類型和(hé•♦€↔)存放(fàng)位置
第一(yī):修改ssh服務配置文(wén)件(jiàn)ss₹✘​≈hd.conf存放(fàng)日(rì)志(zhì)的(de)類别
複制(zhì)原來(lái)的(de)日(rì)志(zhì)存放(fàng≤•<)類别,然後自(zì)定義一(yī)個(gèε←δ')local0類别

[root@xuegod140 ~]# vi∞✔♣m /etc/ssh/sshd_config
32 #SyslogFacility AUTHPRIV
33 SyslogFacility local↔±±0

第二:修改系統日(rì)志(zhì)配置文(wén)件($≥jiàn)rsyslog.conf的(de)分(fēn)類和♥‍α(hé)級别
增加新的(de)local0分(fēn)類的(de♠€★)所有(yǒu)級别存放(fàng)到(dào)₹₽/var/log/sshd.log

[root@xuegod140 ~]# vim →&♦/etc/rsyslog.conf
72 # Save boot messages also to boot.l¥‍ og
73 local7.* /var/log/→&↑ boot.log
74 local0.* /var/log/sshdφ±.log

第三:重啓服務

[root@xuegod140 ~]# systemc↔βtl restart rsyslog.service
[root@xuegod140 ~]# systemctl<≥ restart sshd

第四:查看(kàn)ssh服務日(rì)志(zhì)文(wén)件(jià‌≥®n)

[root@xuegod140 ~]# ls /va±×$₽r/log/sshd.log
/var/log/sshd.log
[root@xuegod140 ~]# cat !$
cat /var/log/sshd.log
Apr 22 00:36:11 xuegod140 sshd[5223]:®λ Server listening on 0.0.0.♠ε0 port 22.
Apr 22 00:36:11 xuegod140 s☆₽shd[5223]: Server listening on :: p♣∞βγort 22.

第五:使用(yòng)ssh登錄,進行(xíng)測♠γλ✘試
第一(yī)次登錄失敗,第二次登錄成功,查看(k♣☆♣σàn)日(rì)志(zhì)文(wén)件(jiàn♦★δ)

[root@xuegod140 ~]# tail -2 /var/lo≥☆βg/sshd.log
Apr 22 00:38:18 xuegod140 s↓∞¥shd[5250]: Failed password for root f♣₽‍rom 192.168.1.103 port ₹♦≠51101 ssh2
Apr 22 00:38:21 xuegod140 sshd[525↔÷‍®0]: Accepted password ☆"for root from 192.168.1.103 port 511♥★πε01 ssh2

注:沒有(yǒu)修改前,ssh服務的(de)所有(yǒ₹€↔u)日(rì)志(zhì)都(dōu)是(shì)存放(fàn∞♦g)到(dào)/var/log/secure文(wén÷→)件(jiàn)中

8、日(rì)志(zhì)切割

在 linux 下(xià)的(de)日(rì)志✔β (zhì)會(huì)定期進行(xíng)滾動增‌₩加,我們可(kě)以在線對(duì)正在進行(xíng)回滾‌"₽的(de)日(rì)志(zhì)進行(xíng)指定大(dà)小(xiǎo)的≠₩™(de)切割(動态),如(rú)果這(zhè)個(gè)日(rì)志(zhì)®ε>是(shì)靜(jìng)态的(de)。比如(r☆‍↕ú)沒有(yǒu)應用(yòng)向裡(l‌≥>↕ǐ)面寫內(nèi)容。那(nà)麽我們也(yě)可'≤(kě)以用(yòng) split 工(gōng)具進行(xíng)切割;其®♥σ中 Logrotate 支持按時(shí&™)間(jiān)和(hé)大(dà)小(≥"≠∞xiǎo)來(lái)自(zì)動切分(fēn✔σ),以防止日(rì)志(zhì)文(wén)件(jiàn)$ε←$太大(dà)。
logrotate命令配置文(wén)件(jiàn)<β↔÷:
主配置文(wén)件(jiàn)/etc/logrotate.conf
切割文(wén)件(jiàn):/etc/lo≠™♠grotate.d/ #所有(yǒu)需要(yào)自(zì)定義的(de)日∑π‍λ(rì)志(zhì)切割都(dōu)需要(yào)防止到(dàπ♦✘o)這(zhè)個(gè)目錄下(xià)
logrotate的(de)執行(xíng)是(shì)∏Ω由cornd服務調用(yòng)的(de)。

切割配置文(wén)件(jiàn)的(de)其它參數(shù)↔&↕說(shuō)明(míng):
monthly: 日(rì)志(zhì)文(wén)件(jiàn)将按月(yu€×§è)輪循。其它可(kě)用(yòng)值為(w♠↔>èi)‘daily’,‘weekly&r∏©≤≈squo;或者‘yearly’。
rotate 5: 一(yī)次将存儲 5 個(gè)歸檔日(rì)志≥ε(zhì)。對(duì)于第六個(gè)歸檔  ,時(shí)間(jiān)最久的(de)歸檔将被删除。
compress: 在輪循任務完成後,已<♦÷輪循的(de)歸檔将使用(yòng) gzip 進行(xíng)壓縮。
minsize:小(xiǎo)于1M不(bù)切割;∑₽♠maxsize:大(dà)于多(duō)少(shǎo±≠>)進行(xíng)切割
delaycompress: 總是(shì)不(bù) c₹♦δompress 選項一(yī)起用(yòng)↕★,delaycompress 選項指示 logrotate 不(bù)要λΩ(yào)将最近(jìn)的(de)歸檔壓縮, €壓縮将在下(xià)一(yī)次輪循周期進行(☆↕∑♦xíng)。這(zhè)在你(nǐ)或任何軟件(jiàn)仍≥®然需要(yào)讀(dú)取最新歸檔時(shí)很(hěn)有¥ε"(yǒu)用(yòng)。
missingok: 在日(rì)志(zhì)輪循期間(jiān),任何錯(βΩσ​cuò)誤将被忽略,例如(rú)“文(w‌∞§§én)件(jiàn)無法找到(dào)”之類的(d σ™©e)錯(cuò)誤。
notifempty: 如(rú)果日(rì)志(zhì)文(w≤★én)件(jiàn)為(wèi)空(kōng),輪循不(bùδ "≥)會(huì)進行(xíng)。
create 644 root root: 以指定的(de)權®"限創建全新的(de)日(rì)志(zhì)文(wén)件(jiàn),同時(₩¥≈shí) logrotate 也(yě)會(huì)重命名原始日(rì)志(♦₩&zhì)文(wén)件(jiàn)。
postrotate/endscript: 在所有(yσ✘γ₹ǒu)其它指令完成後,postrotate 和(h±←₩é) endscript 裡(lǐ)面指定的(de)命令将被執行(xín&'g)。在這(zhè)種情況下(xià),₩®rsyslogd 進程将立即再次讀(dú)取其配置并繼續運行(xíng)。
/var/lib/logrotate/sta≈εtus 中默認記錄 logrotate 上(shàng)次輪換日(rε∏€ì)志(zhì)文(wén)件(jiàn)的™✘(de)時(shí)間(jiān)。

例1:查看(kàn)logrotate切割的(de)計(j₽¶ì)劃任務:

[root@xuegod140 ~]# ls /etc/cron.dai≤↕ly/logrotate
/etc/cron.daily/logrotate
[root@xuegod140 ~]# cat /etc/cron¥₽.daily/logrotate
#!/bin/sh
/usr/sbin/logrotate -s /var/lib/<γlogrotate/logrotate.status >¶/etc/logrotate.conf
EXITVALUE=$?
if [ E X I T V A L U E ! = 0≠​ ] ; t h e n / u s r / b i n / l o g g≤<→ e r − t l o g r‌↕← o t a t e &quot; A L  "E R T e x i t e d a b n ¶±Ωo r m a l l y w i t h [ EXITVA✔☆™✔LUE != 0 ]; then /usr/bin/l≈ ogger -t logrotate &quot;ALE£♥RT exited abnormally with↔σ₩‍ [EXITVALUE!=0];then/usr/bin/loggertlogrotate"ALERTexitedabnormallywith[EXITVALUE]"
fi
exit 0

例2:查看(kàn)logrotate.conf文(wén)件(j↕>iàn)

[root@xuegod140 ~]# grep -v ^$ /et>™c/logrotate.conf
#see “man logrotate&rdqu≤™o; for details
#rotate log files weekly
weekly #按周進行(xíng)切割;也(yě)可(kě)以按天、月(yu☆©è)、年(nián)等切割
#keep 4 weeks worth of backlogs
rotate 4 #保留4份,不(bù)含÷₩♠•自(zì)身(shēn)的(de)一(yī)份
#create new (empty) log f ¶iles after rotating old ones
create #切割後創建新文(wén)件(jiàn) ✔₹®
#use date as a suffix of the rotated fiα‌le
dateext #以日(rì)期作(zuò)為(wèi)≠<後綴進行(xíng)切割
#uncomment this if you want your★• log files compressed
#compress # 是(shì)否需要(yào)壓縮日(rì)志(zhìλ∑)
#RPM packages drop log rotation info×σ‌‌rmation into this diε✘₹'rectory
include /etc/logrotate.d #将需要(yào)切割↑<的(de)日(rì)志(zhì)切割文(wén)件(jiàn)放(fà"•×¶ng)到(dào)這(zhè)個(gè)目錄內(nèi)
#no packages own wtmp and btmp &n$♥©₩dash; we’ll rotate them her‌Ω$e
/var/log/wtmp {
monthly #按月(yuè)切割
create 0664 root utmp #創建文(wén)件(jiàn),₩∞β™權限0664 ,用(yòng)戶root,屬組utmp
minsize 1M #文(wén)件(jiàn)大(dà)©>™小(xiǎo)1M,進行(xíng)切割
rotate 1 #保留一(yī)份,不(bù)包含≈€£γ自(zì)身(shēn)
}
/var/log/btmp {
missingok #忽略錯(cuò)誤信息
monthly #按月(yuè)切割
create 0600 root utmp #創建新文(wén ♠ε)件(jiàn)等
rotate 1 #保留一(yī)份
}
#system-specific logsλ  may be also be configured here.

例3:查看(kàn)/etc/logrotate.d/目錄下(x<€•←ià)的(de)文(wén)件(jiàn)

[root@xuegod140 ~]# cd /etc/logrotate.≠¥∑λd/
[root@xuegod140 logrotate.d]# ls
bootlog cups iscsiuiolog lδαγ£ibvirtd.qemu ppp samba wpa_supplicant
chrony httpd libvirtd numad≠δ₹← psacct syslog yum
[root@xuegod140 logro∞↔φβtate.d]# cat syslog
/var/log/cron
/var/log/maillog
/var/log/messages
/var/log/secure
/var/log/spooler #對(duì)以上(shàng)目→✘錄按照(zhào)如(rú)下(xià)标準進行(xíng)切割
{
missingok #忽略錯(cuò)誤
sharedscripts #使用(yòng)腳本 posγ•₹trotate #開(kāi)始腳本
/bin/kill -HUP cat /var/run/syslogd.pid 2₹®φ> /dev/null 2> /dev/null ||♣✘↕ true
endscript #結束腳本
}

例4:系統日(rì)志(zhì)切割流程
(1)logrotate的(de)啓動腳本被放(fà≤λ&ng)在了(le)Crontab每天執行(xíng)的(de)腳本目錄中/et¥÷c/cron.daily,這(zhè)樣Cε✘rontab每天都(dōu)會(huì)執✘₩行(xíng)一(yī)次logrotate;

(2)logrotate啓動的(de)時(shí" ∏)候,使用(yòng)了(le)配置文(wén)件(jiàn÷™§)/etc/logrotate.conf;

(3) 配置/etc/logrotate.co≈<nf中又(yòu)引入了(le)目錄:/etc/logrotate®↔.d;

(4)我們在/etc/logrotate.>$☆d目錄下(xià)建立自(zì)己的(de↓¥∞β)logrotate配置文(wén)件(€↔jiàn);

(5)這(zhè)樣,當logrotate啓動的(de)時(shí)>♥候就(jiù)會(huì)執行(xíng)一(yīΩ®→)次轉儲,從(cóng)而按照(zhào)我們的(←δ Ωde)配置來(lái)轉儲我們指定的(de)σ₹日(rì)志(zhì)文(wén)件(jiàn)。

例5:使用(yòng)dd命令生(shēng)産兩個(gè€≤π✘)文(wén)件(jiàn),進行(xíng±γ★)切割

[root@xuegod140 opt]# dd if=/dev/zer♠™"o of=acce.log bs=1M count=100
100+0 records in
100+0 records out
104857600 bytes (105 MB) copied,↕↓'™ 0.121766 s, 861 MB/s
[root@xuegod140 opt]# ∏λ÷♣dd if=/dev/zero of=accf.log bs=1M coun♦δ≤•t=50
50+0 records in
50+0 records out
52428800 bytes (52 MB) copied, 0.£ λ¶0632254 s, 829 MB/s
[root@xuegod140 opt]# ll -h
total 150M
-rw-r–r-- 1 root root 10σ®≥0M Apr 22 02:15 acce.×↕♦♥log
-rw-r–r-- 1 root root 50M Apr ±λ✔↑22 02:15 accf.log
[root@xuegod140 log]# cd /e≤♣™tc/logrotate.d/
[root@xuegod140 opt]# vim‍φ¥γ /etc/logrotate.d/acc
[root@xuegod140 opt]# cat /etc/logrotat ♥™e.d/acc
/opt/*.log
{
daily
maxsize 80M
missingok
rotate 3
dateext
create 0644 root root
}
[root@xuegod140 ~]# logrotate -dv /etc×★≤$/logrotate.d/acc
reading config file /etc/logro≥αtate.d/acc
Allocating hash table for₩← state file, size 15360 B
Handling 1 logs
rotating pattern: /op€α×↔t/acce.log
/opt/accf.log
after 1 days (3 rota÷>tions)
empty log files are rotated, log ₽✘¥₹files >= 83886080 are rot∑←ated earlier, old logs are removed
considering log /opt/acc₽"™e.log
log needs rotating
considering log /opt/accf.log™¥
log does not need rotating (lo ÷λg has been rotated at 2019-4-22 2:17,‍> that is not day ago♠>✔✔ yet)
rotating log /opt/ac★>ce.log, log->rotateCount is€× 3
dateext suffix ‘-2®¥↓&0190422’
glob pattern ‘-[0-9][0-₩★9][0-9][0-9][0-9][0-9][0-9][0-9]&∏∑★‍rsquo;
glob finding old rotated logs failed
renaming /opt/acce.log to£•  /opt/acce.log-20190422
creating new /opt/acce.log mode  ©= 0644 uid = 0 gid = 0
[root@xuegod140 opt]# syε≠stemctl restart rsyslog.servic ☆₩>e

強制(zhì)切割

[root@xuegod140 ~]# logrotate -fv ♣α¶/etc/logrotate.d/acc
reading config file /etc/l γogrotate.d/acc
Allocating hash table f✔πΩor state file, size ε↓15360 B
Handling 1 logs
rotating pattern: /opt/✘₩>↕acce.log
/opt/accf.log
forced from command lin &↑αe (3 rotations)
empty log files are rotated, log∏★♥ files >= 83886080 are rotatπ∏♦ed earlier, old logs are removed
considering log /opt/✘£‍acce.log
log needs rotating
considering log /opt/acc πf.log
log needs rotating
rotating log /opt/acce.log, log-✔∑÷>rotateCount is 3
dateext suffix ‘-201904©∑22’
glob pattern ‘-[0-9][0-9]γ₩[0-9][0-9][0-9][0-9][0-9][0-9]’♠$₽£
glob finding old rotated logs fa÷π↑iled
renaming /opt/acce.log to /opt/acce.l₽"πog-20190422
creating new /opt/acce.log mode = 0644 ∑αuid = 0 gid = 0
rotating log /opt/accf.log≤±♦, log->rotateCount is 3
dateext suffix ‘-201904©αδ¥22’
glob pattern ‘-[0-9]¥ >[0-9][0-9][0-9][0-9]δφ [0-9][0-9][0-9]’
glob finding old rotated logs failed≤←★ 
renaming /opt/accf.log to /op ε←βt/accf.log-20190422
creating new /opt/accf.log mode = 0644∏&> uid = 0 gid = 0
[root@xuegod140 ~]# l>πs /opt/
acce.log acce.log-20190422γ ≥ accf.log accf.log-2019042≠¥2
[root@xuegod140 ~]# ll -h /opt/‍✔
total 150M
-rw-r–r-- 1 root root 0 Apr 22 ☆¶19:32 acce.log
-rw-r–r-- 1 root root 100M ×$₽×Apr 22 02:23 acce.log-201904‌ ÷λ22
-rw-r–r-- 1 root root 0 Apr 2∏÷2 19:32 accf.log
-rw-r–r-- 1 root roo←™£♣t 50M Apr 22 02:23 accf.lo$™g-20190422

9、配置遠(yuǎn)程日(rì)志(zhì)服務器(qì)-實現 ✘♥"(xiàn)日(rì)志(zhì)集中的(de)管理(lǐ)₽σ'✘
實驗拓撲圖:

server端配置

[root@xuegod63 ~]# vim λ×≤/etc/rsyslog.conf # 使用(yòng)TCP₽&協議(yì)方式,收集日(rì)志(zhì)
改:19 #KaTeX parse error: Expec₽≠♥ted 'EOF', got '#' at ‍≤position 22: …d imtcp 20  ★★#̲InputTCPServerRun 514
為(wèi):
19 $ModLoad imtcp
20 $InputTCPServerRun 514

注:使用(yòng)UDP協議(yì)速度快(k¶☆ ≈uài)不(bù)保證數(shù)據的(de)完整,使用(yλ∑☆ òng)TCP協議(yì)可(kě)靠.完整

[root@xuegod63 ~]# systemctl reγ≠™start rsyslog #重新啓動 rsyslog↕♣→

查看(kàn)服務監聽(tīng)的(de)狀态:

[root@xuegod63 ~]# netstat -anl ✘∞σpt| grep 514
tcp 0 0 0.0.0.0:514 0.0.0.0:* L←₩‍ISTEN 45631/rsyslogd
tcp6 0 0 :::514 ::? LISTEN 45631/♦±rsyslogd

服務端驗證:
在服務端關閉selinux和(hé)防火(huǒ)牆

[root@xuegod63 ~]# getenforce
Enforcing
[root@xuegod63 ~]# setenforce 0‌¶  #關閉selinux功能(néng)
[root@xuegod63 ~]#getenfoβ​₹rce
Permissive
[root@xuegod63 ~]# systemctl↓$ stop firewalld
[root@xuegod63 ~]# systemctl statu✘  s firewalld
[root@xuegod63 ~]# iptables -F #清☆₩♦₽空(kōng)防火(huǒ)牆規則

client端配置
登錄xuegod64.cn

[root@xuegod63 ~]# vim ∑←/etc/rsyslog.conf #在90行(xín ‍γg)之後,插入
. @@192.168.1.63:514

注: . 所有(yǒu)類别和(hé)級别的(de)日(rì)志(zλ♣£♥hì) ; @@192.168.1.63:514 £×♣遠(yuǎn)端tcp協議(yì)的(de)日(rì)志(α✘→zhì)服務端的(de)IP和(hé)端口
重啓rsyslog 服務

[root@xuegod64 ~]# systemctl   α"restart rsyslog.service

查看(kàn)日(rì)志(zhì):

[root@xuegod63 ~]# tail -f /var¶€/log/messages | grep φ∞¶xuegod64 --color #動态查看(kàn)日(rì)志÷ (zhì)

在客戶端xuegod64進行(xíng)φ™↑測試
語法: logger 要(yào)模拟發送的(d₹®∏e)日(rì)志(zhì)

[root@xuegod64 ~]# logger &l©∞<βdquo;aaaaa”
[root@xuegod63 ~]# t ¥>ail -f /var/log/messages | ↑σ∞grep xuegod64 --color #服φ₩≥務器(qì)端到(dào)查看(kàn)消息
May 21 16:32:16 xuegod64 root:∑₽< aaaaa

注:
總結:服務器(qì)使用(yòng)udp協議(yì),客戶端隻能γ←(néng)使用(yòng)的(de)配置文(wén)件(jiàn)中這(zh÷←↔≈è)一(yī)行(xíng)隻能(néng)有(yǒu)≤φ一(yī)個(gè)@
. @192.168.1.64:514
服務器(qì)使用(yòng)tcp協議(y₩☆ì),客戶端隻能(néng)使用(yòng)的δ'★>(de)配置文(wén)件(jiàn)中這(zhè)一(yī×‌)行(xíng)必須有(yǒu)兩個(g¥≥$‌è)@@
. @@192.168.1.64:514