◎安裝
更新相關檔案(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
更新相關檔案(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