設(shè)定安全log服務(wù)器呢(RedHat)的方法
發(fā)布時(shí)間:2012-07-07 18:04:55 作者:佚名
我要評(píng)論

在網(wǎng)上越來(lái)越多的hacker 的出現(xiàn), 越來(lái)越多的高手出現(xiàn)的情況下.如何才能確保自己可以保存一份完整的log 呢?稍微有點(diǎn)概念的hacker 都知道,進(jìn)入系統(tǒng)后的第一見(jiàn)事情就是去清理log, 而發(fā)現(xiàn)入侵的最簡(jiǎn)單最直接的方法就是去看系統(tǒng)紀(jì)錄文件.現(xiàn)在我們來(lái)說(shuō)說(shuō)如何設(shè)定一個(gè)安全的lo
*環(huán)境RedHat 7.3
在網(wǎng)上越來(lái)越多的hacker 的出現(xiàn), 越來(lái)越多的高手出現(xiàn)的情況下.如何才能確保自己可以保存一份完整的log 呢?稍微有點(diǎn)概念的hacker 都知道,進(jìn)入系統(tǒng)后的第一見(jiàn)事情就是去清理log, 而發(fā)現(xiàn)入侵的最簡(jiǎn)單最直接的方法就是去看系統(tǒng)紀(jì)錄文件.現(xiàn)在我們來(lái)說(shuō)說(shuō)如何設(shè)定一個(gè)安全的log服務(wù)器.
想想看,如果入侵者無(wú)法連接服務(wù)器,又如何能改您的log 呢?現(xiàn)在我們來(lái)學(xué)習(xí)如何設(shè)定一個(gè)無(wú)ip 的log 服務(wù)器.
現(xiàn)在,來(lái)介紹一下如何用Snort 來(lái)做三件事情∶
Stealth sniffer
stealth NIDS porbe
stealth logger
這一切都是用在一臺(tái)沒(méi)有ip 的服務(wù)器上面的. NIDS 是Network Intrusion Dectection Server 的簡(jiǎn)稱,也就是說(shuō)入侵檢測(cè)服務(wù)器.
為什么要stealth 呢?
在internet 中運(yùn)行任何一種服務(wù),都是有一定的危險(xiǎn)的.不管是http 也好, ftp 也好, telnet 也好,總之都會(huì)有機(jī)會(huì)被hack 入侵. stealth logger 的獨(dú)特性可以讓我們?cè)诮邮召Y料的同時(shí),不發(fā)送任何的資料.這樣外界的電腦(被hack 入侵的電腦)就根本無(wú)法去更改loger server 所收到的信息.也就是說(shuō)保證了我們信息的完整性,以及原始性. 為了確保log 服務(wù)器的安全,最好不要將log 服務(wù)器連接在網(wǎng)路中.也就是說(shuō),當(dāng)您需要檢查logger 服務(wù)器上得東西的時(shí)侯,您需要到電腦前,打開(kāi)屏幕.而不是遠(yuǎn)端login 進(jìn)來(lái).但是,如果說(shuō)您一定要連接網(wǎng)路的話的話,那么請(qǐng)用兩個(gè)的介面來(lái)做.也就是說(shuō)兩片網(wǎng)卡.并且注意,第一, IP forwarding 一定要關(guān)閉.第二就是,用來(lái)做stealth logger 的介面是沒(méi)有ip 的一張網(wǎng)卡,這張網(wǎng)卡必須不能跟另外一個(gè)有ip 的網(wǎng)卡在同一網(wǎng)路下面.
設(shè)定
首先當(dāng)然是確定您的網(wǎng)卡安裝無(wú)誤,并且可以被kernel 抓到.然后把網(wǎng)卡所需要的module 寫(xiě)到/etc/modules.conf 文件中.
現(xiàn)在我們來(lái)設(shè)定一個(gè)沒(méi)有ip 的網(wǎng)卡介面.
編輯文件/etc/sysconfig/network-scripts/ifcfg-eth0
vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
USERCTL=no
ONBOOT=yes
BOOTPROTO=
BROADCAST=
NETWORK=
NETMASK=
IPADDR=
存檔后,用ifconfig 來(lái)active 我們的eth0 介面.
初試stealth
這里我們用到了snort 這個(gè)程式..
現(xiàn)在我們運(yùn)行
snort -dvi eth0
這里-d 的選項(xiàng)告訴snort 對(duì)資料進(jìn)行decode (解碼)
-v 告訴snort 將結(jié)果顯示在屏幕上面
-i 則是指定所需要的interface
可以用-C 選項(xiàng)告訴snort 只顯示ASCII 部份. 忽略hexadecimal 資料.
$snort -dviC eth0
Log directory= /var/log/snort
Initializing Network Interface eth0
kernel filter, protocol ALL, TURBO mode
(63 frames), raw packet socket
--== Initializing Snort ==--
Decoding Ethernet on interface eth0
--== Initialization Complate ==--
-*> Snort! <*-
Version 1.8.4 (Build 99)
By Martin Roesch (roesch@sourcefire.com,
www.snort.org)
......
......
NIDS(入侵偵測(cè)) 入侵檢測(cè)本身是一件很復(fù)雜的事情. snort 本身也提供了強(qiáng)大的入侵檢測(cè)的功能. 這里我只做一個(gè)簡(jiǎn)單的介紹,好讓大家有一個(gè)概念.如果真正實(shí)體去做一個(gè)NIDS 的話.需要些更復(fù)雜的動(dòng)作.例如設(shè)定更完善的rules, 定時(shí)更新snort.conf 中所定義的rules (當(dāng)新的攻擊方式出現(xiàn)以后,要及時(shí)更新)
首先,我們需要更改一下/etc/snort/snort.conf 具體需要參照您自己的機(jī)器來(lái)設(shè)定.
#設(shè)定log 存放的地方
config logdir: /var/log/snort
#設(shè)定網(wǎng)路
var HOME_NET 192.168.1.0/24
var EXTERNAL_NET any
var SMTP $HOME_NET
var HTTP_SERVERS $HOME_NET
var SQL_SERVERS $HOME_NET
var DNS_SERVERS 192.168.1.250/32
var RULE_PATH ./
#設(shè)定preprocessors
preprocessor frag2
preprocessor stream4: detect_scans
preprocessor stream4_reassemblt
preprocessor portscan: $HOME_NET 4 3 portscan.log
#設(shè)定output
output database: log, mysql, user=root
dbname-snort host=localhost
#rules
alert tcp $HOME_NET 7161 -> $EXTERNAL_NET any
(msg: "MISC Cisco Catalyst Remote Access";
flags: SA; reference:arachnids, 129;
reference:cve, CVE-1999-0430;
classtype:bad-unknow; sid:513; rev:1;)
#設(shè)定patch , 這些都是些附加的rules 的文件
include $RULE_PATH/bad-traffic.rules
include $RULE_PATH/exploit.rules
include $RULE_PATH/scan.rules
include $RULE_PATH/ftp.rules
#這些rule 其實(shí)還有很多.您可以自己去寫(xiě),也可以找人家寫(xiě)好的下載拿來(lái)用.
現(xiàn)在讓我們把snort 跑起來(lái)∶
snort -c /etc/snort/snort.conf -D -i eth0
現(xiàn)在snort NIDS 的模式跑起來(lái)了. 在default 的情況下∶
alerts 會(huì)放在/var/log/snort/alert 中
port-scanning 會(huì)放在/var/log/snort/portscan.log
當(dāng)您真正跑NIDS 的時(shí)侯,需要把snort 以daemon 的模式來(lái)跑. 如果您安裝的是rpm 的東西,那么rpm 文件中已經(jīng)包含了一個(gè)snortd 的文件,并且會(huì)幫您安裝在/etc/rc.d/init.d/ 下面. 當(dāng)您設(shè)定好snort 的configure 文件以后,只要用chkconfig 把snortd 打開(kāi)就可以了:
加入snortd
chkconfig --add snortd
打開(kāi)snortd
chkconfig snortd on
或者
chkconfig --level 3 snortd on
這里的level 請(qǐng)自行更改到您所跑的runlevel
您可以用cat /etc/inittab | grep id 來(lái)看自己在哪個(gè)
runlevel 上面.
cat /etc/inittab | grep id
id:5:initdefault:
這里就是說(shuō)跑在run level 5 上面.
設(shè)定服務(wù)器 我們需要對(duì)服務(wù)器做一些設(shè)定,讓服務(wù)器把log 送到我們的logger 服務(wù)器去. 首先,我們需要設(shè)定/etc/syslog.conf 把log 送到一個(gè)有效的,但是不存在的ip 下面.例如我們的網(wǎng)路是192.168.1.0/24 其中并沒(méi)有192.168.1.123 這臺(tái)機(jī)器,也就是說(shuō)這個(gè)ip 實(shí)際上是空的.我們就把log 指向這里.您可以指向任意一個(gè)空的有效ip.
vim /etc/syslog.conf
加入
*.info @192.168.1.123
如果您的系統(tǒng)是用syslog-ng 的話
vim /etc/syslog-ng/syslog-ng.conf
destination d_loghost { udp(ip(192.168.123)
port (514)); };
filter f_info { level(info); };
log {filter(f_info); destination(d_loghost);};
我們還需要加入static ARP entry 才可以. 如果您的網(wǎng)路只是接了記個(gè)Hub 而已, 那么ARP 地址一樣可以好象ip 一樣,設(shè)定成虛構(gòu)的. 如果您有連結(jié)switch, 您需要加入log 服務(wù)器的真實(shí)MAC 地址.
我們這里加入我們logger 服務(wù)器的真實(shí)MAC 地址就可以了.
arp -s 192.168.1.123 000:B7B:BF:95
在Logger 服務(wù)器設(shè)定snort
/etc/snort/snort.conf
var EXTERNAL_NET any
#等于snort -d
config dump_payload
#等于snort -C
config dump_chars_only
#設(shè)定log 存放的path
config logdir: /var/log/snort
# frag2 所做的動(dòng)作就是把fragmented 給我們r(jià)e-assembly
preprocessor frag2
log udp 192.168.1.1/32 any -> 192.168.1.123/32 514
(logto: "logged-packets";)
最后一行需要稍微解釋一下∶
我們這里把snort 來(lái)做packet logger. 也就是說(shuō),并不是把所有的東西都寫(xiě)入到/var/log/snort/alert 中.而是log any packets with match the rule without writing an alert.
udp: 是說(shuō),我們這里用udp 的protocol. system log 通常都是使用udp 的.
192.168.1.1/32: 就是只我們的服務(wù)器啦,也就是送log 的機(jī)器. 如果您是從整個(gè)一個(gè)網(wǎng)路段中收l(shuí)og 也可以用192.168.1.0/24.
any: any source port 任何port
->: 這個(gè)是direction operator 大家都知道的
192.168.1.123/35 514 就是我們給出的那個(gè)空ip 啦, port 514
如果沒(méi)有指定logto: 的話, log 會(huì)分別保存在不同的文件中. 而指定logto 的話,就會(huì)把log 全部存放到我們指定的文件中,看起來(lái)方便多了.
更安全的保存log 就可以更安全的保護(hù)服務(wù)器。snort 的功能實(shí)際上非常的強(qiáng)大, 這里只是一個(gè)簡(jiǎn)單的介紹而已。
在網(wǎng)上越來(lái)越多的hacker 的出現(xiàn), 越來(lái)越多的高手出現(xiàn)的情況下.如何才能確保自己可以保存一份完整的log 呢?稍微有點(diǎn)概念的hacker 都知道,進(jìn)入系統(tǒng)后的第一見(jiàn)事情就是去清理log, 而發(fā)現(xiàn)入侵的最簡(jiǎn)單最直接的方法就是去看系統(tǒng)紀(jì)錄文件.現(xiàn)在我們來(lái)說(shuō)說(shuō)如何設(shè)定一個(gè)安全的log服務(wù)器.
想想看,如果入侵者無(wú)法連接服務(wù)器,又如何能改您的log 呢?現(xiàn)在我們來(lái)學(xué)習(xí)如何設(shè)定一個(gè)無(wú)ip 的log 服務(wù)器.
現(xiàn)在,來(lái)介紹一下如何用Snort 來(lái)做三件事情∶
Stealth sniffer
stealth NIDS porbe
stealth logger
這一切都是用在一臺(tái)沒(méi)有ip 的服務(wù)器上面的. NIDS 是Network Intrusion Dectection Server 的簡(jiǎn)稱,也就是說(shuō)入侵檢測(cè)服務(wù)器.
為什么要stealth 呢?
在internet 中運(yùn)行任何一種服務(wù),都是有一定的危險(xiǎn)的.不管是http 也好, ftp 也好, telnet 也好,總之都會(huì)有機(jī)會(huì)被hack 入侵. stealth logger 的獨(dú)特性可以讓我們?cè)诮邮召Y料的同時(shí),不發(fā)送任何的資料.這樣外界的電腦(被hack 入侵的電腦)就根本無(wú)法去更改loger server 所收到的信息.也就是說(shuō)保證了我們信息的完整性,以及原始性. 為了確保log 服務(wù)器的安全,最好不要將log 服務(wù)器連接在網(wǎng)路中.也就是說(shuō),當(dāng)您需要檢查logger 服務(wù)器上得東西的時(shí)侯,您需要到電腦前,打開(kāi)屏幕.而不是遠(yuǎn)端login 進(jìn)來(lái).但是,如果說(shuō)您一定要連接網(wǎng)路的話的話,那么請(qǐng)用兩個(gè)的介面來(lái)做.也就是說(shuō)兩片網(wǎng)卡.并且注意,第一, IP forwarding 一定要關(guān)閉.第二就是,用來(lái)做stealth logger 的介面是沒(méi)有ip 的一張網(wǎng)卡,這張網(wǎng)卡必須不能跟另外一個(gè)有ip 的網(wǎng)卡在同一網(wǎng)路下面.
設(shè)定
首先當(dāng)然是確定您的網(wǎng)卡安裝無(wú)誤,并且可以被kernel 抓到.然后把網(wǎng)卡所需要的module 寫(xiě)到/etc/modules.conf 文件中.
現(xiàn)在我們來(lái)設(shè)定一個(gè)沒(méi)有ip 的網(wǎng)卡介面.
編輯文件/etc/sysconfig/network-scripts/ifcfg-eth0
vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
USERCTL=no
ONBOOT=yes
BOOTPROTO=
BROADCAST=
NETWORK=
NETMASK=
IPADDR=
存檔后,用ifconfig 來(lái)active 我們的eth0 介面.
初試stealth
這里我們用到了snort 這個(gè)程式..
現(xiàn)在我們運(yùn)行
snort -dvi eth0
這里-d 的選項(xiàng)告訴snort 對(duì)資料進(jìn)行decode (解碼)
-v 告訴snort 將結(jié)果顯示在屏幕上面
-i 則是指定所需要的interface
可以用-C 選項(xiàng)告訴snort 只顯示ASCII 部份. 忽略hexadecimal 資料.
$snort -dviC eth0
Log directory= /var/log/snort
Initializing Network Interface eth0
kernel filter, protocol ALL, TURBO mode
(63 frames), raw packet socket
--== Initializing Snort ==--
Decoding Ethernet on interface eth0
--== Initialization Complate ==--
-*> Snort! <*-
Version 1.8.4 (Build 99)
By Martin Roesch (roesch@sourcefire.com,
www.snort.org)
......
......
NIDS(入侵偵測(cè)) 入侵檢測(cè)本身是一件很復(fù)雜的事情. snort 本身也提供了強(qiáng)大的入侵檢測(cè)的功能. 這里我只做一個(gè)簡(jiǎn)單的介紹,好讓大家有一個(gè)概念.如果真正實(shí)體去做一個(gè)NIDS 的話.需要些更復(fù)雜的動(dòng)作.例如設(shè)定更完善的rules, 定時(shí)更新snort.conf 中所定義的rules (當(dāng)新的攻擊方式出現(xiàn)以后,要及時(shí)更新)
首先,我們需要更改一下/etc/snort/snort.conf 具體需要參照您自己的機(jī)器來(lái)設(shè)定.
#設(shè)定log 存放的地方
config logdir: /var/log/snort
#設(shè)定網(wǎng)路
var HOME_NET 192.168.1.0/24
var EXTERNAL_NET any
var SMTP $HOME_NET
var HTTP_SERVERS $HOME_NET
var SQL_SERVERS $HOME_NET
var DNS_SERVERS 192.168.1.250/32
var RULE_PATH ./
#設(shè)定preprocessors
preprocessor frag2
preprocessor stream4: detect_scans
preprocessor stream4_reassemblt
preprocessor portscan: $HOME_NET 4 3 portscan.log
#設(shè)定output
output database: log, mysql, user=root
dbname-snort host=localhost
#rules
alert tcp $HOME_NET 7161 -> $EXTERNAL_NET any
(msg: "MISC Cisco Catalyst Remote Access";
flags: SA; reference:arachnids, 129;
reference:cve, CVE-1999-0430;
classtype:bad-unknow; sid:513; rev:1;)
#設(shè)定patch , 這些都是些附加的rules 的文件
include $RULE_PATH/bad-traffic.rules
include $RULE_PATH/exploit.rules
include $RULE_PATH/scan.rules
include $RULE_PATH/ftp.rules
#這些rule 其實(shí)還有很多.您可以自己去寫(xiě),也可以找人家寫(xiě)好的下載拿來(lái)用.
現(xiàn)在讓我們把snort 跑起來(lái)∶
snort -c /etc/snort/snort.conf -D -i eth0
現(xiàn)在snort NIDS 的模式跑起來(lái)了. 在default 的情況下∶
alerts 會(huì)放在/var/log/snort/alert 中
port-scanning 會(huì)放在/var/log/snort/portscan.log
當(dāng)您真正跑NIDS 的時(shí)侯,需要把snort 以daemon 的模式來(lái)跑. 如果您安裝的是rpm 的東西,那么rpm 文件中已經(jīng)包含了一個(gè)snortd 的文件,并且會(huì)幫您安裝在/etc/rc.d/init.d/ 下面. 當(dāng)您設(shè)定好snort 的configure 文件以后,只要用chkconfig 把snortd 打開(kāi)就可以了:
加入snortd
chkconfig --add snortd
打開(kāi)snortd
chkconfig snortd on
或者
chkconfig --level 3 snortd on
這里的level 請(qǐng)自行更改到您所跑的runlevel
您可以用cat /etc/inittab | grep id 來(lái)看自己在哪個(gè)
runlevel 上面.
cat /etc/inittab | grep id
id:5:initdefault:
這里就是說(shuō)跑在run level 5 上面.
設(shè)定服務(wù)器 我們需要對(duì)服務(wù)器做一些設(shè)定,讓服務(wù)器把log 送到我們的logger 服務(wù)器去. 首先,我們需要設(shè)定/etc/syslog.conf 把log 送到一個(gè)有效的,但是不存在的ip 下面.例如我們的網(wǎng)路是192.168.1.0/24 其中并沒(méi)有192.168.1.123 這臺(tái)機(jī)器,也就是說(shuō)這個(gè)ip 實(shí)際上是空的.我們就把log 指向這里.您可以指向任意一個(gè)空的有效ip.
vim /etc/syslog.conf
加入
*.info @192.168.1.123
如果您的系統(tǒng)是用syslog-ng 的話
vim /etc/syslog-ng/syslog-ng.conf
destination d_loghost { udp(ip(192.168.123)
port (514)); };
filter f_info { level(info); };
log {filter(f_info); destination(d_loghost);};
我們還需要加入static ARP entry 才可以. 如果您的網(wǎng)路只是接了記個(gè)Hub 而已, 那么ARP 地址一樣可以好象ip 一樣,設(shè)定成虛構(gòu)的. 如果您有連結(jié)switch, 您需要加入log 服務(wù)器的真實(shí)MAC 地址.
我們這里加入我們logger 服務(wù)器的真實(shí)MAC 地址就可以了.
arp -s 192.168.1.123 000:B7B:BF:95
在Logger 服務(wù)器設(shè)定snort
/etc/snort/snort.conf
var EXTERNAL_NET any
#等于snort -d
config dump_payload
#等于snort -C
config dump_chars_only
#設(shè)定log 存放的path
config logdir: /var/log/snort
# frag2 所做的動(dòng)作就是把fragmented 給我們r(jià)e-assembly
preprocessor frag2
log udp 192.168.1.1/32 any -> 192.168.1.123/32 514
(logto: "logged-packets";)
最后一行需要稍微解釋一下∶
我們這里把snort 來(lái)做packet logger. 也就是說(shuō),并不是把所有的東西都寫(xiě)入到/var/log/snort/alert 中.而是log any packets with match the rule without writing an alert.
udp: 是說(shuō),我們這里用udp 的protocol. system log 通常都是使用udp 的.
192.168.1.1/32: 就是只我們的服務(wù)器啦,也就是送log 的機(jī)器. 如果您是從整個(gè)一個(gè)網(wǎng)路段中收l(shuí)og 也可以用192.168.1.0/24.
any: any source port 任何port
->: 這個(gè)是direction operator 大家都知道的
192.168.1.123/35 514 就是我們給出的那個(gè)空ip 啦, port 514
如果沒(méi)有指定logto: 的話, log 會(huì)分別保存在不同的文件中. 而指定logto 的話,就會(huì)把log 全部存放到我們指定的文件中,看起來(lái)方便多了.
更安全的保存log 就可以更安全的保護(hù)服務(wù)器。snort 的功能實(shí)際上非常的強(qiáng)大, 這里只是一個(gè)簡(jiǎn)單的介紹而已。
相關(guān)文章
局域網(wǎng)共享安全方式之用局域網(wǎng)文件共享系統(tǒng)實(shí)現(xiàn)共享文件夾安全設(shè)置
現(xiàn)在很多單位都有文件服務(wù)器,經(jīng)常會(huì)共享文件讓局域網(wǎng)用戶訪問(wèn)。那么,如何才能保護(hù)局域網(wǎng)內(nèi)共享文件夾的安全性呢?下面通過(guò)本文給大家分享局域網(wǎng)共享安全方式之用局域網(wǎng)文2017-05-11- 這篇文章主要介紹了IIS的FastCGI漏洞處理方法,需要的朋友可以參考下2017-04-30
IIS PHP fastcgi模式 pathinfo取值錯(cuò)誤任意代碼執(zhí)行漏洞修復(fù)方法
這篇文章主要介紹了PHP fastcgi模式 pathinfo取值錯(cuò)誤任意代碼執(zhí)行漏洞,需要的朋友可以參考下2017-04-30- IIS短文件名泄露漏洞,IIS上實(shí)現(xiàn)上存在文件枚舉漏洞,攻擊者可利用此漏洞枚舉獲取服務(wù)器根目錄中的文件,這里為大家分享一下安裝方法,需要的朋友可以參考下2017-04-23
用mcafee麥咖啡設(shè)置服務(wù)器基本用戶安全(防止新建用戶與修改密碼)
這篇文章主要介紹了用麥咖啡設(shè)置服務(wù)器基本用戶安全(防止新建用戶與修改密碼),需要的朋友可以參考下2017-02-26防范黑客入侵,關(guān)閉端口封鎖大門(mén) 黑客無(wú)法入侵
這篇文章主要介紹了防范黑客入侵,關(guān)閉端口封鎖大門(mén) 黑客無(wú)法入侵的相關(guān)資料,需要的朋友可以參考下2016-10-31現(xiàn)代網(wǎng)絡(luò)性能監(jiān)控工具應(yīng)具備何種技能?網(wǎng)絡(luò)與應(yīng)用程序監(jiān)控
大家都知道現(xiàn)在市場(chǎng)上的網(wǎng)絡(luò)性能監(jiān)控工具大有所在,這為現(xiàn)在的IT行業(yè)的人員提供了很多便利,幫助IT管理團(tuán)隊(duì)監(jiān)控網(wǎng)絡(luò)性能,并且?guī)椭鶬T管理人員確定系統(tǒng)性能的瓶頸所在,進(jìn)而2016-10-19- 雖然現(xiàn)在網(wǎng)絡(luò)很發(fā)達(dá),但對(duì)我們普通人而言,也就是10多年的上網(wǎng)歷史,好多人還沒(méi)意識(shí)到信息安全的重要性。那么如何保證自己的上網(wǎng)安全?下面小編為大家分享10條防范自救,一2016-10-12
- 這篇文章主要介紹了遠(yuǎn)離病毒 八項(xiàng)基本原則的相關(guān)資料,需要的朋友可以參考下2016-10-08
- 這篇文章主要介紹了Linux 防范病毒的方法的相關(guān)資料,需要的朋友可以參考下2016-10-08