Suricata
Autorid: Martin Leppik ja Randel Raidmets
Rühm: A31
Kuupäev: 12.12.2013
Eesmärk
Linuxi administreerimise aine raames paigaldada vastavale Ubuntu serverile sissetungimise avastamise süsteem nimega Suricata. Pärast paigaldust konfigureerida peamised sätted ja reeglid ning viimasena testida süsteemi toimimist.
Eeldused
- Baasteadmised Linuxist.
- Oskus hakkama saada käsureaga.
- Algteadmised võrgundusest (Cisco CCNA1).
Nõuded
Nii server kui ka klient töötavad meie lahenduse puhul Oracle'i Virtualboxi peal. Lisaks on soovitav on kasutada "Extension Packi" ja "Guest Additione".
Server
- Ubuntu Server 12.04.1 LTS (64bit) - http://elab.itcollege.ee:8000/ubuntu-12.04.1-server-amd64.iso
- RAM 512MB
- HDD dynamicly allocated 8GB
- 2 Võrgukaarti NIC1 - NAT (eth0 - Ubuntus) ja NIC2 - HostOnly (eth1 - Ubuntus)
- Liidese eth1 ip aadress 192.168.56.201
- OpenSSH olemasolu
Kasutasime eelnevalt seadistatud serverit, mis on pärit IT infrastruktuuri teenuste ainest, mida natuke muutsime (sellest lähemalt eelseadistuse osas). Kasutajanimi ja parool on student. Klient
- Ubuntu Desktop 12.04.1 LTS ISO (64bit) - http://elab.itcollege.ee:8000/ubuntu-12.04.1-desktop-amd64.iso
- OpenSSH olemasolu
Ksutasime eelnevalt seadistatud klienti. Kasutajanimi ja parool on student.
Eelseadistus
Kõik käsud käivitame serveris juurkasutaja õigustes.
1.Muudame ära hostname'i nimeks suricata.
nano /etc/hostname
2.Muudame liidese eth1 IP aadressi selliseks 192.168.56.201.
nano /etc/network/interfaces
Liidese eth1 näidis:
auto eth1
iface eth1 inet static
address 192.168.56.201
netmask 255.255.255.0
3. Kirjeldame faili /etc/hosts sisu
nano /etc/hosts
Faili /etc/hosts faili näidis:
127.0.0.1 localhost
127.0.1.1 suricata.planet.zz suricata
192.168.56.201 suricata.planet.zz suricata
192.168.56.200 puppetmaster.planet.zz puppetmaster
192.168.56.101 klient.planet.zz klient
4. Uuendame ära tarkvara nimekirja info
apt-get update
5. Uuendame ära tarkvara
apt-get upgrade
Paigaldus Ubuntu serveris
1. Kõigepealt paigaldame paki nimega "python-software-properties", kuna selle sees asub programm "add-apt-repository", mida kasutame järgmisena.
apt-get install python-software-properties
2. Viimase stabiilse Suricata versiooni jaoks käivita vastavad käsud:
add-apt-repository ppa:oisf/suricata-stable
apt-get update
3. Järgmisena paigalda Suricata
apt-get install suricata
Uuendamine ja eemaldamine
1. Suricata uuendamiseks käsud
apt-get update
apt-get upgrade
2. Eemaldamiseks käsk
apt-get remove suricata
Süsteemi üldkirjeldus
Siia tuleb panna skeem ja juurde kirjutada.
Baaskonfiguratsioon
Need käsud käivita serveris juurkasutajaõigustes.
1. Loome kausta Suricata logide jaoks.
mkdir /var/log/suricata
2. Avame faili /etc/suricata/suricata.yaml
nano /etc/suricata/suricata.yaml
3. Kirjeldame, millised operatsioonisüsteemid on meie võrgus seal, kus hakkab rida "host-os-policy" ja nimetame nende ip aadressid.
host-os-policy:
# Make the default policy windows.
windows: []
bsd: []
bsd-right: []
old-linux: []
linux: [192.168.56.200, 192.168.56.201, 192.168.56.101, 127.0.0.1]
old-solaris: []
solaris: []
hpux10: []
hpux11: []
irix: []
macos: []
vista: []
4. Kirjeldame koduvõrgu serveri ip aadressi kohas, mis algab reaga "address-groups:"
address-groups:
HOME_NET: "[192.168.56.0/24]"
EXTERNAL_NET: "!$HOME_NET"
Kiire testimine
Need käsud käivita serveris juurkasutaja õigustes.
1. Loome faili test.rules kausta /etc/suricata/rules/
touch /etc/suricata/rules/test.rules
2. Kirjutama test.rules faili testimise jaoks ühe reegli.
alert ip any any -> any any (msg:"ICMP detected"; sid:2; rev:1;)
3. Avame uuesti faili /etc/suricata/suricata.yaml, kus lähme rea juurde, mis hakkab reaga "rule_files:" ja kommenteerime kõik reeglid välja ja kirjeldame seal oma reegli nimega "test.rules".
rule-files:
- test.rules
# - botcc.rules
# - ciarmy.rules
# - compromised.rules
# - drop.rules
# - dshield.rules
# - emerging-activex.rules
# - emerging-attack_response.rules
# - emerging-chat.rules
# - emerging-current_events.rules
# - emerging-dns.rules
# - emerging-dos.rules
# - emerging-exploit.rules
# - emerging-ftp.rules
...
4. Paneme suricata monitoorima eth1 liidese peal.
suricata -c /etc/suricata/suricata.yaml -i eth1
5. Teeme oma kliendi masina pealt pingi Suricata serveri pihta.
ping 192.168.56.201
6. Laseme tunde järgi pingida ja seejärel paneme monitoorimise kinni ning vaatame logi.
less /var/log/suricata/fast.log
7. Logi sisu peaks olema umbes selline:
01/15/2014-00:08:59.409903 [**] [1:2:1] ICMP detected [**] [Classification: (null)] [Priority: 3] {ICMP} 192.168.56.101:8 -> 192.168.56.201:0
01/15/2014-00:08:59.409937 [**] [1:2:1] ICMP detected [**] [Classification: (null)] [Priority: 3] {ICMP} 192.168.56.201:0 -> 192.168.56.101:0
01/15/2014-00:09:00.410130 [**] [1:2:1] ICMP detected [**] [Classification: (null)] [Priority: 3] {ICMP} 192.168.56.101:8 -> 192.168.56.201:0
01/15/2014-00:09:00.410171 [**] [1:2:1] ICMP detected [**] [Classification: (null)] [Priority: 3] {ICMP} 192.168.56.201:0 -> 192.168.56.101:0