freebsd的swatch安装和使用

◎安裝

      更新相關檔案(cvsup)

      /usr/ports/security/swatch # make install

      /usr/ports/security/swatch # make clean



◎語法

  swatch

  [ --config-file file ] [ --restart-time time ]

  [ --input-record-separator regex ]

  [ [ --examine file_to_examine ] | [ --read-pipe program_to_pipe_from ] | [ --tail file_to_tail ] ]

  [ --daemon ]



◎swatch敘述:

       Swatch是被設計用來監視系統動作的程式。

       為了要讓Swatch能夠更加的強大,他需要一個用以比對的設定檔。     



◎命令列的參數:

       --config-file=filename or -c filename

   此參數告訴swatch到哪裡去尋找他的設定檔案。

   預設值是放在${HOME}/.swatchrc 。



       --help

   顯示使用說明。



       --input-record-separator=regular_expression

   此參數告訴swatch使用規則表示式來描繪每筆記錄的邊界。

   預設值是return。



       --restart-time=[+]hh:mm[am|pm] or -r [+]hh:mm[am|pm]

   在特定的時間之後重新啟動,hh代表小時,mm代表分鐘。

   若am/pm被省略,則使用24小時制。

   若時間前加有"+"這個符號,則代表從新啟動時間為,

   從目前時間再加上特定時間,此時am/pm會被忽略。.



       --script-dir=/path/to/directory

   這個參數將產生的暫存script檔案存放到特定的資料夾,

   而不是使用者的家目錄之下。

   強烈建議,您不要使用別的使用者也有權限寫入的資料夾,

   舉例來說/tmp。



       --version or -V

   顯示版本資訊。



       以下的參數,不能並存,只能選擇其一執行



       --tail-file=filename or -t filename

   當他們被附加到某一檔案時,以行為單位檢視文字檔案。



       --read-pipe=command or -p command

   從命令檢視輸入。



       --examine=filename or -f filename

   將filename視為檢視檔案來檢視。swatch將會進行一個個別檢視經由這個檔案。



       以下的參數純粹用於除錯過程,但是為了完整性仍將其列出。



       --dump-script[=filename]

   當watcher script產生時,不執行之反而將其寫入到一個檔案或者到標準輸出。



       若swatch在無參數狀態執行,如同加入下列參數執行。



   swatch --config-file=~/.swatchrc --tail-

   file=/var/log/syslog




   若 /var/log/messages 存在,則



   swatch --config-file=~/.swatchrc --tail-

   file=/var/log/messages




       若設定檔不存在,以下的設定則被使用。



       watchfor  /.*/

   echo modes=random

  

       搜尋比對檔案中所有以.*開頭的行

       並且用隨機模式顯示色彩型態。



◎設定檔說明:

       這個設定檔由swatch(8)程式去界定什麼型態的表達樣式需要被搜尋比對。

      

       每一行需包含一個關鍵字及一個關鍵字的值(有時是選擇性的)。

       關鍵字及其值,以一個空白鍵或等號"="分隔。



       watchfor regex



       ignore regex



       echo [modes]

           以何種顏色顯示符合的行。

   這些模式能在xterm上顯示,其中Normal(正常字)是預設值。

   可用的值:

   normal(正常字),bold(粗體), underscore(底線), blink(閃爍), inverse(倒反),

   black(黑), red(紅), green(綠),yellow(黃), blue(藍), magenta(品紅),

   cyan(青綠), white(白), black_h, red_h,green_h, yellow_h,

   blue_h, magenta_h, cyan_h,white_h.

   _h表示高亮度色彩。



       bell [N]

   顯示符合的行,並且送出N次的響聲。(預設值為1次)

  

       exec command

   執行某命令。這個命令可能包含變因(取代符合的行)。

   $N 將會取代在符合行中的第N個field。

   $0 或 $* 將會完全取代符合行。



       mail [addresses=address:address:...][,subject=your_text_here]

   當內容符合時,送出郵件給這些郵件位置的人。

   預設的郵件收件人為執行此程式的使用者。



       pipe command[,keep_open]

   將符合內容導為命令,使用keep_open參數來強制執行,

   直到另一個導管被執行或swatch結束。



       write [user:user:...]

   將符合內容以write方式來通知使用者。



       throttle hours:minutes:seconds,[use=message|regex]

   使用這個參數來限制產生符合樣式的次數。           



   use=regex參數造成throttling以規則表示式為基礎,而不是message

   (預設值為use=message)



       continue

   使用這個參數會讓swatch在完成目前比對之後,

   繼續嘗試去比對其他樣式。



       quit

   使用這個參數會使swatch立刻清除並結束。



◎特別參數

       此參數可以用在上面任何一個參數。



       when=day_of_week:hour_of_day

          

           此參數定義,視窗的時間及日期,此時動作被執行。

           舉例說明:



       mail=sysad-pager@somehost.somedomain,when=1-6:8-17



◎設定檔舉例:

       watchfor /file system full/

   echo

   bell

   throttle 01:00




       這個例子是一行包含"file system full"的字串,將會被顯示及螢幕發出聲響,

       多樣的(複合的)訊息例子將不會被顯示,

       若他們出現時間與第一次出現時刻相距在一分鐘之內。

       此參數可以避免有心人士利用swatch進行攻擊...



◎說明:雖然每個swatchrc只能記錄一個日誌檔,但您可以同時執行多個swatch ...

              swatch -c .swatchrc.01

              swatch -c .swatchrc.02



◎執行狀況:

            1.以純粹的swatch命令

              $ swatch

              產生結果如下...最後我用ctrl+c中斷 您也可以用&背景執行。

             

             

              其中用紫色塗起來的表示個人帳號與swatch無關故省略

              很明顯可以看到因為我沒有設定任何設定檔

              所以他也讀不到,所以swatch用預設狀態執行...

              然後他會顯示預設的設定值(前面有說明在此省略)

             

              然後顯示swatch的啟動時間...

              等待一陣子之後..有一個使用者登入成功用高亮度色彩記錄下來了...

              目的達到所以中斷之..。

             

              當然失敗的也會被紀錄...

             

              你一定覺得這個訊息沒有什麼用處吧..?

              別懶了...修改一下設定檔..

              舉例說明:

                   watchfor /failed|reject/

                   echo yellow_h

                  

              換成您想要的關鍵字 至於改成什麼?看個人功力....

              什麼樣的程度是你所關心的系統報告...自行取捨..    

             

◎作者:

   E. Todd Atkins

   Todd.Atkins@StanfordAlumni.ORG
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值