2014/05/21

簡單說明如何把新server加到原有的HP SIM

在新机器的ilo上設好ip並新加一個user
接下來在 Administration的Management裡加入 HP SIM的ip







接著login到HP SIM的管理介面
使用 選項 - 探索 - 新增一個探索









輸入新机器的ilo ip後 記得在認証裡打上ilo的user及密碼














設定後選取立即執行






如果有出現問題
再依問題進行修正 重新探索
探索完成後即可把該探索刪除或停用

昨天上架了二台新机器
可是測了一下發現 i/o的狀況如下











怎麼想都不應該差這麼多
今天早上進raid的config看了一下
原來是cache沒打開

現在的工程師
連這個都不會
昨天中午停電
關掉了几台proxmox
想不到晚上的備份竟然停了
出現以下的error

INFO: starting new backup job: vzdump 115 --remove 0 --mode snapshot --storage nfs6_bck --node proxmox76
INFO: Starting Backup of VM 115 (qemu)
INFO: status = running
INFO: unable to open file '/etc/pve/nodes/proxmox76/qemu-server/115.conf.tmp.191828' - Permission denied
INFO: update VM 115: -lock backup
ERROR: Backup of VM 115 failed - command 'qm set 115 --lock backup' failed: exit code 2
INFO: Backup job finished with errors
TASK ERROR: job errors

早上把所有机器打開,再手動備一次
就ok了
今天晚上再觀察看看

2014/05/20

cisco 3750常會發生斷電後網路不通的情況
telnet 到該台机器後看到的vlan狀況如下

Vlan101 is up, line protocol is down

再看每個port的情況發現在該vlan中所有的port的情況都如下所示

GigabitEthernet1/0/1 is administratively down, line protocol is down (disabled)

最快的方式
conf t
int ra gi 1/0/1 - 24
shutdown
no shutdown

把所有的port重開一次

恢復正常

2014/05/15

今天又有user反應校外不能寄信的問題
參考了一下這篇
設定完成後
不管校內校外都不能發信了
看了一下log
fatal: no SASL authentication mechanisms
warning: xsasl_cyrus_server_get_mechanism_list: no applicable SASL mechanisms

參考以下連結
http://www.electrictoolbox.com/postfix-smtp-auth-no-sasl-authentication-mechanisms/

發現還要裝上 cyrus-sasl-plain 才能用

yum install cyrus-sasl-plain

2014/05/13

本來一直使用來統計的google map
這個apps官方只支援到5
當時升到6後必須手動安裝後才能使用
但作者也似乎沒有改版的動作
升到6.1後完全不能用了
Orz
查了一下文件
發現splunk直接提供了一個geostat的指令可以使用
不再需要google map這個app了
指令如下

* | iplocation src | geostats count

因為在我送到splunk的資料中 src 後面帶的是攻擊者的ip
如果是使用其他字串
請自行修改

2014/04/21

ubuntu 14.04把apache的預設目錄改回
/var/www/html了

2014/04/20

proxmox 3.0之後就已經announce可以使用link clone
但之前在clone時一直找不到這個選項
只有full clone
今天再仔細看了一下文件
原來要先把机器convert to template
才能使用link clone
只是轉成template後就不能再boot來用了
而且如果是放在local disk上
guest是不能migrade的

2014/04/18

升完ubuntu 14.04的問題還沒完
squid3也碰到問題了
squid.conf要改的有三個地方

原本放在/usr/lib/squid3 的 squid_ldap_auth 不見了
要改為 basic_ldap_auth

auth_param basic children 2
acl manager proto cache_object
以上這二行要mark掉

不然squid是起不來的
今天是ubuntu 14.04 release的日子
一開始upgrade時總是有三個檔案有問題
後來把source改到米國就ok了
但升完smokeping卻發生圖出不來的問題


查了一下rrd都有正常update
原來是apache2的升級把smokeping的site砍了
補回去
ln -s /etc/apache2/sites-enabled/smokeping.conf /etc/smokeping/apache2.conf
service apache2 restart
恢復正常

http://askubuntu.com/questions/365088/smokeping-web-front-end-on-ubuntu-13-10

2014/04/12

2014/03/31

crontab 預設最小的單位是分,如果需要crontab以秒執行,則可以這樣做~~

以下方法將每15秒執行一次

1.編輯crontab
# crontab -e

QUOTE:

* * * * * /bin/date >>/tmp/date.txt
* * * * * sleep 15; /bin/date >>/tmp/date.txt
* * * * * sleep 30; /bin/date >>/tmp/date.txt
* * * * * sleep 45; /bin/date >>/tmp/date.txt

2.檢查結果
# tail -f /tmp/date.txt

說明:需要將 /bin/date 更換成你的命令即可

================================================

如果需要精確到每秒執行一次...則可以寫Shell 的方式運作

1.編寫shell腳本

# mkdir /root/bin

# vi /root/bin/time.sh

QUOTE:
#!/bin/sh

while [ true ]; do
/bin/sleep 1
/bin/date >>/tmp/date.txt
done

2.後台運行
# nohup /root/bin/time.sh &

3.確認每秒執行

# tail -f /tmp/date.txt

http://www.adj.idv.tw/html/32/t-76632.html

2014/03/29

一般每5分鐘執行的crontab如下
*/5 * * * * command

但如果要在 2,7,12...分執行的話 指令如下
02-59/5 * * * * command

2014/03/25

原來lftp可以用來下載torrent
現在才知道
語法如下
先進入lftp

lftp>torrent abc.torrent -O /path/to/save

2014/03/23

一直以來user打電話來詢問網路狀況的時候都會先到splunk去查帳號跟ip 的對應
之後到到LP去查詢該ip 是否被block
但必須要進二個系統去查
有點麻煩
今天在想有沒辦法直接在splunk就可以查到所有的資料
因此必須把lp上的資料丟到splunk上

程式如下

#!/usr/bin/python

import MySQLdb,sys

db = MySQLdb.connect(host="localhost", user="root", passwd="123456", db="test")
cursor = db.cursor()

#cursor.execute("select StartTime,SourceHost,Cause,ReleaseTime from  BlockItem order by StartTime")
cursor.execute("select StartTime,SourceHost,Cause,ReleaseTime from  BlockItem where StartTime between date_add(now(), interval - 5 minute) and now()")
result = cursor.fetchall()
if result:
        for record in result:
                print record[0],
                print "ip=",
                sys.stdout.softspace=0
                print record[1],
                print record[2],
                print record[3]
db.close()

重點在where StartTime between date_add(now(), interval - 5 minute) and now()
每次取出這個時間點往回算5min的資料
以避免splunk重複地計入

2014/03/20

一直使用vnc的反向連線來作為電腦支援之用
但原來使用的viewer版本太舊
以致於在win8連線時會出現一些很奇怪的狀況
所以想使用bat去call最近版本的viewer
但又碰到一個問題就是bat的dos視窗還要手動去關
很麻煩
google了一下資料
只要在bat使用start就可以了
方便
之後有新版ultravnc時只要把這個批次檔copy到同一個資料夾就好了

檔案內容如下

start vncviewer.exe -listen 81
exit

http://www.weithenn.org/2014/01/cmd-exit-after-exec-batch-file.html

2014/03/10

aruba ap 105的怪事今天又發生了
ap大約每10秒亮一次紅灯 約0.5秒
測試線路也沒有問題
電壓也沒有問題
該ap拿回來直接接injector也沒問題
但就是開不了机
算了
換一台
就好了

七月還沒到
Orz

2014/03/03

之前一直都是使用xming來當做 m$ windows上的x server
發現了一個更好用的東東
內建ssh client及x server還有一堆功能
太強大了

2014/03/01

本來不太使用的coventive nas因為user的一個需求
必須在create一個帳號
但建完帳號發現quota無法設定
而且之前針對user設定的quota也都不見了
連絡原廠後原廠判定是home的file system有問題
而且原廠判定home的filesystem是xfs
而xfs的quota是記錄在filesystem內
所以做成以上結論
解決方法是找一個空間把home的資料co出來
重建home再放回去
我以xfs重建完home後
發現quota還是不能設定
找了一下coventive竟然沒有xfs_quota這個指令
再想一想應該還是使用ext3才對
繞了一大圈
最後總結應該是

把home裡的
.aquota.group
.aquota.user
這二個檔砍了
重跑quotacheck
再重新設定每個user 的quota應該就解決了
Orz

2014/02/19

今天有一台 cisco 3750 cpu莫名的飆高
目前重開後ok
找到下列文件
如果再發生方便查原因

http://www.cisco.com/c/en/us/support/docs/switches/catalyst-3750-series-switches/68461-high-cpu-utilization-cat3750.html#pbr

2014/02/10

昨天host重開
有一個guest一直停在

Booting from Hard Disk...

倒回之前的backup也沒用
想不到是grub壞了
修復方法如下
到底是誰搞壞的
Orz

單單利用 grub 安裝開機程式

你也可利用 grub 這個指令來安裝開機程式,它卻不會在 /boot/grub 內安裝 Grub 的檔案。要是開機程式被蓋過或損壞了,此方法可修復 Grub 的安裝。

執行 grub。
你可選擇執行 find /boot/grub/stage1 尋找哪個分割區在 /boot/grub 內含有 Grub 所需的檔案。如果你的 /boot 採用獨立分割區,請執行 find /grub/stage1。
執行 root [按 Grub 方式命名的分割區] 來指定哪個分割區的 /boot/grub 內含有 Grub 檔案及備有 /boot/grub/grub.conf。
利用 setup [按 Grub 方式命名的開機程式位置] 來安裝開機程式。
執行 quit 來離開 Grub 程式。
範例:


[root@localhost ~]# grub
Probing devices to guess BIOS drives. This may take a long time.

    GNU GRUB  version 0.97  (640K lower / 3072K upper memory)

 [ Minimal BASH-like line editing is supported.  For the first word, TAB
   lists possible command completions.  Anywhere else TAB lists the possible
   completions of a device/filename.]

grub> find /boot/grub/stage1
 (hd0,5)
 (hd0,9)

grub> root (hd0,5)
 Filesystem type is ext2fs, partition type 0x83

grub> setup (hd0)
 Checking if "/boot/grub/stage1" exists... yes
 Checking if "/boot/grub/stage2" exists... yes
 Checking if "/boot/grub/e2fs_stage1_5" exists... yes
 Running "embed /boot/grub/e2fs_stage1_5 (hd0)"...  15 sectors are embedded.
succeeded
 Running "install /boot/grub/stage1 (hd0) (hd0)1+15 p
(hd0,5)/boot/grub/stage2
/boot/grub/grub.conf"... succeeded
Done.

grub> quit

http://wiki.centos.org/zh-tw/HowTos/GrubInstallation

2014/02/07

製作ocs client佈署程式時
使用7z sfx maker一定要設定解壓縮路徑
否則在copy時會把不相關的檔案都copy到ocs的資料夾內


2014/02/05

VBoxManage startvm vmname --type gui

VBoxManage snapshot vmname restorecurrent

VBoxManage snapshot vmname restore snapshot_name

http://xx3d2ybnf.pixnet.net/blog/post/119457139-virtualbox-%E7%94%A8%E4%BE%86%E9%80%B2%E8%A1%8C%E7%9B%B8%E9%97%9C%E7%AE%A1%E7%90%86%E7%9A%84%E7%B5%82%E7%AB%AF%E6%A9%9F%E6%8C%87%E4%BB%A4-vboxma
proxmox在最近的 test update把open vswitch加進去了
今天試玩了一下
首先要手動安裝openvswitch

apt-get install openvswitch-switch

再來在管理介面中移除原本的bridge (二者無法共存)
之後在管理介面
network - create - ovs bridge


設好之後reboot
如圖所示為vmbr1 因為vmbr0已被之前的bridge使用
所以reboot後要到/etc/network/interface把vmbr1改為vmbr0
否則必須重改所有guest的network

open vswitch的相關文件如下

http://www.sdnap.com/wp-content/uploads/2013/05/OpenvSwitch%E5%AE%89%E8%A3%85%E5%8F%8A%E9%85%8D%E7%BD%AE.pdf

2014/01/21

postfix如果要利用header_checks來check中文是會有問題的
必須先把中文進行編碼
網址如下
http://www.mytju.com/classCode/tools/base64.asp
要分utf8或big5

編出來之後再加入header_checks
/^Subject:.*5biQ5oi3/ DISCARD
/^Subject:.*pc6k4Q==/ DISCARD

postfix要重啟

2014/01/16

Gluster 系統服務
啟動Gluster服務:
指令:
service glusterfs-server start

停止Gluster服務:
指令:
service glusterfs-server stop

檢視Gluster服務:
指令:
service glusterfs-server status

Gluster 節點指令
檢視Gluster 節點狀態:
指令:
gluster peer status

新增Gluster 節點:
指令:
gluster peer probe <HOSTNAME>
說明:
HOSTNAME為您要新增該節點的主機名稱

刪除Gluster 節點:
指令:
gluster peer detach <HOSTNAME>
說明:
HOSTNAME為您要刪除該節點的主機名稱

Gluster 卷冊指令
檢視Gluster 卷冊狀態:
指令:
gluster volume info

新增分散式卷冊(Distributed Volumes):
指令:
gluster volume create <NEWVOLUMENAME> [transport [tcp | rdma | tcp,rdma]] <NEWBRICK1> <NEWBRICK2>...
說明:
1.NEWVOLUMENAME為您要新增的卷冊名稱
2.transport為傳輸模式,預設不輸入該指令參數是使用tcp模式
3.NEWBRICK為您要新增至卷冊之節點儲存區塊

新增複製式卷冊(Replicated Volumes):
指令:
gluster volume create <NEWVOLUMENAME> [replica COUNT] [transport [tcp |rdma | tcp,rdma]]<NEWBRICK1> <NEWBRICK2>...
說明:
1.NEWVOLUMENAME為您要新增的卷冊名稱
2.replica COUNT為副本的數量
3.transport為傳輸模式,預設不輸入該指令參數是使用tcp模式
4.NEWBRICK為您要新增至卷冊之節點儲存區塊

新增帶狀式卷冊(Striped Volumes):
指令:
gluster volume create <NEWVOLUMENAME> [stripe COUNT] [transport [tcp | rdma | tcp,rdma]]<NEWBRICK1> <NEWBRICK2>...
說明:
1.NEWVOLUMENAME為您要新增的卷冊名稱
2.stripe COUNT為帶狀的數量
3.transport為傳輸模式,預設不輸入該指令參數是使用tcp模式
4.NEWBRICK為您要新增至卷冊之節點儲存區塊

新增分散複製式卷冊(Distributed Replicated Volumes):
指令:
gluster volume create <NEWVOLUMENAME> [replica COUNT] [transport [tcp | rdma | tcp,rdma]]<NEWBRICK1> <NEWBRICK2>...
說明:
1.NEWVOLUMENAME為您要新增的卷冊名稱
2.replica COUNT為副本的數量
3.transport為傳輸模式,預設不輸入該指令參數是使用tcp模式
4.NEWBRICK為您要新增至卷冊之節點儲存區塊

增加儲存區塊(Brick)至現有卷冊中:
指令:
gluster volume add-brick <VOLUMENAME> <NEWBRICK>
說明:
1.VOLUMENAME為您要加入儲存區塊的卷冊名稱
2.NEWBRICK為您要新增至卷冊之節點儲存區塊

移除儲存區塊(Brick)於現有卷冊中:
指令:
gluster volume remove-brick <VOLUMENAME> <BRICK> start
說明:
1.VOLUMENAME為您要移除儲存區塊的卷冊名稱
2.BRICK為您要移除儲存區塊名稱

檢視移除儲存區塊(Brick)狀態:
指令:
gluster volume remove-brick VOLUMENAME BRICK status
說明:
1.VOLUMENAME為您所移除儲存區塊的卷冊名稱
2.BRICK為您要移除儲存區塊名稱

提交移除儲存區塊(Brick)狀態:
指令:
gluster volume remove-brick VOLNAME BRICK commit
說明:
1.VOLUMENAME為您所移除儲存區塊的卷冊名稱
2.BRICK為您要移除儲存區塊名稱

啟用卷冊:
指令:
gluster volume start <VOLUMENAME>
說明:
VOLUMENAME為要啟用的卷冊名稱

停用卷冊:
指令:
gluster volume stop <VOLUMENAME>
說明:
VOLUMENAME為要停用的卷冊名稱

刪除卷冊:
指令:
gluster volume delete <VOLUMENAME>
說明:
1.VOLUMENAME為要刪除的卷冊名稱
2.要刪除卷冊之前必須要先停用卷冊

掛載卷冊
手動掛載卷冊:
指令:
mount.glusterfs HOSTNAME-OR-IPADDRESS:/VOLUMENAME MOUNTDIR
說明:
1.HOSTNAME-OR-IPADDRESS為您所要掛載的主機名稱或IP及掛載的卷冊名稱
2.MOUNTDIR為您所要掛載的目的地路徑
參考資料:http://www.gluster.org

http://ithelp.ithome.com.tw/question/10107251

2014/01/07

python 從2.4開始建議使用
subprocess來取代

os.system
os.spawn*
os.popen*
popen2.*
commands.*

除了 subprocess.call() 之外,另外還有 check_call() 跟 check_output()。

除了 check_output 會回傳 output 之外,用法相同跟 call() 一樣。只不過會自動檢查 return code,如果是非零值的話,就會直接丟出 CalledProcessError,這個時候 return code 還是可以透過 returncode 這個 attribute 來取回。例如:(但是要執行的程式不存在時,還是會丟出 OSError)

如果要捉取回傳的值來進行某些判斷的話
就要使用subprocess.check_output()
範例如下

import subprocess

a = subprocess.check_output("dir", shell=True)
print a

b = a.find('zz')
print b


http://docs.python.org/2/library/subprocess.html
http://imsardine.wordpress.com/tech/shell-scripting-in-python/

2014/01/05

import telnetlib

f = open("switch")
lines = f.read().splitlines()
#print lines
command_arr = ["123456","en","123456","terminal length 0","sh mac add","exit"]
#print command_arr

for HOST in lines:
#print HOST
tn = telnetlib.Telnet(HOST)
for command in command_arr :
        tn.write(command + "\n")
#print tn.read_all()
content = tn.read_all()
print content
chk = content.find("1122.3344.5566") #找出這個mac是否在這台switch上 在那一個port上
print chk
tn.close()

python 讀檔

f = open("1")
lines = f.read().splitlines()
 #如果不用spllitlines則會把分行符號\n一起放到list去

print lines
#列出lines這個list的所有示素

for i in lines:
print i
#分行列出list裡的所有元素

結果如下
['afdkfj', 'fsldfjk', 'fjslfk', 'fsdlkfj', 'fsldfj']
afdkfj
fsldfjk
fjslfk
fsdlkfj
fsldfj

2014/01/04

使用python的 telnetlib對網路設備進行一些自動化的操作
範例如下


import telnetlib

HOST = "1.1.1.1"

tn = telnetlib.Telnet(HOST)

tn.read_until("Password: ")
tn.write("12345\n")
tn.read_until("cc>")
tn.write("en\n")
tn.read_until("Password: ")
tn.write("12345\n")

tn.write("sh flash\n")
tn.write("exit\n")
print tn.read_all()

http://blog.johnsonlu.org/category/programe/pythin/
http://docs.python.org/2/library/telnetlib.html

2014/01/01

最近碰到一個很奇怪的問題
使用了一段時間的aruba ap
突然發生無法使用的情況
查了一下brocade icx 6450的log發現是ap向switch要更多的電
原本是使用802.3 af的 15400ma
但switch無法提供更多
因此視為異常而把port disable了
但該ap並不是新裝而是已經使用一段時間了
搞不清楚到底是ap還是switch 的問題
因為有二顆出現這個情況
所以先送修一個回aruba原廠
同時詢問brocade原廠
大約隔了二週
 brocade給了一個針對poe module的patch
上上去之後
目前看起來是正常
更新指令如下

 inline power install-firmware [stack-unit |unit-number] tftp ip-address filename

必須先用show run看poe是在那一個unit
今天稍微玩了一下lxc

如果只用linux是可以考慮的選擇
但支援的linux也不多
目前支援的如下圖

有web介面可以管理
如下連結
http://lxc-webpanel.github.io/index.html

web介面安裝指令
wget http://lxc-webpanel.github.io/tools/install.sh -O - | bash

但要進入guest的console還是要下指令

相關指令如下
lxc-create  -n  虛擬機器名稱  -t  ubuntu

lxc-console -n 虛擬機器名稱

sudo lxc-shutdown  -n 虛擬機器名稱

如果不熟linux的應該會不太適應

不過效能上應該是比較好的
測試的環境是先在virtualbox上裝ubuntu
之後才在ubuntu上裝lxc
guest中的guest
沒有什麼lag

http://www.arthurtoday.com/2012/10/ubuntu-create-and-setting-lxc-containers.html#.UsOuPtIW2So

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

2013/11/27

當使用程式在windows去呼叫指令的時候
如果沒有特別指定
一律會使用32bit的方式來跑
http://evenrain.com/32-bit-python-get-problem-in-x64-windows/

為了解決python在64bit OS上的問題
程式作了如下的修正

if os.path.isdir('c:\Program Files (x86)'): #判斷OS的版本
           p = subprocess.Popen( r'c:\windows\sysnative\wscript.exe c:\windows\system32\slmgr.vbs -skms 10.1.1.1:1688' )
            p.wait()
            p = subprocess.Popen( r'c:\windows\sysnative\wscript.exe c:\windows\system32\slmgr.vbs -ato' )
            p.wait()
           
解決了kms認証時會出現奇怪錯誤的問題
感謝 seek steve 的幫忙          

2013/11/26

windows清除kms key的方法

slmgr -ckms
slmgr -rearm


2013/11/14

fortiget的相關指令

diag sys top  

diag sys kill 11 <ID number>

2013/11/13

fortiget自訂firewall policy的編號

FG命令可參考設定檔內容,例如Firewall Policy規則:
(依照下例貼到console就可在web ui看到)

config firewall policy
    edit 20  -->可自訂編號
        set srcintf "port17"
        set dstintf "abc"
        set srcaddr "IP-1.2.3.4"
        set dstaddr "all"
        set action accept
        set status disable
        set schedule "always"
        set service "ALL"
        set utm-status enable
        set logtraffic all
        set av-profile "default"
        set webfilter-profile "Monitor"
        set profile-protocol-options "default"
next
end  -->Save
發現好几起使用http://www.connectify.me/的机器會一直往外丟封包
google了一下
發現這個寫得不錯
記錄一下

call startkey.cmd
@echo off
title 虛擬 WiFi
setlocal

:menu
cls
echo 請選擇 WiFi 設定
echo.
echo 目前虛擬WiFi名稱為 [ %name% ],密碼為 [ %keys% ] (採用WPA2-PSK加密)
echo.
echo 1.立即啟用虛擬Wifi網路卡 (相當於打開路由器)
echo.
echo 2.設定虛擬WiFi名稱、密碼
echo.
echo 3.開啟 虛擬Wifi網路 (須先建立虛擬Wifi網路卡)
echo.
echo 4.關閉 虛擬Wifi網路卡
echo.
echo 5.移除 虛擬Wifi網路卡
echo.
echo 6.測試是否支援虛擬Wifi網路卡
echo. & echo.
choice /c 123456 /M "請選擇 ?"
echo. & echo.
goto WiFi%errorlevel%


:WiFi1
cls
echo 建立虛擬Wifi網路卡
netsh wlan set hostednetwork mode=allow ssid="%name%" key=%keys%
echo.
echo 現在請開啟「網路和共用中心」,「變更介面卡設定」
echo.
echo 你會看見「Microsoft Virtual WiFi Miniport Adapter」這張虛擬WiFi網路卡
echo.
echo 接下來請選擇要與「虛擬WiFi網路卡」共用網路的連線裝置
echo.
echo 並且打開內容,到「共用」頁面
echo.
echo 勾選「允許其他網路使用者透過這台電腦網際網路連線來連線」
echo.
echo 並將「家用網路連線」選成你的「虛擬Wifi網路卡」
echo.
pause
echo.
echo 啟動虛擬Wifi網路卡
netsh wlan start hostednetwork
echo.
pause
goto end


:WiFi2
cls
echo 允許使用空格
echo.
set /P name=請輸入新名稱 
echo.
echo.
echo 密碼至少要8位
echo.
set /P keys=請輸入新密碼 
echo.
echo 注意將會產生一個startkey.cmd來紀錄你的密碼
echo 若是怕忘記就不要刪除,當然要刪除也是可以(要記得密碼)
echo.
echo set name=%name% > startkey.cmd
echo set keys=%keys% >> startkey.cmd
pause
goto menu

:WiFi3
netsh wlan start hostednetwork
goto end

:WiFi4
netsh wlan stop hostednetwork
goto end

:WiFi5
netsh wlan set hostednetwork mode=disallow
pause
goto end

:WiFi6
netsh wlan show drivers
pause
goto menu

:end
exit
endlocal


http://fangyuchang.blogspot.tw/2012/12/windows-7-wifi.html

這個軟体看來也ok
http://www.mypublicwifi.com/publicwifi/en/index.html

2013/11/07

最近要上ipv6
問題還真不少
首先是dhcpv6s一直起不來
最後決定放棄
用router autoconfig

再來就是dns
明明設定完了
卻一直沒有listen
找了半天才發現

/etc/sysconfig/named
裡要改成
#OPTIONS="-4"

disable 只listen ipv4

因為centos5裡的bind預設只會listen ipv4

http://forums.cpanel.net/f5/rh-5-4-update-bind-named-network-unreachable-resolving-ipv6-129889.html

2013/10/30

一個奇怪的問題
dns解不到www.sucaitianxia.com(只有本單位 但解其他又都ok)
因為user趕著用
所以想直接加到 user pc的hosts
但改完存檔一直出現存取被拒
本來以為是權限的問題
搞了半天才發現原來是avira擋了
Orz

2013/10/28

最近又開始出現私設dhcp server的問題了
看了一下dhcp協定的交握
先在L3 上把udp 68擋了
注意不要下到上層的link port了
再觀察看看要不要下到L2去

ip access-list extended dhcp_deny
deny udp any any eq bootpc
permit ip any any

int ra gi 1/0/1 - 24

ip access-group dhcp_deny in

P.S.
brocade 沒辦法使用ra下acl
Orz

2013/10/23

ubuntu在apt-get remove之後預設還會留在list後加上註記rc
以下連結提供清理的方法

http://blog.lyhdev.com/2013/01/ubuntu-linux-apt-get.html

2013/10/21

m$於上週在vlsc上開放windows 8.1的iso下載
原本以為只要直接下載回來安裝就好了
可是安裝完後kms怎麼都認証不過
google了一下才發現為了windows 8.1
kms 還要上patch後再把kms key滙入後啟用
http://support.microsoft.com/kb/2885698/zh-tw
有點想罵人
之前在測試 splunk的geo

但因為使用的是enterprise的測試key
最近license 到期了
導致無法使用
轉成free license也沒用
所以再來重裝一次
但目前的最近版本是6
裝完後直接改用free license
免的到時又有問題
直接從splunk app去找也找不到google map
到了官方網站去看
寫的是只支援到5
想說不然下載原始檔用手動裝看看可不可以用
試了後竟然ok了
先醬用囉

2013/10/11

brocade L2的機器預設spanning tree是打開的(L2 L3不同喔)
所以可以解決不管是在同一台機器上同一個port (下串的小switch)
或是不同port的loop 問題
但另外又提供了在port上可以下的loop detection的指令
因為最近發生了數起loop的問題
向原廠反映為什麼下了loop detection還是有問題
原廠才說基本上用spanning tree就夠了
不需使用loop detection
實測上也是如此
當發生loop時會auto block該port
而loop狀況解除後
會自動恢復該port
Orz

2013/09/11

brocade的port-name只能使用 - 不能是 _ 或 .
無言

2013/08/27

今天在kvm裝完win 7 x64之後要手動update時一直出現以下的訊息

Windows Update 目前無法檢查更新,因為該服務尚未執行,您可能需要重新啟動電腦

重開很多次也沒用

到以下這個網站自動修也沒效果
http://support.microsoft.com/mats/windows_update/

爬了一下文

進入 WINDOWS服務 (開始 → 在電腦按右鍵 → 管理 →服務與應用程式 → 服務  )
關閉 Windows Update服務
進入系統槽 WINDOWS 資料夾下,將SoftwareDistribution 這一資料夾完全刪除
再回到 服務,把Windows Update重新啟動
再手動更新就正常了

http://www.dcaid.com/teachs/54-teach-software/342-2013

2013/08/26

最近一直在try ubuntu上的kvm相關功能
在ubuntu上裝了virt-viewer卻一直連不上遠端的kvm
一直出現URI錯誤
試了半天發現到ssh 的另一個功能
ssh -Y abc@1.1.1.1 登入後
接下來執行的指令就都會forword到本地端來了
所以直接使用virt-manager就可以囉
早上有人反應webmail打不開
查了一下log
發現如下的情況

Aug 26 09:44:09 mail dovecot: master: Warning: service(imap): process_limit reached, client connections are being dropped
Aug 26 09:45:20 mail dovecot: master: Warning: service(imap): process_limit reached, client connections are being dropped
Aug 26 09:46:25 mail dovecot: master: Warning: service(imap): process_limit reached, client connections are being dropped
Aug 26 09:49:32 mail dovecot: master: Warning: service(imap): process_limit reached, client connections are being dropped

imap 超過預設值了

修改/etc/dovecot/conf.d/10-master.conf
#default_process_limit = 100
default_process_limit = 2000
#default_client_limit = 1000
default_client_limit = 4003

service auth {
加上
client_limit=6048
}

dovecot restart後再觀察看看
dovecot restart時如果預設值有問題
會顯示應該調整的參數

升到centos 6 後不管是postfix或是dovecot 預設值都滿低的
只能夠碰到問題再來慢慢調整了


在ubuntu 12.04上kvm要使用spice要執行的動作如下

1. apt-get install qemu-kvm-spice

2. 到/usr/bin/ 下把kvm ln 到qemu-system-x86_64-spice

    ln -s qemu-system-x86_64-spice kvm

原kvm是link到 qemu-system-x86_64

如果不改link的話 guest是無法boot的

再來就是在guest os裡安裝guest tool
在virt-manager裡修改 顯示vnc為spice
視訊改為qxl

在來就是virt-manager也無法直接使用guest console

必須 spicec -h localhost -p 5900 來連接 guest os

還有一個問題就是原來沒使用spice的机器在boot之後 在virt-manager的console也沒有畫面了
把kvm的link再改回來才正常
不知道是不是沒法共存


2013/08/25

之前介紹proxmox的spice提到聲音的部分
今天查了一下官方網站
發現聲音及usb都ok吔,但usb目前windows還不支援
只要在 /etc/pve/qemu-server/id.conf
手動加上

usb0: spice
args: -device AC97,addr=0x18

就ok了
但目前網頁介面還沒辦法操作就是了
一定要使用文字介面
感覺上有很多地方在網頁處理應該都沒什麼困難
但proxmox總是不會那麼快加上去
對不熟linux的人感覺上就是沒那麼順手

2013/08/24

調整 kvm guest i/o 效能

Storage format: raw
Cache mode: none (not default!)
I/O mode: native

儘量使用SATA而不是 IDE

2013/08/23

因為proxmox升到3.1後開始把repo分成有無訂購二個部分
而且每次登入都會跳出無license key的訊息
所以再找看看是否有其他的解決方案
於是在ubuntu上裝KVM來試看看
參考以下的文件
https://help.ubuntu.com/community/KVM
安裝還滿方便的
順便把virt-manager裝起來
就有GUI可以管理了
而network比較麻煩一點
預設安裝是起一個virbr0使用dhcp
但習慣上會直接bridge到host中一個網卡
所以要手動在/etc/network/interface上加一個br0
範例如下

auto eth0
iface eth0 inet manual

auto br0
iface br0 inet static
        address 1.1.0.1
        network 1.1.0.0
        netmask 255.255.255.0
        broadcast 1.1.0.255
        gateway 1.1.0.254
        bridge_ports eth0
        bridge_stp off
        bridge_fd 0
        bridge_maxwait 0

在create新的guest就可以手動使用br0這個網卡

再來碰到一個問題就是在x64的host上安裝了x32的win7 再指定cpu為x32
此時在guest中關机一定會reboot而無法關機
所以一定要把cpu指定為x64 而不管guest是x32或x64 才不會有這個問題

看起來proxmox的整合還是方便很多
而且要叫user再學也是成本
應該會考慮買support

2013/08/15

轉換到新mail server時發生用webmail走imap登入時無法出現資料夾的情況
查了一下log發現新版本的dovecot 有限制user+IP的連線數量
預設為10
log如下
Aug 11 20:49:07 mail dovecot: imap-login: Maximum number of connections from user+IP exceeded (mail_max_userip_connections=10): user=<test>, method=PLAIN, rip=1.1.1.1, lip=2.2.2.2
查了一下文件
先在/etc/dovecot/dovecot.conf加上
mail_max_userip_connections = 200

後正常
再觀察看看

2013/08/12

如何使用telnet 跟imap溝通

telnet localhost 143
登入 (01 要連同輸入)

01 login cross@ssorc.tw 123456
列出有那些信件夾

02 list "" "*"
信件夾狀態

03 status [MAILBOX] [MESSAGES|RECENT|UNSEEN]
進入 INBOX 這信件夾

04 select INBOX
列出 INBOX 裡的信件

05 fetch 1:* flags
列出信件表示為1 的信件表頭(header)

06 fetch 1 body[header]
列出信件表示為1 的信件內容(body)

07 fetch 1 body[text]
如果要看其它封,一定要先

08 fetch 2:* flags
刪除信件

09 store 1 flags \Deleted

http://itindex.net/detail/43564-telnet-%E6%8C%87%E4%BB%A4-imap

2013/08/10

在rsync大量資料時
如几百G或上T
常常會有中斷的情況
此時就需要使用續傳
指令如下

rsync -avzP   /src          /dst
                  原目錄  目的目錄

http://my.huhoo.net/archives/2008/12/rsync.html

2013/08/07

決定使用(也沒有選擇)xfs後才知道xfs的quota跟ext是不同的

首先是/etc/fstab要加上 uquota 這也跟ext的不同

接下來是設定的指令

xfs_quota -x -c "limit -g bsoft=10000m bhard=10100m sample_quota" /dev/sdb1

以下是show 出所有人quota的指令
xfs_quota -x -c report /dev/sdb1

再來這個就相同了
把user2的quota設成跟user1相同
edquota  -p user1  user2

2013/08/06

今天開始mail server的移轉前置工作
首先就遇到了storage過大的問題
因為這次買的机器肚子全部插滿
所以容量有27TB
因此原本經常使用的fisk已經沒法處理這麼大的容量
必須使用parted
指令如下

# parted /dev/sdb 

parted>mklabel GPT 

parted>print //查看空间

parted>mkpart primary 0 xxxx //创建主分区,xxxx是上一步得来的数据.(mkpart extended创建扩展分区)

parted>print //查看分区情况

parted>quit //退出

# partprobe

# mkfs.ext3 /dev/sdb1 //对分区进行格式化,创建文件系统

此处情况下,在mkfs.ext3 /dev/sdb1 还会出现一个错误,错误信息如下所示:

# mkfs.ext3 /dev/sdb1

mke2fs 1.39 (29-May-2006)

mkfs.ext3: Size of device /dev/sdc1 too big to be expressed in 32 bits using a blocksize of 4096.

来看看ext3文件系统对单个文件和整个文件系统的最大尺寸的限制情况,这些情况依赖文件系统的块大小。如下所示:

块大小     最大文件     最大文件系统

1kb          16G             2T

2KB          256G           8T

4KB           2T               16T

8KB           16T             32T

因此上面格式化时就会报错。系统默认快大小是4kb,而磁盘是21.7T,已经超过了最大系统文件大小了。因此需要修改块大小。或划分为多个分区(不得超过16T)。

# mkfs.ext4 -b 8192 /dev/sdb1

http://www.ttlsa.com/html/920.html

後記

若依上述方法可以mkfs但無法mout
因為目前ext4在centos6中最大的支援大小為16T而且block為4k
參考
http://tetralet.luna.com.tw/index.php?op=ViewArticle&articleId=214&blogId=1
決定使用btrfs
下完mkfs.btrfs按下enter馬上就ok
原本以為有問題
再下一次
還是馬上ok
mount看看
可以用吔
看來btrfs真不是蓋的

使用btrfs還是有問題
再改成xfs

20240304 新增

由於在使用parted 分割在mkpart時輸入End的計算一直有問題
所以如果要使用全部的空間
建議直接打 100% 就可以了
過程如下

(parted) mkpart /dev/sda
File system type?  [ext2]? xfs                                            
Start? 1                                                                  
End? 100%                                                                 
(parted) print                                                            
Model: SYNOLOGY Storage (scsi)
Disk /dev/sda: 32.2TB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 

Number  Start   End     Size    File system  Name      Flags
 1      1049kB  32.2TB  32.2TB  xfs          /dev/sda

最近二個月在新机器上出現了二次i/o的問題
今天打電話去原廠
本來是要問有沒有新的mirror box的產品
順便問了一下i/o的問題
原廠才提到使用在nas或mirror box上的硬碟必須有
TLER(time-limited error recovery)的功能
而目前市面上非企業級硬碟為了cost down
都把這個功能拿掉了
導致机器運作的過程中就會有問題
所以之後在買硬碟前
必須打電話回原廠
詢問有那些硬碟有這個功能
才能買囉
所以pc隨机出貨的硬碟大概也都不能用了
XD

2013/07/31

proxmox前不久把SPICE加入了pvetest的部分
主要的目的是利用SPICE讓client的顯示更順
放大縮小畫面的時候也會跟著調整
mouse wheel也可以使用了
目前使用1080p來看youtube的影片還滿順的
再來就只差聲音的部分了

說明一下設定的步驟

1. 把guest os的顯卡改為SPICE


2. 再來在guest os裡安裝 SPICE guest tool

3. 在要管理guest os的机器上安裝 virt-viewer
    http://virt-manager.org/download/sources/virt-viewer/virt-viewer-x86-0.5.6.msi
    http://virt-manager.org/download/sources/virt-viewer/virt-viewer-x64-0.5.6.msi

以上軟体在
http://spice-space.org/download.html


4. 啟動guest os後點選Spice


在chrome上會下載一個.vv的檔案
直接執行即可
系統會以virt-viewer打開
firefox則會直接以virt-viewer打開

2013/07/24

Ruckus 需用之mib

ruckusZDWLANAPNumSta 1.3.6.1.4.1.25053.1.2.2.1.1.2.1.1.15 Total number of
authenticated
terminal which is
using currently
on this AP.

ruckusZDWLANAPIPAddr 1.3.6.1.4.1.25053.1.2.2.1.1.2.1.1.10 IP address.


Number of total Clients
1.3.6.1.4.1.25053.1.2.2.1.1.1.1.1.12

2013/07/22

在config cisco port description的過程中發現只要打到某些中文字就會出現異常

進config mode後加入以下二行指令就正常了

default-value exec-character-bits 8
default-value special-character-bits

2013/07/18

有一段時間沒使用openvas
今天要使用時發現已經升到openvas 6了
但要登入時一直出現

OMP service was down

先執行
openvas-setup

還是不行
只好到原始網站下載工具來check
http://www.openvas.org/setup-and-start.html

一面跑一面補
看到有error的地方就照指示執行一下指令
跑完後reboot
目前看來ok

2013/07/07

mollify

最近有個需求就是要讓user能上傳檔案
而且最好是能自行註冊 註冊完後順便開好目錄
而目錄只供自己使用 別人無法進入
找到了mollify
必須使用到mysql
但安裝好後user self registration的plugin並未啟動
必須在configuration.php裡加上一些參數

問題在於第一個使用者註冊後的user folder會被設定為public
接下來註冊的user登入後就會有二個目錄
目前的解決方法是把第一個使用者目錄的權限設為所有人read only而且不放資料
讓接下來的使用者只能把資料放在自己的目錄內

2013/07/03

brocade mac snmp

暑假要把大部分的L2 換成brocade ICX
查了一下資料
做個記錄

在ubuntu 12.04中

iso.3.6.1.2.1.4.22.1.2.5.192.168.101.178 = Hex-STRING: 00 0D 54 A0 A6 C9

iso.3.6.1.2.1.4.22.1.2 這一段是由snmp要撈取的固定OID

5 代表的則是這個 ip mac所在的實體port

192.168.101.178 是 mac 所對應到的ip

00 0D 54 A0 A6 C9 是机器的 mac 一定要是大寫

轉換大小寫的語法如下
echo AbcDEFg | tr a-z A-Z
ABCDEFG


iso.3.6.1.2.1.2.2.1.7.9    9 代表實体port

可使用snmp set    1:up   2:down


2013/07/02

DOS模式下測i/o批次檔

DOS模式下測io批次檔

:cp
echo %TIME% >> k:\time.txt
copy c:\abc.txt k:\abc.txt
echo %TIME% >> k:\time.txt
echo ========== >> k:\time.txt
goto cp

2013/06/27

目前 /etc/fstab都改用UUID來替代之前 /dev/sdx的方式了
如何查uuid呢
在/dev/disk下有几個目錄可以看得到

http://blog.lefthander.tw/2010/03/ubuntu-uuid.html

2013/06/24

因為有可能要做主机的升級
有資料必需要移到新机器上
之前使用clonezilla時有提供利用ssh mout遠端目錄的功能
使用的是sshfs
在centos 5.6 以上只要yum install sshfs -y
接下來

usage: sshfs [user@]host:[dir] mountpoint [options]

http://talk.away.com.tw/main/modules/weblog/details.php?blog_id=167

2013/06/20

昨天把win的log丟到log server後分析程式出現問題
就是看不到本文
所有的log變成了附件
要看的話就很麻煩
改用mutt來寄
語法跟mail其實差不多

 mutt [-a 附加檔] [-i 內文檔] [-b 秘密副本] [-c 一般副本]   [-s 信件標題] email位址 < mail內容
http://linux.vbird.org/linux_server/0380mail.php#mua_mutt

中文就ok了

2013/06/19

早上發生一台win 2012 server 出現自動重開的情況
而重開發顯示捉不到HD
mirror box的lcd則出現rebuild的訊息
把有問題的hd先拔出後
再重開
chkdsk
service壞了好几個
看了一下log
發現昨天早上就出現hd有問題
找了一下
找到
https://code.google.com/p/eventlog-to-syslog/
http://ssorc.tw/?p=1197
這個可以把win的log丟到syslog

將 evtsys.dll 及 evtsys.exe 放至 %systemroot%system32

%systemroot%system32evtsys -i -h 1.1.1.1

net start evtsys

若要uninstall

net stop evtsys
%systemroot%system32evtsys -u

在log server上就會有記錄了

但出現的是主机名稱而不是ip
coding撈資料的時候要注意一下

2013/06/04

前不久安裝了smokeping
補一下監控的部分
先裝上mail client
apt-get install mailutils

#vi /etc/smokeping/config.d/Alerts

*** Alerts ***
to = derek@faq-book.com   #設定要收到警報信件的信箱
from = faq@faq-book.com   #設定本機發信的帳號
+someloss
type = loss
# in percent
pattern = >0%,*12*,>0%,*12*,>0%
comment = loss 3 times  in a row

以下為範例

+lossdetect
 type = loss
 # in percent
 pattern = ==0%,==0%,==0%,==0%,>20%,>20%,>20%
 comment =
#說明 : 這是用來偵測突然間loss封包
 +miniloss
 type = loss
 # in percent
 pattern = >0%,*4*,>0%,*4*,>0%
 comment =
#說明 : 當連續兩個週期封包都有loss 4個或高於0%,且在第三個週期封包高於0 %的話就alert
+someloss
 type = loss
 # in percent
 pattern = >20%,>20%
 comment =
#說明 : 當連續兩個週期封包都Loss高於20% 時就alert
 +rttdetect
 type = rtt
 # in milliseconds
 pattern = <10,<10,<10,<10,<10,<100,>100,>100,>100
 comment =
#說明: 如果當前5次延遲小於10 ms,第6次小於100 ms而從第7次開始連續三次都高於100 ms的話就alert
 +rttbadstart
 type = rtt
 # in milliseconds
 pattern = >4.5,>4.5
 comment =
#說明 : 在連續兩個週期內ping值平均都高於4.5 ms時就alert

接下來要在/etc/smokeping/config.d/Targets裡
每一個要監控的device最後加上

alerts = lossdetect,miniloss  <------  加入所需要的監控條件

service smokeping restart

http://ithelp.ithome.com.tw/question/10076486

2013/06/03

早上在接某棟樓的單模光纖時發生了問題
有時在core端灯有亮 而且interface有up 但遠端灯沒亮也沒up
有時在遠端灯有亮 而且interface有up 但core灯沒亮也沒up
gbic測過也沒壞
猜測是光纖跳接線的問題
下午拿一條過去換
接上就ok了
記錄一下
mail server一直以來發生一個問題
就是user quota爆掉後
在log就會出現

r52CXO8W032653     9968 Sun Jun  2 20:33 <notification+zrdo6rzil6le@pages.facebo
                 (Deferred: local mailer (/usr/bin/procmail) exited with EX_TE)
<abc@abc.com>

看起來是因為quota 爆了之後信就會卡在queue裡而不會退信
參考了一下這個
http://phorum.vbird.org/viewtopic.php?f=2&t=15986&start=0

發現解決的方法是拉大quota 的soft和hard 並把grace調為1天
這樣user就會收到quota的告警信 而且在queue裡信超過一天就會被退掉
不會塞在queue中
設定grace的指令如下

edquota -f /dev/sda1 -t

另外之前有提到當user的quota滿了之後信會寫到 /var/spool/mail
所以也順便在 /home開了一個mailq的目錄
再 ln -s /var/spool/mail /home/mailq
這樣quota就全算在一起了

2013/05/31

aruba campus ap改成remote ap的步驟









在configuration > security > authentication > internal DB
加入username password
role選擇authenticated












configuration > Advanced Services > VPN Services
加上address pool
及IKE Shared Secrets

再來
configuration > wireless > ap installation
選要改為remote ap的ap按下 provision















選擇 remote ap
打入 之前的IKE PSK
取消  Use Automatic Generation
打入 username password
重新修改ap的ip相關資料

PS 無法直接從ap的console改成remote ap 一定要先定義成campus ap再由controller改為 remote ap

2013/05/30

在設計網頁的時候常會需要插入圖片
但市面上多的是列印成pdf的虛擬印表机
還要把pdf再轉成jpg
除了不方便外還有畫質會變差
找到了這個 bullzip
除了pdf外
還可直接列印成相當多的圖檔格式
方便多了

2013/05/28

以下是如何在fortiget開啟debug並經由GUI的設定過程得到script的步驟
把script存檔
之後就可以經由修改存下來的檔案
使用ssh經由forti clinet來下指令了


































http://www.fortihelp.com/2008/06/how-to-create-quick-scripts-using-gui.html
FWS 624升級firmware後client拿不到ip 的問題終於有了解答

目前使用的 FGS04302c.bin這個版本在打開dhcp snooping的時候
並不會在dhcp的封包加上option 82的訊息
但之後的版本會
如下圖所示
而封包向上流會經過cisco 3750
問題就來了 cisco預設會丟棄含有option 82的封包
但有指令可以讓cisco不做check

ip dhcp relay information trust-all (全域)

ip dhcp relay information trusted (每埠或vlan)

但目前在cisco 3750上又開啟了dhcp snooping
導致以上二個指令在這種情況是無法作用的

接下來就只剩一個解法了

在brocade的每一個port加上

no dhcp snooping relay information

讓brocade不要在封包加上option 82

問題是這個指令無法使用 int e 0/1/1 to 0/1/24 來下
要一個port 一個port下
有一千多個port 喔
想到就累 @@

2013/05/26

升到proxmox 3.0
發生一個很嚴重的問題
所有的nfs竟然都mount不上
在server上出現以下的log

May 26 06:56:00 proxmox30 pvestatd[5548]: WARNING: mount error: mount.nfs: an incorrect mount option was specified

初步看來是mount nfs是有一個option有問題
可是在proxmox的管理介面上並沒有地方可以設定mount nfs的option
應該要進os手動去改了

再仔細查了一下
因為proxmox 3.0的os已經升成debian 7.0了
而原來的要mout nfs所使用的portmap已經換成rpcbind 導致必須設定某些參數才能使用
進os手動去下mount nfs時出現

mount.nfs: rpc.statd is not running but is required for remote locking.
mount.nfs: Either use '-o nolock' to keep locks local, or start statd.
mount.nfs: an incorrect mount option was specified

而原來所使用的/etc/pve/storage.cfg並沒有設定nolock這個option
而如上所述在proxmox的管理介面上也沒有地方可以加option
只好手動來了
在/etc/pve/storage.cfg上所有有關nfs的storage上手動加上 options nolock
範例如下

nfs: nfs104_iso
        path /mnt/pve/nfs104_iso
        server 1.1.1.104
        export /mnt/vm_data/ISO
        options nolock
        content iso

reboot或是
/etc/init.d/rpcbind restart
/etc/init.d/nfs-common restart

就可以了

2013/05/23

為了監控RTT的狀況
安裝smokeping來用
之前有裝過
但移机時沒有移到 不知道到那裡去了
考慮到安裝方便性
直接使用ubuntu 12.04
os裝好後
apt-get install smokeping就ok了
但有二個問題

第一是smokeping預設要使用sendmail來發信
如果沒有裝 會有錯誤訊息
但相依性並沒有檢查到
所以要再手動
apt-get install sendmail

第二是
rrd檔的預設路徑在 /var/lib/smokeping
可是安裝時並未建立Local這個資料夾
所以要再手動建立並把owner改為smokeping.smokeping
或直接chmod -R 777

config路徑為
/etc/smokeping/config.d
主要修改Targets這個檔案就可以了

改完後一定要 service smokeping restart


2013/05/18

找到了ip geo更方便的解決方案
splunk加google map



http://danielmiessler.com/blog/visualizing-interesting-log-events-using-splunks-google-maps-application
http://cyrilwang.blogspot.tw/2012/07/splunk-google-maps.html
http://www.sepier.com/blog/data-visualized-splunk-google-maps/
之前開始使用snort來detect port scan之後
所有ip都有記錄起來
今天想到是不是可以把這些ip直接畫在地圖上
這樣出來的圖應該很美 :D
於是找到了這個網站
http://freegeoip.net/
只要把ip貼上
就可以拿到有關這個ip的相關地圖資料(包含經緯度)
使用 wget 指令

http://freegeoip.net/{format}/{ip_or_hostname}
Supported formats are csv, xml or json.

wget http://freegeoip.net/csv/$i -O ip_tmp
cat ip_tmp |cut -d "," -f 8,9 >> map
單獨取出經緯度
這樣就可以畫在地圖上了
接下來到這個網站
http://gissrv4.sinica.edu.tw/gis/tools/geocoding.aspx

把上面產生出來的map資料貼上去



大功告成

再來就是思考要怎麼自動化了

snmp oid
counter32 和counter64的區別

counter32 其能表示最大值为2^32Byte=4GB
counter64 最大值为16EB
值的概念是如果giga滿載 counter64要4000多年才能達到
但是如果是counter32的呢 giga滿載只要32秒即可達到此值 而到達後值就會reset
因此就會造成cacti出現一支一支白白的情況
建議是流量超過100MB的話一定要使用counter64
snmp v2才支援counter64
當然重點是設備要有支援


http://gaogo.blog.51cto.com/801285/1172834
在cacti使用自訂的OID時
Data Source Type要選擇GAUGE
但如果是用shell去撈出snmp的值再餵給cacti時
Data Source Type就要選擇COUNTER

2013/05/14

有關rspan的config方法如下

前提是二台switch要用trunk連結
不能使用routing模式


使用RSPAN監聽switch A連接server端的實例:
  switch A配置如下:
  !
  vlan 925
  remote-span
  monitor session 1 source interface FastEthernet1/1 both
  monitor session 1 destination remote vlan 925
  !
  switch B配置如下:
  !
  vlan 925
  remote-span
  monitor session 1 source remote vlan 925
  monitor session 1 destination interface Fastethernet 2/2

若在switch B上需要再加上一個port來monitor

則再加上


monitor session 2 source interface Gi1/1
monitor session 2 destination remote vlan 925

把 gi1/1的流量也丟到vlan 925

再把vlan 925 導出來

亦即 vlan 925視為一個pool
跨不同的switch 但所有的switch 都必須設定vlan 925且定義為remote-span
可以把所有要monitor的流量丟進去
最後再導出來

http://tc.wangchao.net.cn/bbs/detail_1628933.html

rspan無法在routing架構下使用
必須使用erspan來達成

2013/05/13

因為有一台brocade icx 6450 - 24p
每次停電復電後机器一定起不來
所以找了一台fws 624p去換下來
換下來後怪事又發生了
只有aruba controller 所在的那一段能ping到
封包完全進不了core
跟之前第二實習ap的問題完全一樣
結果今天就狠下心重開aruba controller
竟然好了
%#$%#$%#$%
xxx的aruba

2013/05/12

開始使用http://www.network-weathermap.com/
來畫出即時的流量圖
因為不想跟cacti整合
所以用stand alone來跑

以下的安裝教學還滿詳細的
http://www.cactifans.org/index.php/2011/04/cacti%E6%8F%92%E4%BB%B6%E8%AF%A6%E8%A7%A3-weathermap/

如果本來已經有裝好cacti 則要再加裝php5-gd 及php-pear
也建議先裝好cacti再來裝weathermap 因為直接使用cacti所產生的rrd資料檔來畫圖會方便許多

在執行http://xxx.xxx.xxx.xxx/weathermap/editor.php時
link的部分設定要注意的地方如下



Bandwidth要依照現實環境修改
Data Source的地方請至cacti找出要使用的port的rrd file再填入絶對路徑

此外建立link時第一個點選的node就是要使用該port資料的node
建立後在config內的資料如下


LINK node1-node2
        TARGET /var/www/html/cacti-0.8.8a/rra/1.1.1.1_traffic_in_467.rrd
        NODES 3750 7609
        BANDWIDTH 1G


請注意 TARGET /var/www/html/cacti-0.8.8a/rra/1.1.1.1_traffic_in_467.rrd
就是 3750 上要使用的port的資料(跟7609的link port)
如果發現資料流方向相反 請手動修正 NODES的順序

接下來如果依照上述文件來跑crontab

*/5 * * * * root /usr/bin/php /var/www/html/weathermap/weathermap --config /var/www/html/weathermap/configs/simple.conf --image-uri ../weathermap/test.png

我的操作結果是圖完全無法產生
但手動下指令是ok的
感覺上好像跟要使用lib的路徑有關
目前的解決方式是先寫一個shell如下


#!/bin/bash
cd /var/www/weathermap
/usr/bin/php  weathermap --config configs/simple.conf --output weathermap.png --htmloutput index.html


再用crontab跑這個shell

config有很多地方可以細調
詳細的config資料如下
http://www.network-weathermap.com/manual/latest/pages/config-reference.html#GLOBAL_FONTDEFINE

若要更換不同的ICON
要放到images這個資料夾並使用PNG檔
大小無所謂
因為config裡可以設定

以下的教學檔也不錯
http://blog.163.com/fan_yishan/blog/static/476922132010994424449/

修改圖例相對應的參數如下圖所示



2013/05/10

因為使用thunderbird
一直有個地方感覺不是很方便
就是每次回信或是寫信時對方的title及問候語都要再打一次
有點煩
找到了 Quicktext這個plugin
用起來還不錯

http://extensions.hesslow.se/extension/4/Quicktext/

2013/05/07

cisco提供二個方式來解決遠端mirror的問題
就是把遠端switch某一個port 或 vlan的流量mirror到近端來
如果是vlan架構 使用rspan
如果不是 就必須使用erspan來達成

http://www.cisco.com/en/US/docs/switches/lan/catalyst6500/ios/12.2SX/configuration/guide/span.html#wp1063324

2013/05/06

xming是一個跑在win上免費的x-win server

安裝好後
使用方式如下

先執行XLaunch
下一步二次後在以下出現的畫面上要把 no access control打勾


















之後點下完成 此時xming server就會開始執行

接下來telnet 或 ssh到linux上
登入後打入以下指令

export DISPLAY=10.0.0.1:0.0

10.0.0.1是執行xming server 的windows ip

接下來就可以執行相關操作了
如 xeyes

網路上有很多教學文件
都必須利用putty
個人是覺得比較麻煩
大家參考囉

2013/05/04

今天思考了一下port scan的問題
除了之前使用psad
是否有更有效的方法來處理
找到了snort原來就有這個功能
只是default是關的
要在snort.conf打開
範例如下


# Portscan detection.  For more information, see README.sfportscan
preprocessor sfportscan: proto  { all } memcap { 10000000 } sense_level { high } logfile { /var/log/snort/portscan.log } ignore_scanners { 192.168.0.0/16,  10.0.0.0/8 } ignore_scanned { 192.168.0.0/16 }

詳細的config設定參考以下連結
http://manual.snort.org/node78.html

一樣目前打算跟LP共同運作

2013/05/02

說一下最近碰到的aruba ap的情況
有二個在同一棟大樓的ap發生ping不到的情況
原本以為是ap故障
但從controller上看ap正常工作
但從別的網段就是ping不到 改ip也不行
跟網路設備廠商討論過後認為是ap有問題導致封包送不到gateway
所以建議我換一顆
真的換一顆就好了
接下來把換下來的那顆reset為原廠default值
重新設定
到另一顆有問題的地方換上
還是ping不到
所以只好再找一顆換上
就正常了

但真的是ap有問題嗎
把這二個ap的其中一個再reset為原廠default值
重新設定
把辦公室原本正常的ap換下來
也是正常的

問了無線及網路設備廠商都無法解釋這個問題
還是無解