linux 系統日志管理

     在linux系統上面,系統可以記錄從開機到當前系統上面何時發生了那些事情,并將其分類,分級別寫到特定的日志文件當中,如系統自身產生的問題,用戶登錄信息,網絡數據信息等等。我們可以根據這些日志信息來解決系統方面的錯誤,網絡服務問題等等。日志對于安全來說,非常重要,它記錄了系統每天發生的各種各樣的事情,你可以通過它來檢查錯誤發生的原因,或者受到攻擊時攻擊者留下的痕跡。 日志主要的功能有:審計和監測。它還可以實時的監測系統狀態,監測和追蹤侵入者等等。

  日志存在的位置/var/log即ls /var/log

linux 系統日志管理

 常用的日志文件如下: 
   btmp 記錄denglu失敗的信息 
   lastlog 記錄最近幾次成功登錄的事件和最后一次不成功的登錄 
   messages 從syslog中記錄信息(有的鏈接到syslog文件) 
   utmp    記錄當前登錄的每個用戶

   wtmp    系統登錄的情況:登入登出

登錄信息的查看 
我們也可以通過last 命令查看登錄日志內容 
哪個用戶在哪個時間通過哪種方式登錄系統的情況
      1./var/log/lastlog  #最后登錄信息
      2.lastlog  #記錄所有的用戶什么時候登錄過系統
      3./var/log/btmp  # 用戶登錄系統的錯誤信息
          lastb  查看
      4./var/log/wtmp  # 用戶登錄系統的成功信息
      5.# 如果說你發現你的btmp文件變得很大,說明有很大的可能是有人在暴力破解你的主機

日志的記錄方式:

         消息類型:auth,authpriv,security;cron,daemon,kern,lpr,mail, mark,news,syslog,user,uucp,local0~local7.
         錯誤級別:(8級)debug,info,notice,warning|warn;err|error;crit,alert,emerg|panic
         動作域:file,user,console,@remote_ip
         舉如上的/etc/syslog.conf文件三個例子:
         *.info;mail.none;authpriv.none;cron.none /var/log/messages
        表示info級別的任何消息都發送到/var/log/messages日志文件,但郵件系統、驗證系統
        和計劃任務的錯誤級別信息就除外,不發送(none表示禁止)
         cron.* /var/log/cron 表示所有級別的cron信息發到/var/log/cron文件
         *.emerg * 表示emerg錯誤級別(危險狀態)的所有消息類型發給所有用戶
日志輸入的規則 
        .info 高于info級別的信息全部記錄到某個文件 
        =級別 僅記錄等于某個級別的日志 
      例:.=info 只記錄info級別的日志 
      ! 級別 除了某個級別意外,記錄所有的級別信息 
     例.!err 除了err外記錄所有 
     none 指的是排除某個類別
自定義ssh服務的日志:

#編輯vim /etc/rsyslog.conf

linux 系統日志管理

定義sshd日志的級別 vim /etc/ssh/sshd_config,重啟服務,測試結果

linux 系統日志管理

systemctl restart rsyslog

systemctl restart sshd

linux 系統日志管理

linux 系統日志管理

linux日志的切割存儲(回滾原理)

 隨著日志文件內容的日益增加,對于后期的處理帶來非常的不便,因此就需要一種機制能夠對日志進行處理,rsyslog就提供了一個這楊一個功能組件logrotate

vim /etc/logrotate.conf

       # rotate log files weekly
       weekly  #? 每周執行回滾
      # keep 4 weeks worth of backlogs
     rotate 4   #保留4個副本 
      # create new (empty) log files after rotating old ones
     create   #創建新的文件存儲數據
     # use date as a suffix of the rotated file
     dateext   #使用日期為后綴的回滾文件  #可以去/var/log目錄下看看
     #compress
     # RPM packages drop log rotation information into this directory
      include /etc/logrotate.d
     # no packages own wtmp and btmp — we’ll rotate them here
        /var/log/wtmp {  #指定的日志文件
               monthly     #每月輪轉一次
               create 0664 root utmp
                minsize 1M    #日志文件必須大于1M才會去輪換(回滾)
                 rotate 1      #保存一個輪換日志
     }
       /var/log/btmp {
    missingok  #  如果日志文件不存在,繼續處理下一個文件而不產生報錯信息。
    monthly
    create 0600 root utmp  #設置utmp  這個日志文件的權限,屬主,屬組
    rotate 1
    }
我們跟著上面個例子繼續據ssh日志來完成日志的切割存儲

linux 系統日志管理

準備兩臺裝置server   client 

首先服務端

linux 系統日志管理

重啟及查看端口

linux 系統日志管理

m在客戶端client

linux 系統日志管理

重啟服務及測試


linux 系統日志管理

linux 系統日志管理

tail -f /var/log/message  動態查看增加內容:

原創文章,作者:gd1479,如若轉載,請注明出處:http://www.www58058.com/84718

(2)
gd1479gd1479
上一篇 2017-08-14 09:52
下一篇 2017-08-14 18:17

相關推薦

  • 馬哥教育網絡班N22期+第5周課程練習

    馬哥教育網絡班N22期+第5周課程練習 1. 顯示/etc/rc.d/rc.sysinit文件中以#開頭,后面跟至少一個空白字符,而后又有至少一個非空白字符的行;  grep -E "^[#][[:space:]]+[^[:space:]].*" /etc/rc.d/rc.sysinit 2. 顯示…

    Linux干貨 2016-09-19
  • sed命令實戰

    1、刪除/etc/grub2.conf文件中所有以空白開頭的行行首的空白字符  [root@centos7 ~]# sed -r 's#^[[:space:]]+##g' /etc/grub2.cfg # # DO NOT EDIT THI…

    Linux干貨 2016-08-15
  • 多任務腳本發布

    1、此腳本用于將80和443用iptables mark標記后 添加到 ipcsadm 中,讓80端口和443端口當成一類 服務進行調度 —————————————————————————————————————————————— #!/bin/bash 多端口綁定,這里是80和443被iptables綁定為一個標記分發后端 vip=172.16.0.99M…

    Linux干貨 2017-06-25
  • N26-第四周-孫逸

    1、  復制/etc/skel目錄為/home/tuser1,要求/home/tuser1及其內部文件的屬組和其它用戶均沒有任何訪問權限。 cp –r /etc/skel /home/tuser1 chmod –R 700 /home/tuser1 2、  編輯/etc/group文件,添加組hadoop。 group文件的內容格式: &…

    2017-03-10
  • 上下文管理練習(為加法函數計時)

    上下文管理(為加法函數計時) 為加法函數計時 使用裝飾器顯示該函數的執行時長 使用上下文管理顯示該函數的執行時長 裝飾器實現 import time import datetime from functools import wraps def logger(fn): @wraps(fn) # wraps(fn)(wrapper) def wrapper(*…

    2017-11-18
  • shell腳本中if與case使用,查找文件locate與find的使用,壓縮,解壓及歸檔工具

    shell腳本中if與case使用 查找文件locate與find的使用 壓縮,解壓及歸檔工具 執行的循序  順序執行  選擇執行  循環執行 條件語句if if只是一個有含義的詞,不能單獨作為指令使用。 單分支      if 條件判斷:then       &nbs…

    Linux干貨 2016-08-18
欧美性久久久久