日志服务管理
日志服務(wù)管理
文章目錄
- 日志服務(wù)管理
- 系統(tǒng)日志管理
- 系統(tǒng)日志介紹
- sysklogd系統(tǒng)日志服務(wù)
- rsyslog系統(tǒng)日志服務(wù)
- ELK
- rsyslogd
- 系統(tǒng)日志術(shù)語(yǔ)
- rsyslog相關(guān)文件
- rsyslog配置文件
- 日志文件的格式
- ssh服務(wù)日志單獨(dú)設(shè)置
- 遠(yuǎn)程日志功能
- 日志文件
- **日志管理工具** **journalctl**
- 網(wǎng)絡(luò)文件共享服務(wù)
系統(tǒng)日志管理
系統(tǒng)日志介紹
在現(xiàn)實(shí)生活中,記錄日志也非常重要,比如銀行的轉(zhuǎn)賬記錄,飛機(jī)上的黑盒子,那么將系統(tǒng)和應(yīng)用發(fā)生的事件記錄至日志中,以助于排錯(cuò)和分析使用
日志記錄的內(nèi)容包括:
- 歷史事件:時(shí)間,地點(diǎn),人物,事件
- 日志級(jí)別:事件的關(guān)鍵性程度,Loglevel
sysklogd系統(tǒng)日志服務(wù)
CentOS 5 之前版本采用的日志管理系統(tǒng)服務(wù)
- syslogd: system application 記錄應(yīng)用日志
- klogd: linux kernel 記錄內(nèi)核日志
事件記錄格式:
日期時(shí)間 主機(jī) 進(jìn)程[pid]: 事件內(nèi)容
C/S架構(gòu):通過(guò)TCP或UDP協(xié)議的服務(wù)完成日志記錄傳送,將分布在不同主機(jī)的日志實(shí)現(xiàn)集中管理
rsyslog系統(tǒng)日志服務(wù)
rsyslog是CentOS 6以后版本的系統(tǒng)管理服務(wù):它提供了高性能,出色的安全性和模塊化設(shè)計(jì)。盡管rsyslog最初是常規(guī)的syslogd,但發(fā)展成為一種瑞士軍刀式的記錄工具,能夠接受來(lái)自各種來(lái)源的輸入,并將其轉(zhuǎn)換,然后輸出到不同的目的地。
當(dāng)應(yīng)用有限的處理時(shí),RSYSLOG每秒可以將超過(guò)一百萬(wàn)的消息傳遞到本地目的地。即使在遠(yuǎn)程的目的地和更精細(xì)的處理中,性能通常也被認(rèn)為是驚人的”。
http://www.rsyslog.com/ —官網(wǎng)
rsyslog 特性
- 多線程
- UDP, TCP, SSL, TLS, RELP
- MySQL, PGSQL, Oracle實(shí)現(xiàn)日志存儲(chǔ)
- 強(qiáng)大的過(guò)濾器,可實(shí)現(xiàn)過(guò)濾記錄日志信息中任意部分
- 自定義輸出格式
- 適用于企業(yè)級(jí)中繼
ELK
ELK:由Elasticsearch, Logstash, Kibana三個(gè)軟件組成
- 非關(guān)系型分布式數(shù)據(jù)庫(kù)基于apache軟件基金會(huì)jakarta項(xiàng)目組的項(xiàng)目lucene
- Elasticsearch是個(gè)開(kāi)源分布式搜索引擎,可以處理大規(guī)模日志數(shù)據(jù),比如:Nginx、Tomcat、系統(tǒng)日志等功能
- Logstash對(duì)日志進(jìn)行收集、分析,過(guò)濾,并將其存儲(chǔ)供以后使用
- Kibana 可以提供的日志分析友好的 Web 界面
rsyslogd
系統(tǒng)日志術(shù)語(yǔ)
- facility:設(shè)施,從功能或程序上對(duì)日志進(jìn)行歸類
| auth(LOG_AUTH) | 安全和認(rèn)證相關(guān)消息(不推薦使用 authpriv 替代) |
| authpriv(LOG_AUTHPRIV) | 安全和認(rèn)證相關(guān)消息(私有的) |
| cron(LOG_CRON) | 統(tǒng)定時(shí)任務(wù) cront 和 at 產(chǎn)生的日志 |
| daemon(LOG_DAEMON) | 和各個(gè)守護(hù)進(jìn)程相關(guān)的日志 |
| ftp(LOG_FTP) | ftp 守護(hù)進(jìn)程產(chǎn)生的日志 |
| kern(LOG_KERN) | 內(nèi)核產(chǎn)生的日志(不是用戶進(jìn)程產(chǎn)生的) |
| local0-local7(LOG_LOCAL0-7) | 為本地使用預(yù)留的服務(wù) |
| lpr(LOG_LPR) | 打印產(chǎn)生的日志 |
| mail(LOG_MAIL) | 郵件收發(fā)信息 |
| new(LOG_NEWS) | 與新聞服務(wù)器相關(guān)的日志 |
| syslog(LOG_SYSLOG) | 有 syslogd 服務(wù)產(chǎn)生的日志信息雖然服務(wù)名稱已經(jīng)改為rsyslogd,但是很多配置都還是沿用了 syslogd 的,這里 并沒(méi)有修改服務(wù)名 |
| user(LOG_USER) | 用戶等級(jí)類別的日志信息 |
| uucp(LOG_UUCP) | uucp 子系統(tǒng)的日志信息,uucp 是早期 linux 系統(tǒng)進(jìn)行數(shù) 據(jù)傳遞的協(xié)議,后來(lái)也常用在新聞組服務(wù)中 |
- Priority 優(yōu)先級(jí)別,從低到高排序
| debug(LOG_DEBUG) | 一般的調(diào)試信息說(shuō)明 |
| info(LOG_INFO) | 基本的通知信息 |
| notice(LOG_NOTICE) | 普通信息,但是有一定的重要性 |
| warning(LOG_WARNING) | 警告信息,但是還不回影響到服務(wù)或系統(tǒng)的運(yùn)行 |
| err(LOG_ERR) | 錯(cuò)誤信息,一般達(dá)到 err 等級(jí)的信息以及可以影響到服務(wù)或系 統(tǒng)的運(yùn)行了 |
| crit(LOG_CRIT) | 臨界狀況信息,比 err 等級(jí)還要嚴(yán)重 |
| alert(LOG_ALERT) | 警告狀態(tài)信息,比 crit 還要嚴(yán)重。必須立即采取行動(dòng) |
| emerg(LOG_EMERG) | 疼痛等級(jí)信息,系統(tǒng)已經(jīng)無(wú)法使用了 |
| * | 代表所有日志等級(jí)。比如,“authpriv.*”代表amhpriv認(rèn)證信息服務(wù)產(chǎn)生的日志,所有的日志等級(jí)都記錄 |
rsyslog相關(guān)文件
- 程序包:rsyslog
- 主程序:/usr/sbin/rsyslogd
- CentOS 6:/etc/rc.d/init.d/rsyslog {start|stop|restart|status}
- CentOS 7,8:/usr/lib/systemd/system/rsyslog.service
- 配置文件:/etc/rsyslog.conf,/etc/rsyslog.d/*.conf
- 庫(kù)文件: /lib64/rsyslog/*.so
rsyslog配置文件
/etc/rsyslog.conf 配置文件格式:由三部分組成
- MODULES:相關(guān)模塊配置
- GLOBAL DIRECTIVES:全局配置
- RULES:日志記錄相關(guān)的規(guī)則配置
RULES配置格式:
facility.priority; #分類 優(yōu)先級(jí)日志文件的格式
- 事件產(chǎn)生的日期時(shí)間 主機(jī) 進(jìn)程(pid):事件內(nèi)容
示例:
[root@localhost ~]#tail /var/log/messagesssh服務(wù)日志單獨(dú)設(shè)置
[root@localhost ~]#tail -f /var/log/secure #查看位置 [root@localhost ~]#vim /etc/ssh/sshd_config #修改配置文件 SyslogFacility LOCAL6 #添加自己的自定義local6.* /var/log/ssh.log #添加自己的文件位置遠(yuǎn)程日志功能
#開(kāi)啟日志的遠(yuǎn)程傳輸功能在192.168.78.100 [root@localhost ~]#rpm -ql rsyslog #查看 [root@localhost ~]#ss -ntap |grep 514 #查看514端口是否打開(kāi) [root@localhost ~]#vim /etc/rsyslog.conf #修改配置文件 $ModLoad imtcp #19行 $InputTCPServerRun 514 #20行 [root@localhost ~]#ss -ntap |grep 514 #查看514端口是否打開(kāi) [root@centos7-2 ~]#vim /etc/rsyslog.conf #修改配置文件 *.info;mail.none;authpriv.none;cron.none @@192.168.78.100 #55行 [root@centos7-2 ~]#logger "this is test log from 192.168.78.5 1" 測(cè)試寫(xiě)入日志日志文件
- /var/log/secure:系統(tǒng)安全日志,文本格式,應(yīng)周期性分析
- /var/log/btmp:當(dāng)前系統(tǒng)上,用戶的失敗嘗試登錄相關(guān)的日志信息,二進(jìn)制格式,lastb命令進(jìn)行查看
- /var/log/wtmp:當(dāng)前系統(tǒng)上,用戶正常登錄系統(tǒng)的相關(guān)日志信息,二進(jìn)制格式,last命令可以查看
- /var/log/lastlog:每一個(gè)用戶最近一次的登錄信息,二進(jìn)制格式,lastlog命令可以查看
- /var/log/dmesg:CentOS7 之前版本系統(tǒng)引導(dǎo)過(guò)程中的日志信息,文本格式,開(kāi)機(jī)后的硬件變化將不再記錄專用命令dmesg查看,可持續(xù)記錄硬件變化的情況
- /var/log/boot.log 系統(tǒng)服務(wù)啟動(dòng)的相關(guān)信息,文本格式
- /var/log/messages :系統(tǒng)中大部分的信息
- /var/log/anaconda : anaconda的日志
查看
[root@localhost ~]#lastb [root@localhost ~]#lastlog [root@localhost ~]#last日志管理工具 journalctl
CentOS 7 以后版,利用Systemd 統(tǒng)一管理所有 Unit 的啟動(dòng)日志。帶來(lái)的好處就是,可以只用journalctl一個(gè)命令,查看所有日志(內(nèi)核日志和應(yīng)用日志)
日志的配置文件:/etc/systemd/journald.conf
journalctl [OPTIONS…] [MATCHES…]
| journalctl -k | 查看內(nèi)核日志(不顯示應(yīng)用日志) |
| journalctl -b | 查看系統(tǒng)本次啟動(dòng)的日志 |
| journalctl --since=“時(shí)間” | 查看指定時(shí)間的日志 |
| journalctl -n | 顯示尾部的最新10行日志,nhou加數(shù)字則是查看尾部指定多少行日志 |
| journalctl -f | 實(shí)時(shí)滾動(dòng)顯示最新日志 |
| journalctl /usr/lib/systemd/systemd | 查看指定服務(wù)的日志 |
| journalctl _PID= | 查看指定進(jìn)程的日志 |
| journalctl _UID= --since today | 查看指定用戶的日志 |
| journalctl -u 服務(wù) | 查看某個(gè)Unit的日志 |
| journalctl 路徑 | 查看某個(gè)路徑的腳本的日志 |
| journalctl --no-pager | 不分頁(yè)標(biāo)準(zhǔn)輸出 |
| journalctl --disk-usage | 顯示日志占據(jù)的硬盤(pán)空間 |
| journalctl --vacuum-size= | 指定日志文件占據(jù)的最大空間 |
| journalctl --vacuum-time= | 指定日志文件保存多久 |
網(wǎng)絡(luò)文件共享服務(wù)
ftp
文件傳輸協(xié)議:File Transfer Protocol 早期的三個(gè)應(yīng)用級(jí)協(xié)議之一,基于C/S結(jié)構(gòu)
數(shù)據(jù)傳輸格式:二進(jìn)制(默認(rèn))和文本
雙通道協(xié)議:命令和數(shù)據(jù)連接
兩種模式:從服務(wù)器角度
- 主動(dòng)(PORT style):服務(wù)器主動(dòng)連接
命令(控制):客戶端:隨機(jī)port —> 服務(wù)器:21/tcp
數(shù)據(jù):客戶端:隨機(jī)port <—服務(wù)器:20/tcp
- 被動(dòng)(PASV style):客戶端主動(dòng)連接
命令(控制):客戶端:隨機(jī)port —> 服務(wù)器:21/tcp
數(shù)據(jù):客戶端:隨機(jī)port —> 服務(wù)器:隨機(jī)port /tcp
FTP服務(wù)狀態(tài)碼: 1XX:信息 125:數(shù)據(jù)連接打開(kāi) 2XX:成功類狀態(tài) 200:命令OK 230:登錄成功 3XX:補(bǔ)充類 331:用戶名OK 4XX:客戶端錯(cuò)誤 425:不能打開(kāi)數(shù)據(jù)連接 5XX:服務(wù)器錯(cuò)誤 530:不能登錄用戶認(rèn)證:
匿名用戶:ftp,anonymous,對(duì)應(yīng)Linux用戶ftp
系統(tǒng)用戶:Linux用戶,用戶/etc/passwd,密碼/etc/shadow
虛擬用戶:特定服務(wù)的專用用戶,獨(dú)立的用戶/密碼文件
[root@centos7-2 ~]#yum install vsftpd -y [root@centos7-2 ~]#ss -natap |grep 21 [root@centos7-2 ~]#systemctl start vsftpd[root@localhost ~]#ftp 192.168.91.101 Connected to 192.168.91.101 (192.168.91.101). 220 (vsFTPd 3.0.2) Name (192.168.91.101:root): anonymous 331 Please specify the password. Password: 230 Login successful. Remote system type is UNIX. Using binary mode to transfer files. ftp> helpanonymous_enable=YES 支持匿名用戶,CentOS8 默認(rèn)不允許匿名 no_anon_password=YES 匿名用戶略過(guò)口令檢查 , 默認(rèn)NO listen_port=2121 默認(rèn)值為21 #anon_upload_enable=YES anon_upload_enable=YES 匿名上傳,注意:文件系統(tǒng)權(quán)限 anon_mkdir_write_enable=YES 匿名建目錄總結(jié)
- 上一篇: 【芯选择】CC1101芯片的模块实例
- 下一篇: lightroom使用小结五 调整作品曝