2013/12/22

borcade

http://www.brocade.com/downloads/documents/product_manuals/MIB/IPMIB_Reference_Jun2013.pdf

OID前要加上 1.3.6.1.4.1.1991

1.3.6.1.4.1.1991.1.1.1.1.18  机器溫度

cisco 溫度相關oid

iso.3.6.1.4.1.9.9.13.1.3.1.2.1005 = STRING: "SW#1, Sensor#1, GREEN "
iso.3.6.1.4.1.9.9.13.1.3.1.2.2005 = STRING: "SW#2, Sensor#1, GREEN "
iso.3.6.1.4.1.9.9.13.1.3.1.3.1005 = Gauge32: 30
iso.3.6.1.4.1.9.9.13.1.3.1.3.2005 = Gauge32: 33
iso.3.6.1.4.1.9.9.13.1.3.1.4.1005 = INTEGER: 65
iso.3.6.1.4.1.9.9.13.1.3.1.4.2005 = INTEGER: 65
iso.3.6.1.4.1.9.9.13.1.3.1.5.1005 = INTEGER: 0
iso.3.6.1.4.1.9.9.13.1.3.1.5.2005 = INTEGER: 0
iso.3.6.1.4.1.9.9.13.1.3.1.6.1005 = INTEGER: 1
iso.3.6.1.4.1.9.9.13.1.3.1.6.2005 = INTEGER: 1

以下為目前實際值
.1.3.6.1.4.1.9.9.13.1.3.1.3.1005

舊型机器(2U)不支援此OID

2013/12/19

最近在進行Arcsight的POC

整理了一下search 語法

fortigate virus | top destinationAddress

fortigate Malicious | top destinationAddress

fortigate ips AND (sourceAddress IS NOT NULL) | top sourceAddress

fortigate spam | top sourceAddress

2013/12/16

之前在尋找cacti上的告警机制的時候有找到thold這個模組可以來設定
但因不太想用plugin而作罷
最近想到應該可以直接撈rrd file的值來用
就可以寫個shell來處理了

原始rrdtool撈出來的結果如下

rrdtool fetch 123.rrd AVERAGE --start -300
                       
                             123              

1387170000: 4.2220000000e+03
1387170300: -nan

但因為這樣不好判斷 查了一下轉成十進位的方法
指令如下
printf "%f\n" `rrdtool fetch 123.rrd AVERAGE --start -300|grep e+|cut -d ' ' -f 2`
得出的結果就會是
4222
以方便程式的判斷

2013/12/11

取得設備的OID之後要在cacti上畫圖的方法如下

先增加一個
Data Templates

在設定Data Templates時
Associated RRA's  的第一個選項 Hourly一定要取消(預設是全選的)
否則會造成圖畫不出來的問題






之後再依據這個Data Templates加上
Graph Templates
詳細步驟如下連結
http://kb.fortinet.com/kb/viewAttachment.do?attachID=Fortigate%20SNMP%20Graphs%20with%20Cacti.pdf&documentID=13833

但加完後卻發生一個問題就是圖有出來但是沒有資料
看了一下rra file

rrdtool fetch 123.rrd AVERAGE
                  data

1386653400: -nan
1386653700: -nan
1386654000: -nan
1386654300: -nan
1386654600: -nan
1386654900: -nan
1386655200: -nan
1386655500: -nan
1386655800: -nan
1386656100: -nan
1386656400: -nan
1386656700: -nan
1386657000: -nan
1386657300: -nan
1386657600: -nan

完全沒有收到資料
可是用snmpwalk去撈是有資料啊

再仔細看了一下上面的文件
發現了一句話

snmpwalk -v 2c -c public 10.69.69.1 .1.3.6.1.4.1.12356.17.102.3.1.2
SNMPv2-SMI::enterprises.12356.17.102.3.1.2.1 = Counter32: 1229

Notice that the snmpwalk came back with an OID of 12356.17.102.3.1.2.1 The extra trailing ‘.1’ would be 
the OID that should be put into the Data Template Custom Data section. 

snmpwalk撈出來是有值沒錯
但在Data Template必須在最OID的最後再加上.1

之後如果再發生類似的情況 snmpwalk有值卻畫不出來
把OID最後再加上.0或.1試看看
原則上再加上去smnpwalk也還是能撈出值而且值跟沒加時相同
同時cacti也會正常
終於解開了長久以來的疑惑




近來發現很多設備出現無跟ntp server校時的問題
到ntp server上查看 ntpstat
出現unsynchronised
但ntpq -p
是正常
不知道是不是跟ipv6上線有關
因為之前都沒發生這個問題
先把ntp server的ipv6關了
再改了一下ntp.conf
觀察看看

修改部分如下

把ipv6部分的config mark

#restrict -6 default kod nomodify notrap nopeer noquery
#restrict -6 ::1

restrict 127.0.0.1
restrict default nomodify

# Undisciplined Local Clock. This is a fake driver intended for backup
# and when no outside source of synchronized time is available.
server  127.127.1.0     # local clock
fudge   127.127.1.0 stratum 10

2013/12/09

參考了以下的文章
把fortiget的相關monitor加到cacti
但session那個oid有問題





在設定Data Templates時
Associated RRA's  的第一個選項 Hourly一定要取消(預設是全選的)
否則會造成圖畫不出來的問題


http://www.paulscomputerservice.net/articles/article.php?ID=211
http://kb.fortinet.com/kb/viewAttachment.do?attachID=Fortigate%20SNMP%20Graphs%20with%20Cacti.pdf&documentID=13833
http://www.netadmin.com.tw/article_content.aspx?sn=1301020001

2013/12/07

原本在snort設定的portscan偵測看起來發揮了不少作用
今天再加上特徵值的偵測阻擋
目前門檻值先設為100
即某個ip觸犯snort的rule到達100次後便加以封鎖
先醬觀察看看
程式碼如下

#!/usr/bin/python

import MySQLdb

db = MySQLdb.connect(host="localhost", user="root", passwd="abcd1234", db="snort")
cursor = db.cursor()

cursor.execute("select count(*) as cnt,inet_ntoa(ip_src) from event,iphdr where event.cid=iphdr.cid and event.sid=iphdr.sid and DATE(event.timestamp) = CURDATE() group by ip_src order by cnt")
result = cursor.fetchall()
#fetch select result to list

if result:
        for record in result:
                if record[0]>100:
                #set malice count 100
                        print record[1]
db.close()

select signature,count(*) as cnt,inet_ntoa(ip_src) from event,iphdr where event.cid=iphdr.cid and event.sid=iphdr.sid group by ip_src order by cnt;

Good!
http://sgros.blogspot.tw/2012/07/querying-snort-sql-database.html