很久以前我用的監測軟體是必須主動一一去查看!
在我還沒有自己研發出INSTAWATCHER之前,我用過幾種Open Source的監測軟體(例如Cacti、Zabbix…),也有使用官方的監測工具(例如AWS的CloudWatch…),確實可以滿足基本的主機監測需求:
- 掌握主機的CPU用量
- 掌握主機的流量
但是我自己想要監測的項目需求更多:
- 主機的記憶體用量
- 主機的磁碟用量
- 主機開啟的服務和程序
而且我希望可以不必一台、一台點進去查看,而是能夠集合在一個畫面裡統一查看所有在不同地方(例如雲端、IDC)的主機運作狀態,最重要是能夠設定各種警戒值,當主機的某些項目超過警戒值時,就會主動通知我…
所以我花了幾年時間研發出INSTAWATCHER這套清查AWS和監測伺服器主機運作的超好用軟體,給我自己和重要的客戶們使用!
查看單一主機的所有重要運作資訊
目前市面上幾乎所有的監測軟體都是用此模式來提供監測數據,要一台一台查看。
查看所有主機的單一重要運作資訊(此例是CPU用量)
我自己想要一次查看所有主機的CPU用量,這樣就不必一台一台去看!
主動通知永遠比被動查看來得好!
我開發的INSTAWATCHER既然能夠同時查看所有在不同平台上的主機,包括各家雲端主機、虛擬主機和實體主機,若是能夠在出現異常狀況時主動發出簡訊通知我,那就更棒了!(因為Email很容易造成警戒疲乏和被誤擋,所以我只用簡訊通知)
所以我也把這個功能準備好了,而且可以自己訂定警戒值和時間:
- 針對磁區用量的警戒值(若磁區用量高於設定值就會發出簡訊)
- 針對CPU用量的警戒值(若CPU用量高於設定值就會發出通知)
- 針對流量的警戒值(若是網路流量超出設定的值就會發出通知)
- 針對TCP連接埠的警戒(若是監測的連接埠關閉就會發出通知)
只要我有收到客戶主機的警示簡訊通知,就會立刻上線處理!
只要是由我代管維運的伺服器主機,我一定會使用INSTAWATCHER來監測主機的運作狀態,而且會給客戶相關人員使用,讓他們也能同步接收到訊息、了解即時的狀況。
例如今晚我的手機就接收到INSTAWATCHER和NDS(我早期開發的另一套監測服務)傳來的警示簡訊,然後我立刻進行檢查,在確認問題之後就立刻聯絡客戶相關人員,果然客戶的相關人員告訴我,由於停電的關係,所以公司機房確實全部暫時停機了,他們也很訝異我能這麼即時發現!
而INSTAWATCHER傳來的警示則是通知我,客戶的雲端主機出現異常、造成CPU用量快速拉升,在我立即上線檢查後,發現是來自國外的IP在對網站進行深度掃描(很有可能就是在掃描Web Applicatoin的弱點),於是馬上將其列入黑名單加以封鎖就解決了。
今晚同時接到NDS和INSTAWATCHER的警示簡訊
在主機受到攻擊若能即時發現,就能進行防護處理、有效降低被入侵的機會!
NDS是我十幾年前開發出來的監測服務!
很久以前我自己用Perl和Php寫了這套NDS(網路監測服務),會主動去偵測主機特定的TCP連接埠是否正常開啟,若有異常時會發出警示簡訊通知,由於很簡單,所以只有自己和幾個知道這個服務的朋友在用。
而INSTAWATCHER的監測方式和NDS有很大的不同,NDS不必在受監測的主機上安裝任何Agent程式,但也因此功能很有限,只能監測TCP連接埠;而INSTWATCHER是在受監測主機裡安裝Agent程式(都是使用開放原始碼的SHELL和PowerShell撰寫的,絕對透明、安全),所以可以監測的項目和功能較完整!
有些客戶的主機是買整套原廠的設備(例如郵件主機),所以就不適合或無法使用INSTAWATCHER來監測,此時就只能使用NDS來協助客戶偵測主機開啟的連接埠服務是否正常~
老實說,就是因為我有使用NDS和INSTAWATCHER來協助我維運、管理位於不同企業機房、雲端的這麼多台伺服器主機,我才能有更多時間花在學習資安等領域的新技術,也才能協助客戶處理更多的資訊問題!