2007.03_Zaawanowane mechanizmy logowania ruchu w sieci_[Bezpieczenstwo].pdf
(
1364 KB
)
Pobierz
332767887 UNPDF
Bezpieczeństwo
Zaawanowane mechanizmy logowania ruchu w sieci
mechanizmy logowania
ruchu w sieci
Radoslaw Podedworny
W świecie informatycznym istnieje szereg “dogmatów”, pod którymi podpisuje się większość
użytkowników – bez względu na poziom wiedzy czy jedyny słuszny system operacyjny, to ten, którego
używają. W dobie sieci komputerowych, zarówno tych lokalnych jak i globalnej Internet jest jedną
z takich prawd. To sprawnie działająca ściana ogniowa. Czasami jednak informacja o tym, że działa
staje się niewystarczająca.
U
żytkownik chce wiedzieć jak działa, co zo-
Aby tego dokonać należy wykonać następujące punkty:
stało zablokowane, co puszczone, z jakich
adresów IP i na jaki port nastąpiło nieauto-
ryzowane połączenie (lub jego próba). Infor-
macje te oczywiście można logować w standardowy spo-
sób (gromadzić w pliku tekstowym), jednak metoda ta sta-
je się mało wydajna, zwłaszcza w chwili, gdy danych przy-
bywa, a my chcemy mieć do nich szybki dostęp. Do pro-
fesjonalnego przechowywania informacji służą różnego
rodzaju serwery baz danych, z drugiej strony logi ściany
ogniowej są właśnie takową informacją. Idąc tym tropem,
warto by było połączyć te dwa mechanizmy i zacząć prze-
chowywać informację nie w plikach tekstowych, a w bazie
danych. Do tego celu został stworzony ulogd.
Co nas czeka:
Ulog jest ciekawą aplikacją, nie tylko ze względu na
swoje działanie, ale także i na proces instalacji. Dla po-
prawnego uruchomienia uloga niezbędne będą:
• rekompilacja kernela oraz iptables
• instalacja nowego kernela oraz przekompilowanego
uprzednio iptables
• koniguracja serwera baz danych
• kompilacja, instalacja i koniguracja demona ulogd
• wykonanie odpowiednich wpisów w regułach ściany
ogniowej
No cóż, wydaje się to trochę trudniejsze niż klasyczne
zciągniecie źródeł, rozpakowanie i wydanie komend: ./
conigure && make && make install. Jednak w większości
nowych dystrybucji standardowo znajdują się już obydwa
moduły (kernela i iptables) tak więc najprawdopodobniej
punkty 1-2 nie będą konieczne.
Wszystkie opisane poniżej kompilacje zostały wyko-
nane na maszynie o następującej koniguracji:
• moduł kernela o nazwie ipt_ULOG.ko
• moduł iptables o nazwie libipt_ULOGD.so
• demon ulogd
• Linux CentOS 4.4
• mysql 4.1.20-1 (pochodzący z oicjalnych binarek Cent-
OS'a)
30
marzec 2007
Zaawanowane
Bezpieczeństwo
Zaawanowane mechanizmy logowania ruchu w sieci
• kernel 2.6.19.1 / iptables 1.3.7 (kompilo-
wane ze źródeł)
Tabela 1.
Zestawienie pluginów
Lp. Nazwa Typ Opis
1 ulogd_BASE.so interpreter Plugin podstawowy, niezbędny do prawidłowego działania
demona ulogd.
2 ulogd_PWSNIFF.so interpreter Przykładowy plugin do “wyciągania” haseł z nieszyfrowa-
nych sesji FTP oraz POP3
3 ulogd_LOCAL.so interpreter Wirtualny interpreter zapisujący czas logowania pakietu
oraz nazwę hosta
Kompilowanie nie jest warunkiem koniecz-
nym. Można skorzystać z gotowych pakie-
tów jakie z pewnością dostarcza twoja ulu-
biona dystrybucja linuxa.
Przed przystąpieniem do kompilacji
i koniguracji demona ulogd, należy spraw-
dzić czy w systemie znajdują się dwa mo-
duły:
4 ulogd_OPRINT.so output
Plugin zapisujący informacje w postaci par: klucz=wartość.
Informacje zapisywane są w pliku
5 ulogd_LOGEMU.so output
Plugin emulujący cel LOG z iptables. Dane zapisywane są
w pliku
•
ipt_ULOG.ko
•
libipt_ULOG.so
6 ulogd_PCAP.so output
Plugin zapisujący dane w formacie łatwym do obróbki przez
inne narzędzia analizujące ruch w sieci (tcpdump, etheral).
Dane zapisywane są w pliku
Pierwszy z nich powstaje podczas kompilacji
kernela, drugi podczas kompilacji iptables.
Przy próbie wprowadzenia regułki od-
wołującej się do demona ulogd, brak pierw-
szego modułu objawia się komunikatem:
7 ulogd_SYSLOG.so output
Plugin zapisujacy dane za pomocą demona syslogd. Dane
zapisywane są w pliku
8 ulogd_MYSQL.so output
Plugin odpowiedzialny za zapisywanie informacji w ba-
zie danych serwera mysql. Domyślna kompilacja demona
ulogd nie posiada tego pluginu – niezbędne jest w czasie
koniguracji podanie opcji --with-mysql
[root@centos ~]# iptables
-A INPUT
-j ULOG --ulog-nlgroup 2
iptables: No chain/target/
match by that name
[root@centos ~]#
9 ulogd_PGSQL.so output
Plugin odpowiedzialny za zapisywanie informacji w bazie
danych serwera postgresql. Domyślna kompilacja demona
ulogd nie posiada tego pluginu – niezbędne jest w czasie
koniguracji podanie opcji --with-postgresql
10 ulogd_SQLITE3.so output
Plugin odpowiedzialny za zapisywanie informacji w bazie
danych serwera SQLITEv3. Domyślna kompilacja demona
ulogd nie posiada tego pluginu – niezbędne jest w czasie
koniguracji podanie opcji --with-sqlite3
Komunikat ten informuje o potrzebie kom-
pilacji kernela linuxa. Moduł odpowiedzial-
ny za pracę demona ULOG znajduje się na
następującej ścieżce koniguratora kompila-
cji kernela:
i powtórnie zainstalować. Można tego doko-
nać za pomocą poniższych komend:
Dec 31 13:41:50 centos test
IN=eth0 OUT= MAC=00:0c:29:
dc:bf:38:00:17:9a:73:94:a7:08:00
SRC=10.0.0.1 DST=10.0.0.5 LEN=68
TOS=00 PREC=0x00 TTL=64 ID=463 DF
PROTO=TCP
SPT=58375 DPT=22 SEQ=3719533378
ACK=3572150669 WINDOW=76 ACK PSH
URGP=0
Dec 31 13:41:50 centos test IN=eth0
OUT= MAC=00:0c:29:dc:bf:38:00:17:9a:
73:94:a7:08:00
SRC=10.0.0.1 DST=10.0.0.5 LEN=100
TOS=00 PREC=0x00 TTL=64 ID=464 DF
PROTO=TCP
SPT=58375 DPT=22 SEQ=3719533394
ACK=3572150669 WINDOW=76 ACK PSH
URGP=0
Dec 31 13:41:50 centos test IN=eth0
OUT= MAC=00:0c:29:dc:bf:38:00:17:9a:
73:94:a7:08:00
SRC=10.0.0.1 DST=10.0.0.5 LEN=116
TOS=00 PREC=0x00 TTL=64 ID=465 DF
PROTO=TCP SPT=58375 DPT=22
SEQ=3719533442 ACK=3572150717
WINDOW=76 ACK PSH URGP=0
Dec 31 13:41:50 centos test IN=eth0
OUT= MAC=00:0c:29:dc:bf:38:00:17:9a:
Networking Networking Options
Network packet ilteringIP:
Netilter Coniguration
make KERNEL_DIR=/sciezka/do/zrodel/
kernela && make install
Gdzie należy zaznaczyć następującą opcję ja-
ko moduł:
Domyślnie moduły iptables zostaną zainsta-
lowane w katalogu
/usr/local/lib/iptables
Więcej informacji o kompilacji znajduje
się w pliku INSTALL.
ULOG Target support
ULOG
Przygotowanie do pracy demona ulog
składa się z dwóch etapów: pierwszy z nich
(moduły kernela i iptables) został opisany
powyżej – teraz czas zająć się samym pro-
gramem. Aby demon ulog zaczął popraw-
nie działać, niezbędne jest załadowanie
do pamięci odpowiednich pluginów. Są
one podzielone na dwie grupy (interpre-
ter plugins i output plugins), większość
z nich jest opcjonalna, wszystkie są łado-
wane i konfigurowane za pomoca pliku
ulogd.conf.
Dla przykładu, log wykonany za pomo-
cą modułu LOGEMU wygląda następują-
co (linie zostały połamane za pomocą zna-
ku):
Po kompilacji, plik pojawi się w katalogu z mo-
dułami kernela.
Brak drugiego z wymienionych modu-
łów spowoduje wystąpienie poniższej infor-
macji:
[root@centos ]# iptables
-A INPUT -j ULOG --ulog-nlgroup 2
iptables v1.3.7: Unknown arg
`--ulog-nlgroup'
Try `iptables -h' or 'iptables
--help' for more information.
[root@centos ]#
W tym wypadku należy zaopatrzyć się w naj-
nowsze źródła iptables,przekompilować je
www.lpmagazine.org
31
Bezpieczeństwo
Zaawanowane mechanizmy logowania ruchu w sieci
73:94:a7:08:00
SRC=10.0.0.1 DST=10.0.0.5
LEN=95 TOS=00 PREC=0xC0
TTL=64 ID=9324 PROTO=ICMP
TYPE=3 CODE=3
Dec 31 13:41:50 centos test
IN=eth0 OUT= MAC=00:0c:29:dc:
bf:38:00:17:9a:73:94:a7:08:00
SRC=10.0.0.1 DST=10.0.0.5
LEN=95 TOS=00 PREC=0xC0
TTL=64 ID=9325 PROTO=ICMP
TYPE=3 CODE=3
Tabela 2.
Zapis danych modułu OPRINT
===>PACKET BOUNDARY
pwsniff.user=radek
tcp.res2=0
tcp.res1=0
tcp.in=0
tcp.syn=0
tcp.rst=0
tcp.psh=1
tcp.ack=1
tcp.urg=0
tcp.window=46
tcp.reserved=0
tcp.offset=0
tcp.ackseq=2357811418
tcp.seq=2354752657
tcp.dport=21
tcp.sport=44545
ip.fragoff=16384
ip.id=64431
ip.csum=10995
ip.ihl=5
ip.totlen=64
ip.ttl=64
ip.tos=16
ip.protocol=6
ip.daddr=10.0.0.5
ip.saddr=10.0.0.1
oob.out=
oob.in=eth0
oob.mark=0
oob.time.usec=303128
oob.time.sec=1168087309
oob.preix=
raw.pktlen=64
raw.pkt=raw.mac=00:0c:29:dc:bf:38:00:17:9a:
73:94:a7:08:00
===>PACKET BOUNDARY
pwsniff.pass=tajne
tcp.res2=0
tcp.res1=0
tcp.in=0
tcp.syn=0
tcp.rst=0
tcp.psh=1
tcp.ack=1
tcp.urg=0
tcp.window=46
tcp.reserved=0
tcp.offset=0
tcp.ackseq=2357811452
tcp.seq=2354752669
tcp.dport=21
tcp.sport=44545
ip.fragoff=16384
ip.id=64433
ip.csum=10993
ip.ihl=5
ip.totlen=64
ip.ttl=64
ip.tos=16
ip.protocol=6
ip.daddr=10.0.0.5
ip.saddr=10.0.0.1
oob.out=
oob.in=eth0
oob.mark=0
oob.time.usec=754549
oob.time.sec=1168087311
oob.preix=
raw.pktlen=64
raw.pkt=raw.mac=00:0c:29:dc:bf:38:00:17:
9a:73:94:a7:08:00
W powyższym przykładzie logowano sesję
FTP. Dodatkowo włączono moduł sniffują-
cy, który zalogował nazwę użytkownika oraz
hasło (radek/tajne).
W tym miejscu warto pamiętać o pew-
nej zasadzie budowania pliku koniguracyj-
nego ulogd.conf: w pierwszej kolejności na-
stępuje deinicja modułów, które będą łado-
wane wraz ze startem programu a dopiero
w dalszej części pliku znajdują się sekcje kon-
igurujące.
Posiadając wiedzę teoretyczną o działa-
niu demona ulogd, można przystąpić do je-
go instalacji. W chwili powstawania niniej-
szego opracowania najnowszą stabilną wer-
sją była 1 .24 do pobrania np. z tej lokalizacji:
http://freshmeat.net/projects/ulogd/
W niniejszej koniguracji używane będą
trzy pluginy: BASE, MYSQL oraz PWSNIFF.
Koniguracja i kompilacja demona będzie
wyglądać następująco:
./conigure --with-mysql
–with-mysql-log-ip-as-string
&& make && make install
Powyższa linia skonigurowała demona ulogd
tak, aby zostałe skompilowany ze wsparciem
dla współpracy z bazą danych mysql. Dodat-
kowo zostało wskazane, iż adresy IP mają być
w bazie logowane nie w formie liczby ale łań-
cucha znaków. Dzięki temu wyniki zapisywa-
ne w bazie będą przedstawione w czytelnej
formie.
Po poprawnej kompilacji demon ulogd
powinien zainstalować się w systemie. Jeśli
nie podane zostało inaczej plik wykonywal-
ny powinien znajdować się w katalogu /usr/
local/sbin/
W katalogu źródeł znajduje się przykła-
dowy plik koniguracyjny ulogd.conf. Nale-
ży go przenieść do katalogu /etc – tam do-
myślnie demon będzie go szukał podczas
startu.
W katalogu źródeł ulogd znajduje się
również plik ulogd.init, za pomocą które-
go można ustawić, aby usługa była aktyw-
na razem ze startem systemu. Do tego celu
należy:
Zanim demon zostanie uruchomiony za po-
mocą polecenia service należy wyedytować
plik /etc/init.d/ulogd i sprawdzić na jakiej
ścieżce skrypt będzie szukał pliku wykonywal-
nego. Standardowo w skrypcie jest to /usr/
sbin/ulogd a jak napisano powyżej domyśl-
nie demon zainstalował się w /usr/local/sbin.
Należy zmienić tą scieżkę w skrypcie /etc/
init.d/ulogd, w przeciwnym razie dostaniemy
komunikat o niemożliwości znalezienia pliku.
Czas na pierwszą próbę działania demo-
na ulogd. Polegać ona będzie na logowaniu
danych do pliku za pomocą modułu LOGE-
MU i loogowana bedzie sesja ssh. W pierw-
szej kolejności należy stworzyć i załadować
odpowiednią regułę iptables:
• przekopiować ten plik do katalogu /etc/
init.d (dodatkowo zmienić mu nazwę na
ulogd)
• wykonać w tym katalogu polecenie: chk-
conig --add ulogd
• sprawdzić za pomocą polecenia chkcon-
ig --list ulogd czy demon został pomy-
slnie skonigurowany. Wynik działania
powyższej komenty powinien wyglądać
następująco:
ulogd 0:wyłączone
1:wyłączone
2:wyłączone
3:włączone
4:włączone
5:włączone
6:wyłączone
iptables -I INPUT 1 -p tcp
--dport 22 -j ULOG
--ulog-nlgroup 1
--ulog_preix test1
32
marzec 2007
Bezpieczeństwo
Zaawanowane mechanizmy logowania ruchu w sieci
Listing 1.
Wydruk zawartości
[
radek
@
centos
]
$
mysql
-
u
uloguser
-
p
Enter
password
:
Welcome
to
the
MySQL
monitor
.
Commands
end
with
;
or
\
g
.
Your
MySQL
connection
id
is
31
to
server
version
:
4
.
1
.
20
Type
'
help
;
'
or
'
\h
'
for
help
.
Type
'
\c
'
to
clear
the
buffer
.
mysql
>
\
r
ulogbaza
Reading
table
information
for
completion
of
table
and
column
names
You
can
turn
off
this
feature
to
get
a
quicker
startup
with
-
A
Connection
id
:
32
Current
database
:
ulogbaza
mysql
>
select
raw_mac
,
ip_saddr
,
ip_daddr
,
tcp_sport
,
tcp_dport
from
ulog
;
+-------------------------------------------+----------+----------+-----------+-----------+
|
raw_mac
|
ip_saddr
|
ip_daddr
|
tcp_sport
|
tcp_dport
|
+-------------------------------------------+----------+----------+-----------+-----------+
|
00
:
0
c
:
29
:
dc
:
bf
:
38
:
00
:
17
:
9
a
:
73
:
94
:
a7
:
08
:
00
|
10
.
0
.
0
.
1
|
10
.
0
.
0
.
5
|
53593
|
22
|
|
00
:
0
c
:
29
:
dc
:
bf
:
38
:
00
:
17
:
9
a
:
73
:
94
:
a7
:
08
:
00
|
10
.
0
.
0
.
1
|
10
.
0
.
0
.
5
|
48916
|
21
|
|
00
:
0
c
:
29
:
dc
:
bf
:
38
:
00
:
17
:
9
a
:
73
:
94
:
a7
:
08
:
00
|
10
.
0
.
0
.
1
|
10
.
0
.
0
.
5
|
48916
|
21
|
|
00
:
0
c
:
29
:
dc
:
bf
:
38
:
00
:
17
:
9
a
:
73
:
94
:
a7
:
08
:
00
|
10
.
0
.
0
.
1
|
10
.
0
.
0
.
5
|
48916
|
21
|
|
00
:
0
c
:
29
:
dc
:
bf
:
38
:
00
:
17
:
9
a
:
73
:
94
:
a7
:
08
:
00
|
10
.
0
.
0
.
1
|
10
.
0
.
0
.
5
|
48916
|
21
|
|
00
:
0
c
:
29
:
dc
:
bf
:
38
:
00
:
17
:
9
a
:
73
:
94
:
a7
:
08
:
00
|
10
.
0
.
0
.
1
|
10
.
0
.
0
.
5
|
48916
|
21
|
|
00
:
0
c
:
29
:
dc
:
bf
:
38
:
00
:
17
:
9
a
:
73
:
94
:
a7
:
08
:
00
|
10
.
0
.
0
.
1
|
10
.
0
.
0
.
5
|
48916
|
21
|
|
00
:
0
c
:
29
:
dc
:
bf
:
38
:
00
:
17
:
9
a
:
73
:
94
:
a7
:
08
:
00
|
10
.
0
.
0
.
1
|
10
.
0
.
0
.
5
|
48916
|
21
|
|
00
:
0
c
:
29
:
dc
:
bf
:
38
:
00
:
17
:
9
a
:
73
:
94
:
a7
:
08
:
00
|
10
.
0
.
0
.
1
|
10
.
0
.
0
.
5
|
48916
|
21
|
|
00
:
0
c
:
29
:
dc
:
bf
:
38
:
00
:
17
:
9
a
:
73
:
94
:
a7
:
08
:
00
|
10
.
0
.
0
.
1
|
10
.
0
.
0
.
5
|
48916
|
21
|
|
00
:
0
c
:
29
:
dc
:
bf
:
38
:
00
:
17
:
9
a
:
73
:
94
:
a7
:
08
:
00
|
10
.
0
.
0
.
1
|
10
.
0
.
0
.
5
|
48916
|
21
|
|
00
:
0
c
:
29
:
dc
:
bf
:
38
:
00
:
17
:
9
a
:
73
:
94
:
a7
:
08
:
00
|
10
.
0
.
0
.
1
|
10
.
0
.
0
.
5
|
48916
|
21
|
|
00
:
0
c
:
29
:
dc
:
bf
:
38
:
00
:
17
:
9
a
:
73
:
94
:
a7
:
08
:
00
|
10
.
0
.
0
.
1
|
10
.
0
.
0
.
5
|
48916
|
21
|
|
00
:
0
c
:
29
:
dc
:
bf
:
38
:
00
:
17
:
9
a
:
73
:
94
:
a7
:
08
:
00
|
10
.
0
.
0
.
1
|
10
.
0
.
0
.
5
|
48916
|
21
|
|
00
:
0
c
:
29
:
dc
:
bf
:
38
:
00
:
17
:
9
a
:
73
:
94
:
a7
:
08
:
00
|
10
.
0
.
0
.
1
|
10
.
0
.
0
.
5
|
48916
|
21
|
|
00
:
0
c
:
29
:
dc
:
bf
:
38
:
00
:
17
:
9
a
:
73
:
94
:
a7
:
08
:
00
|
10
.
0
.
0
.
1
|
10
.
0
.
0
.
5
|
48916
|
21
|
|
00
:
0
c
:
29
:
dc
:
bf
:
38
:
00
:
17
:
9
a
:
73
:
94
:
a7
:
08
:
00
|
10
.
0
.
0
.
1
|
10
.
0
.
0
.
5
|
48916
|
21
|
|
00
:
0
c
:
29
:
dc
:
bf
:
38
:
00
:
17
:
9
a
:
73
:
94
:
a7
:
08
:
00
|
10
.
0
.
0
.
1
|
10
.
0
.
0
.
5
|
53593
|
22
|
+-------------------------------------------+----------+----------+-----------+-----------+
18
rows
in
set
(
0
.
01
sec
)
mysql
>
select
ip_saddr
,
ip_daddr
,
ip_protocol
,
oob_in
,
tcp_sport
,
tcp_dport
,
pwsniff_user
,
pwsniff_pass
from
ulog
;
+----------+----------+-------------+--------+-----------+-----------+--------------+--------------+
|
ip_saddr
|
ip_daddr
|
ip_protocol
|
oob_in
|
tcp_sport
|
tcp_dport
|
pwsniff_user
|
pwsniff_pass
|
+----------+----------+-------------+--------+-----------+-----------+--------------+--------------+
|
10
.
0
.
0
.
1
|
10
.
0
.
0
.
5
|
6
|
eth0
|
53593
|
22
|
NULL
|
NULL
|
|
10
.
0
.
0
.
1
|
10
.
0
.
0
.
5
|
6
|
eth0
|
48916
|
21
|
NULL
|
NULL
|
|
10
.
0
.
0
.
1
|
10
.
0
.
0
.
5
|
6
|
eth0
|
48916
|
21
|
NULL
|
NULL
|
|
10
.
0
.
0
.
1
|
10
.
0
.
0
.
5
|
6
|
eth0
|
48916
|
21
|
NULL
|
NULL
|
|
10
.
0
.
0
.
1
|
10
.
0
.
0
.
5
|
6
|
eth0
|
48916
|
21
|
NULL
|
NULL
|
|
10
.
0
.
0
.
1
|
10
.
0
.
0
.
5
|
6
|
eth0
|
48916
|
21
|
NULL
|
NULL
|
|
10
.
0
.
0
.
1
|
10
.
0
.
0
.
5
|
6
|
eth0
|
48916
|
21
|
NULL
|
NULL
|
|
10
.
0
.
0
.
1
|
10
.
0
.
0
.
5
|
6
|
eth0
|
48916
|
21
|
radek
|
NULL
|
|
10
.
0
.
0
.
1
|
10
.
0
.
0
.
5
|
6
|
eth0
|
48916
|
21
|
NULL
|
NULL
|
|
10
.
0
.
0
.
1
|
10
.
0
.
0
.
5
|
6
|
eth0
|
48916
|
21
|
NULL
|
tajne
|
www.lpmagazine.org
33
Bezpieczeństwo
Zaawanowane mechanizmy logowania ruchu w sieci
Listing 1.
Wydruk zawartości c.d.
|
10
.
0
.
0
.
1
|
10
.
0
.
0
.
5
|
6
|
eth0
|
48916
|
21
|
NULL
|
NULL
|
|
10
.
0
.
0
.
1
|
10
.
0
.
0
.
5
|
6
|
eth0
|
48916
|
21
|
NULL
|
NULL
|
|
10
.
0
.
0
.
1
|
10
.
0
.
0
.
5
|
6
|
eth0
|
48916
|
21
|
NULL
|
NULL
|
|
10
.
0
.
0
.
1
|
10
.
0
.
0
.
5
|
6
|
eth0
|
48916
|
21
|
NULL
|
NULL
|
|
10
.
0
.
0
.
1
|
10
.
0
.
0
.
5
|
6
|
eth0
|
48916
|
21
|
NULL
|
NULL
|
|
10
.
0
.
0
.
1
|
10
.
0
.
0
.
5
|
6
|
eth0
|
48916
|
21
|
NULL
|
NULL
|
|
10
.
0
.
0
.
1
|
10
.
0
.
0
.
5
|
6
|
eth0
|
48916
|
21
|
NULL
|
NULL
|
|
10
.
0
.
0
.
1
|
10
.
0
.
0
.
5
|
6
|
eth0
|
53593
|
22
|
NULL
|
NULL
|
+----------+----------+-------------+--------+-----------+-----------+--------------+--------------+
18
rows
in
set
(
0
.
00
sec
)
mysql
>
quit
Bye
[
radek
@
centos
]
$
Uwaga! - poprawne zbudowanie reguł jest
kluczowym warunkiem poprawności dzia-
łania demona ulogd. Jeśli będą one zbyt re-
strykcyjne, nic nie będzie traiać do demo-
na ulogd a tym samym logi będą puste.
Z drugiej jednak strony logowanie całego
ruchu (zwłaszcza na systemach pełniących
rolę routerów) również mija się z celem.
W takim wypadku informacji może być tak
dużo, że przestaną one być czytelne. Tam
gdzie można, należy stosować preix'y (w po-
wyższym przypadku zastosowany został
preix test1). Dobrym pomysłem jest również
logowanie tylko tych pakietów, które ini-
cjują połączenia – np. z podniesioną lagą
SYN.
Kolejnym etapem testu będzie stworzenie
pliku koniguracyjnego o nazwie ulog.test1.
Jego składnia wygląda następująco:
rmem=131071
# parametry bufora odbiorczego
bufsize=150000
# parametry bufora odbiorczego
plugin="/usr/local/lib/ulogd/
ulogd_BASE.so"
# załadowanie głównego pluginu
plugin="/usr/local/lib/ulogd/
ulogd_LOGEMU.so"
# załadowanie pluginu LOGEMU [LOGEMU]
# sekcja koniguracji pluginu LOGEMU
ile="/var/log/ulogd.syslogemu"
# plik, w którym zapisany
zostanie wynik
# działania modułu
sync=0
# wskazanie, czy dane w pliku
mają być zapisywane
# synchronicznie (1) czy nie (0)
Sat Jan 6 14:09:41 2007 <3>
ulogd.c:308 registering
interpreter `oob'
Sat Jan 6 14:09:41 2007 <3>
ulogd.c:308 registering
interpreter `ip'
Sat Jan 6 14:09:41 2007 <3>
ulogd.c:308 registering
interpreter `tcp'
Sat Jan 6 14:09:41 2007 <3>
ulogd.c:308 registering
interpreter `icmp'
Sat Jan 6 14:09:41 2007 <3>
ulogd.c:308 registering
interpreter `udp'
Sat Jan 6 14:09:41 2007 <3>
ulogd.c:308 registering
interpreter `ahesp'
Sat Jan 6 14:09:41 2007 <3>
ulogd.c:363 registering
output `syslogemu'
[global]
nlgroup=1
# ta wartość musi być taka sama
jak podana
# powyżej w regule iptables
logile="/var/log/ulogd.log"
# plik logów działania demona
ulogd loglevel=1
# poziom logowania 1-8.
Im mniejszy poziom tym
# logi bardziej szczegółowe
Teraz z linii poleceń należy uruchomić demo-
na ulogd wskazując mu powyższy plik kon-
iguracyjny:
Ulogd działa – teraz należy wygenerować
trochę ruchu na port 22 i patrzeć na wyni-
ki zapisane w pliku
/var/log/ulogd.syslogemu
.
Ostatnim krokiem jest przeniesienie pliku
koniguracyjnego do katalogu
/etc
, nadanie
mu nazwy ulogd.conf i uruchomienie ulogd
jako demona za pomocą polecenia:
ulogd -c /sciezka/do/pliku/ulog1.test1
Demon powinien poinformować, jakie mo-
duły zostały zarejestrowane:
Sat Jan 6 14:09:41 2007 <3> ulogd.c:
308 registering interpreter `raw'
service ulogd start
Tabela 3
Parametry
Parametr Opis
--ulog-nlgroup N Parametr wskazujący numer grupy multicastowej do której wysyłane są dane.
Wartość N pdana w regule musi być identyczna z wartością parametru nlgroup
wskazaną w pliku koniguracyjnym ulogd.conf
--ulog cprange N Wskazanie ilośći bajtów jaka ma być kopiowana z każdego pakietu. Wartość
domyślna “0” oznacza kopiowanie całej zawartości
--ulog-qthreshold N Wymuszanie rozładowania kolejki w chwili pojawienia się N+1 pakietu
--ulog-preix STRING Łańcuch tekstowy dodawany do każdego zalogowanego pakietu
Format pliku syslogemu powinien byc po-
dobny do listingu, znajdującego się pod
tabelą opisującą moduły ulogd. Analo-
gicznie, dla otrzymania wyników drugie-
go listingu, plik koniguracyjny powinien
wyglądac następująco:
[global]
nlgroup=1
logile="/var/log/ulogd.log"
34
marzec 2007
Plik z chomika:
Kapy97
Inne pliki z tego folderu:
2007.06_Weryfikacja nadawcy–dylematy administratora_[Bezpieczenstwo].pdf
(753 KB)
2007.04_Qmail – nowoczesny serwer pocztowy_[Bezpieczenstwo].pdf
(670 KB)
2006.01_Analiza bezpieczeństwa komunikatora internetowego z wykorzystaniem platformy Linux_[Bezpieczenstwo].pdf
(427 KB)
2006.01_Bezpieczne sieci bezprzewodowe_[Bezpieczenstwo].pdf
(784 KB)
2005.01_Nessus – skaner bezpieczeństwa_[Bezpieczenstwo].pdf
(604 KB)
Inne foldery tego chomika:
Administracja
Aktualnosci
Audio
Bazy Danych
Biznes
Zgłoś jeśli
naruszono regulamin