星期二, 12月 12, 2006

Sentry Tools 防止不特定人士掃瞄伺服器

Sentry Tools 有兩個工具分別為 Portsentry 與 Logcheck,Portsentry 可用來防止未經授權的 port 掃瞄,Logcheck 則是用來分析系統記錄以用來判斷是否有人意圖入侵,更多的資訊請參考 Portsentry 官網:http://sourceforge.net/projects/sentrytools/

Step 1. 依照慣例使用懶人安裝法來安裝 Portsentry:
cd /usr/ports/security/portsentry
make all install clean
Step 2. 複製設定檔:
cd /usr/local/etc
cp portsentry.conf.default portsentry.conf
cp portsentry.ignore.default portsentry.ignore
chmod 600 portsentry.conf portsentry.ignore
Step 3. 修改 portsentry.conf 內容:
# 不要存取 DNS 增加效率,把預設的 1 改為 0。
RESOLVE_HOST = "0"

# 預設就是 1,有些人會很雞婆的改成 2 送個 message,建議不用這麼無聊。
BLOCK_UDP="1"
BLOCK_TCP="1"

# 找到 FreeBSD 的 KILL_ROUTE 組擋相關設定,把這行的 remark 拿掉。
# KILL_ROUTE 只能有一個,另一個是重設路由的(會讓對方網路斷線)。
KILL_ROUTE="/sbin/ipfw add 1 deny all from $TARGET$:255.255.255.255 to any"

# 敏感度預設為 0,如果誤判很嚴重再調成 1 或 2。
SCAN_TRIGGER="0"
Step 4. 修改 /etc/rc.conf 啟動 ipfw (防火牆):
#firewall
firewall_enable="YES"
firewall_type="open"
firewall_logging="YES"
Step 5. 修改 /etc/rc.firewall:

在 OPEN 那個 section 把:
${fwcmd} add 65000 pass all from any to any
改成:
${fwcmd} add 65534 pass all from any to any
NOTE: FreeBSD 6.1 Release 的防火牆有一個 bug,就是設為 open 時會 deny all,因為 allow all 那個編號預設為 65000 有問題,把那個編號改掉就可以了。

沒有留言: