OpenAudit LAMP serveril.: Difference between revisions
Line 91: | Line 91: | ||
<pre><Masina IP> audiitor.lan audiitor</pre> | <pre><Masina IP> audiitor.lan audiitor</pre> | ||
Nimelahenduse töötamist saad kontrollida käsuga: | Nimelahenduse töötamist saad kontrollida käsuga: | ||
Line 105: | Line 97: | ||
...peab saama vastused õigelt IP'lt. | ...peab saama vastused õigelt IP'lt. | ||
== Tulemüüris portide avamine == | == Tulemüüris portide avamine == |
Revision as of 22:44, 10 November 2010
OpenAudit installeerimine LAMP serveril.
...ARTIKKEL ALLES VALMIMISEL...
- Autor: Martin Leisberg
- Versioon: 1.0
- Loodud: 26.09.2010
Sissejuhatus
Artikkel räägib rakendusest [openAudit], mis võiks IT süsteemiadministraatorite mõningaid igapäevaseid tegevusi hõlbustada...kergendada. IT inimesed teavad reeglina kõik kui raske on hoida ajakohasena informatsiooni firmas oleva riistavara/tarkvara/litsentside/printerite jne jne kohta. Loomuliklut ei kehti see ütleme nii 10 masinaga firma vaatenurgast kuigi ka seal võib see tüütust piisavalt valmistada.
OpenAudit on rakendus, mis ütleb sulle täpselt mis on su võrgus, kuidas see seadistatud on ja millal on sellega muutused toimunud! Töötab nii Microsoft kui ka Linuxi platvormidel. Põhiolemuselt on tegemist informatsiooni andmebaasiga, millele esitatakse päringuid läbi lihtsa veebiliidese (veebileht). Info võrgu kohta saab baasi läbi Bash skripti (Linux) või läbi VBScript'i (Microsoft).Terve rakendus on kirjutatud kasutades PHP'd, bash'i ja vbscript'i. Nagu näha on tegemist nn „skriptimis“ keeltega, ei ole vaja mingit kompileerimist, muutes nii igaühel kohandamise ning vastavalt vajadustele seadistamise väga mugavaks!
Windowsi baasil PC'de kohta saab pärida näiteks riistvara, tarkvara, operatsioonisüsteemi seadete, turvaseadete, IIS seadete, teenuste, kasutajate ja gruppide ning palju palju muu kohta. Linux baasil masinatest saab pärida suhteliselt samasugust informatsiooni. Võrguseadmete (printerid, switchid, ruuterin jne) kohta talletatakse IP aadressid, MAC aadressid, avatud pordid, seerianumbrid jne jne. Infot saab automaatselt genereerida veebilehe asemel alternatiivselt PDF raportile või CSV formaati.
OpenAuditit on võimalik seadistada meie võrku ja seadmeid skänneerima automaatselt. Soovitatakse teha üks skän päevas seadmete kohta ning võrgu kohta iga paari tunni tagant (ilmselt liiga paranoialine arvamus). Sellega tagame ajakohase info kui midagi on seadmetes või võrgus muutunud/muutumas!
Eeldused
- Riistvaralised standalone masinale:
- 128 MB RAM
- 10 GB HDD
- LAN
- 128 MB RAM
- Hoides kogu audiitori funktsionaalsust vabavarana siis Ubuntu 10.04 Server LTS, LAMP server. (Antud juhend on tehtud just selle operatsioonisüsteemi baasil)
- Mugavaks installeerimiseks OpenAudit masina ligipääs internetile.
- Kasutajakonto millel on WMI ligipääs kõikidele masinatele millistest tahetakse infot korjata (Microsoft masinad).
- Administraatoril peavad olema baasteadmised kasutamaks Linuxi konsooli.
- Administraatoril peavad olema baasteadmised Linuxi failiõigustest.
- Administraator peab teadma auditeeritava arvutivõrgu ehitust ning struktuuri.
- Kasuks tuleb MySQL'i kasutamise oskus käsurealt.
- Masin või seade kust käivitades on info korjamise skriptil ligipääs kõikidele auditisse tulevatele masinatele ning teistpidi on ligipääs OpenAudit masinasse korjatud andmete talletamiseks.
- root ligipääs Linux masinas või muud administreerimist ja installeerimist teha võimaldav kasutaja.
- Tulemüüris peab olema avatud http port (80).
Teenuse üldkirjeldus
Lõpptulemusena on meil installitud Linuxi baasil masin, milles jookseb veebiserver, MySQL andmebaas ning nende kahe vahel PHP. Süsteemi toimimise juures mängivad väga suurt rolli 2 skripti: ühe seadistus näitab milline on meie võrk ehk kuskohast skännitavaid seadmeid leida ning teine kirjeldab kuidas infot seadmest koguda (Linux ja MS platvorimide tarvis eraldi skriptid info kogumiseks).
Kuna minu lahendus on seadistatud infot korjama domeenist, on ka vastav skript, IT süsteemi kohta (all pool detailsemalt), seadistatud domeeni tarvis. Skript tuleb käivitada masinst ja õigustes, millel on kõikide teiste masinate puhul lubatud WMI ligipääs, ilma nende kahe kriteeriumita lihtsalt ole võimalik masina kohta infot koguda. Protsess näeb väja umbese järgmine: käivitub domeenikontrollerist auditeerimisskripti mis võtab endale ette ActiveDirectoryist masinate nimekirja ja hakkab neist ükshaaval infot koguma. Iga masina inspekteerimise lõpus saadetakse tema info Linuxi masinasse ning talletatakse MySQL baasi. Kui kogu masinapargi info baasis koos, saab sellele ligi ning andmeid pärida läbi kenade PHP lehtede, mida jooksutab samas masinas olev veebiserver.
Installeerimine
Kuna enmus järgmistest käskudest on vaja sisestada konsooli root õigustes ning Ubuntu puhul on küllaltki tülikas iga käsu ette kirjutada sudo siis kasutame korraldust:
sudo -i
Nüüd on meil root õigustes konsool ning puudub vajadus sudo korraldusele käskude ees!
Uuenda repositooriumite nimekirja:
apt-get update
Uuenda süsteemi:
apt-get upgrade
Kui uuenduste hulgas oli ka uus kernel, tuleks peale uuendamist teha masinale restart!
Installi veebiserver:
apt-get install apache2
Installi MySQL server:
apt-get install mysql-server
Installi PHP:
apt-get install php5 php5-mysql
Installi SVN klient:
apt-get install subversion
Konfigureerimine
Seadistamise osas on iga etapi juures oluline root kasutaja õigused. Kui root kasutaja õigused puuduvad on võimalik need saada käsuga:
sudo -i
Nimelahenduse loomine
Tekitame oma masinale nimelahenduse, selleks kontrolli oma masina IP'd käsuga:
ifconfig
Lisa /etc/hosts faili rida:
<Masina IP> audiitor.lan audiitor
Nimelahenduse töötamist saad kontrollida käsuga:
ping audiitor
...peab saama vastused õigelt IP'lt.
Tulemüüris portide avamine
Kui tulemüürina on vaikimisi rakendatud Ubuntu sisseehitatud UFW müüri, tuleks kontrollida millised protokollid serverile ligi lastakse. Reegleid näeb käsuga (eeldusel et UFW teenus on rakendatud):
ufw status
Kui nimekirjas ei ole http (80/tcp) ega SSH (22) lubavaid reegleid saab need lisada:
ufw allow http
ufw allow ssh
OpenAudit failid
OpenAudit rakenduse failid asuvad SVN repositooriumis sourceforge.net lehel. Kõige uuemate failide allalaadimiseks oma masinasse tuleb kasutada varem installitud SVN klienti.
Loo kataloog kuhu failid serverist laadida:
mkdir OAfiles
Lae SVN'ist uusimad töötavad failid loodud kataloogi:
svn co https://open-audit.svn.sourceforge.net/svnroot/open-audit ./Oafiles/
Veebiserveri seadistamine
Restardi veebiserver:
service apache2 restart
Loo kataloog /var/www/audiitor:
mkdir /var/www/audiitor
Kopeeri kaustast /etc/apache2/sites-available/ default konfiguratsioon ning loo sellest audiitor nimeline koopia:
cp -v /etc/apache2/sites-available/default /etc/apache2/sites-available/audiitor
Ava audiitor konfiguratsioonifail lemmik tekstiredakotoriga:
vim /etc/apache2/sites-available/audiitor
...ning muuda järgnevaks:
<VirtualHost *:80> ServerAdmin webmaster@localhost DocumentRoot /var/www/audiitor #muutmist vajav rida! <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /var/www/audiitor> #muutimst vajav rida! Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all </Directory> ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ <Directory "/usr/lib/cgi-bin"> AllowOverride None Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch Order allow,deny Allow from all </Directory> ErrorLog /var/log/apache2/audiitor.error.log #muutmist vajav rida # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. LogLevel warn CustomLog /var/log/apache2/audiitor.access.log combined #muutmist vajav rida Alias /doc/ "/usr/share/doc/" <Directory "/usr/share/doc/"> Options Indexes MultiViews FollowSymLinks AllowOverride None Order deny,allow Deny from all Allow from 127.0.0.0/255.0.0.0 ::1/128 </Directory> </VirtualHost>
Korrektseks toimimiseks keelame veebiserveril default lehe:
a2dissite default
...ja lubame lehe audiitor:
a2ensite audiitor service apache2 restart
Kontrolliks võib vaadata kausta /etc/apache2/sites-enabled sisu:
ls -l /etc/apache2/sites-enabled/
...mille sisuks peab olema:
audiitor -> ../sites-available/audiitor