Početak›Forumi›Linuks distribucije›Gentoo›Instalacija SNORT+APACHE+ACID(BASE)+MYSQL+PASSIVE TAP (3 NIC)
- This topic has 5 odgovora, 4 glasa, and was last updated 16 years, 6 months ranije by GoranSTX.
-
AutorČlanci
-
26. septembar 2007. u 1:48 pm #9299salacUčesnik
Instalacija SNORT+APACHE+ACID(BASE)+MYSQL+PASSIVE TAP (3 NIC)
Uvod
U ovom malom HOWTO dat je postupak uz pomoc kojeg se linux masina pretvara u NIDS (network intrusion detection system). U radu je koriscena gentoo distribucija ali naravno uz odgovarajuce prepravke skoro identican postupak se moze izvesti na bilo kom drugom distrou.
Da li vec negde postoji ovakvo uputstvo?
Verovatno da; na http://gentoo-wiki.com mogu se naci delovi ovoga uputstva razbacani u dve ili tri sekcije, ali barem ja do sada nisam nigde nasao kompletan postupak – od definisanja bonding interfejsa, preko instalacije snorta i acid/base do pravljenja passive tapping kutije.
Sta je potrebno za pravljenje NIDS-a?
-Potrebna je fer PC konfiguracija, real-time analiza mreznog saobracaja nije posao koji mogu da odrade raspale 486/P1/P2 masine koje skupljaju prasinu, narocito ako se analizira saobracaj po 10/100 Mb UTP kablovima.
-Potrebne su TRI mrezne kartice, od kojih se dve koriste za prisluskivanje. Pozeljno je da ova dva ‘prisluskivacka’ NIC-a budu gigabitne kartice pa makar u PCI varijanti; naravno da niko ne ocekuje da PCI gigabitna karta moze da dostigne protok od 1Gbps, ali u odnosu na standardne 100Mbps one imaju veci buffer te su stoga pogodnije za ovu primenu.Postupak instalacije
1.Rekompajiranje kernela i kompajliranje ifenslave user-space alata
Ukljucuje se u kernelu podrska za bonding, ukoliko vec nije ukljucena:
Device Drivers -> Networking Support -> Bonding Driver SupportIskompajlirati ifenslave alat koji sluzi za manipulaciju bond-ovanih interfejsa:
# cd temp
# gcc –Wall –Wstrict-prototypes –O –I/usr/src/linux/include /usr/src/linux/Documentation/networking ifenslave.c –o ifenslave
# mv ifenslave /sbin/ifenslaveRestart sistema da bi rekompajlirani kernel zaziveo.
2.Editovanje konfiguracionih fajlova
Ubaciti automatsko ucitavanje modula pri restartovanju sistema
# echo bonding >> /etc/modules.autoload.d/kernel-2.6
# echo “alias bond” bonding >> /etc/modprobe.conf
(moze i u /etc/modules.d/aliases umesto u /etc/modprobe.conf)3.Dodavanje bonding-a za dva NIC-a koja ce sluziti za tapping (prisluskivanje) i definisanje IP adresa
# cd /etc/init.d
# cp net.eth0 net.eth1
# cp net.eth0 net.eth2
# cp net.eth0 net.bond0
U ovom slucaju ispalo je da su eth0 I eth2 kartice koje ce biti u bonding-u dok je eth1 kartica koja sluzi kao izlazni interfejs, tj interfejs preko kome moze da se pristupa NIDS sistemu.U /etc/conf.d/local.start se dodaje:
/sbin/ifenslave bond0 eth0
/sbin/ifenslave bond0 eth2Setovanje IP adrese za bonding interfejs i za eth1, edituje se /etc/conf.d/net fajl i unosi: iface_eth1=”192.168.0.100 broadcast 192.168.0.255 netmask 255.255.255.0”
iface _bond0= “127.0.0.10 broadcast 127.255.255.255.0 netmask 255.255.255.0”
gateway =”eth1/192.168.0.250”Ako nisu iskljucene startup skripte za eth0 I eth2, treba ih iskljuciti i ubaciti skripte za bond0 i eth1 u default running level :
# rc-update del net.eth0 default
# rc-update del net.eth2 default
# rc-update add net.eth1 default
# rc-update add net.bond0 default
Restart sistema, masina se boot-uje sa bond-ovanim NIC-evima.4.Instalacija SNORT-a, MySQL-a, Apache-a, php-a, Libnet-a
Prvo treba podesiti USE varijable u /etc/make.conf
USE=’gd-external mysql apache2 php openssl jpg png gif –X –gtk –gnome –alsa”Sledi emerge-ovanje potrebnih paketa:
# emerge dev-php5/jpgraph php mysql apache net-libs/libnet lynx snort5.Sredjivanje startup skripti
# rc-update add snort default
# rc-update add mysql default
# rc-update add apache2 default6.Instalacija pocetnih baza za mysql
# /usr/bin/mysql_install_dbStartovanje apache i mysql-a :
# /etc/init.d/apache2 start
# /etc/init.d/mysql startSetovanje prava pristupa, uvodjenje root pass-a:
# mysql>SET PASSWORD FOR root@localhost=PASSWORD(“test”);
>create database snort;
>grant INSERT,SELECT on root.* to snort@localhost;
>SET PASSWORD FOR snort@localhost = PASSWORD(“test”);
>grant CREATE,INSERT,SELECT,DELETE,UPDATE on snort.* to snort@localhost
>grant CREATE,INSERT,SELECT,DELETE,UPDATE on snort.* to snort;
>exit;Ovim je uveden root password, napravljena nova baza i novi user snort.
7.Kreiranje SNORT baza (ovde je stara 2.2.0 verzija, sada aktuelna je 2.6.x):
# gunzip /usr/share/doc/snort-2.2.0/contrib/create_mysql.gz
# mysql –p
Options Multiviews Indexes Includes FollowSymLinks
AllowOverride AllOrder allow,deny
Allow from allNaravno podrazumeva se da je u /etc/conf.d/apache2 ukljucena podrska za php
APACHE2_OPTS=”-D SSL -D PHP5″10.Instalacija i setovanje ACID-a ( tj BASE-a)
Od vremena kada sam ja pravio NIDS sistem ACID je promenio ime i sada se zove BASE (znaci ode iz kiseline u bazu), ali instalacija i setovanje su identicni:
# ACCEPT_KEYWORDS=”~x86” emerge net-analyzer/baseNa kraju treba editovati config fajl /etc/base/base_conf.php :
$DBtype = “mysql” ;
$alert_dbname = “snort”;
$alert_host=”localhost”;
$alert_user=”snort”;
$alert_password=”test”;
$archive_dbname=”snort”;
$archive_host=”localhost”;
$archive_port=””;
$archive_user=”snort”;
$archive_password=”test”;Instalacija je gotova, sada se kroz browser otvori https://localhost/base/base_db_setup.php
klikne na “Setup AG” da se instaliraju neke dodatne tabele.11.Izrada PASSIVE TAP kutije
Za izradu kutije najbolje je da se iskoristi neka od vec gotovih uticnica sa 4 RJ-45 lezista i onda se jednostavno veze izmedju njih prespoje po sledecoj shemi:
Ukoliko treba da se prisluskuje neka od mreznih veza (recimo kabl izmedju servera i switch-a) potrebno je uraditi sledece:
-dve NIC kartice koje su u bonding se obicnim kablom zabodu u tap1 i tap2 na kutiji.
-raskine se veza server-switch, uzme se kabl i zabode sa jedne strane u switch a sa druge u host1 na kutiji
-uzme se jos jedan UTP kabl i sa jedne strane se zabode u server a sa druge u host2 na kutiji.Napomena:
Potrudite se da kablovi za tapping budu sto kraci i da sto je manje moguce raspredate parice kada pravite tapping kutiju , sve to neminovno unosi smetnje! Kablovi kojima se vezuju bonding NIC-evi sa kutijom NIKAKO ne smeju da budu duzi od 15-20 cm!To je sve! Uzivajte 😀
Salac26. septembar 2007. u 4:19 pm #62808psy_unixUčesnikSvaka tebi cast brate i bas si me prijatno iznenadio . Inace imam i tri gigabitne katrice i gentoo 64 bit , pa cu naravno za vikend probati , tacnije u subotu jer u nedelju je GIGA LIGA .
Pitanje: Da li ima veze ako stavim Gentoo 64 bit posto 32 bit-a nikad nisam ni uspeo da instaliram .
Licno mislim da ne bi trebalo da bude problema
P.S. Ostali : ugledajte se na salac . 😀 O0 >:D :biggrin:26. septembar 2007. u 5:50 pm #62809salacUčesnikHvala na pohvalama 🙂
Ne vidim zasto 64-bitna verzija ne bi radila, naprotiv, real-time analiza bi trebala da bude brza nego na 32-bitnim sistemima.
poz.
26. septembar 2007. u 6:02 pm #62810dukenukem_4dUčesnikSkava cast ,ovo je super O0
nego ovde kazu da
nije kompatibailan ovaj tap sa gigabitnim ethernetom?
(ili ako se koriste ove gigabitne kartice kao 10/100?)26. septembar 2007. u 7:20 pm #62811salacUčesnikIstina je, ovom kutijom ne moze da se tap-uje gigabitna ethernet konekcija zato sto se tada koriste sve 4 parice za prenos podataka (za razliku od 100Base-TX standarda gde se koriste samo dve). Cisto sumnjam da se uopste moze napraviti pasivna kutija obzirom na to koliko je gigabitni ethernet osetljiv na smetnje….
Ako se zeli tapping i na gigabitnim konekcijama onda se moraju odvojiti pare za aktivnu tapping kutiju (koja u principu jeste gigabitni hub). Koliko takva stvarcica kosta, nemam pojma. U tom slucaju su umesto tri dovoljna dva NIC-a na NIDS-u.
poz.
26. septembar 2007. u 7:23 pm #62812GoranSTXUčesnikBravo, salac, zaista detaljno i korisno.
-
AutorČlanci
Moraš biti prijavljen da bi postavio komentar u ovoj temi.