Logiserver, mis kogub võrgust kokku mikrotik ruuteri logid: Difference between revisions

From ICO wiki
Jump to navigationJump to search
(Created page with "Labor 2 Protokoll - Mikrotik ruuteri logiserver Lauri Rüütli A41 ja Tõnu Ruut AK31 07.01.14 == Ülesande Püstitus == Luua logiserver, mis korjab võrgust kokku mikrotik …")
 
 
(11 intermediate revisions by the same user not shown)
Line 9: Line 9:
Luua logiserver, mis korjab võrgust kokku mikrotik ruuteri logid  
Luua logiserver, mis korjab võrgust kokku mikrotik ruuteri logid  


Server: Ubuntu Server 32bit versioon 12.04 TLS
Server: Ubuntu Server 32bit versioon 12.04 TLS (võib kasutada ka teisi linux versioone)


Võrguseade Mikrotik RB951G-2HnD versioon 6.7
Võrguseade Mikrotik RB951G-2HnD versioon 6.7 (võib kasutada ka teisi ruutereid, kuid seljuhul tuleb kasutada teisi ruuteri seadistamise käske, kui selles õpetuses kirjeldatud)


== Kasutatud tarkvara ==
== Kasutatud tarkvara ==
Line 25: Line 25:
== Serveri seadistamine ==
== Serveri seadistamine ==


Uus virtuaalserver nimega logserver ip aadressiga 192.168.1.93
Uus virtuaalserver nimega logserver ip aadressiga 192.168.88.241 (võib olla erinev)


Ruuter ip aadressiga 192.168.1.87
Ruuter ip aadressiga 192.168.88.1 (võib olla erinev)


== Logstash ==
== Logstash ==
Käsud sisestada sudo kasutajaga [http://enos.itcollege.ee/~mernits/Linux%20administreerimine/Arnus%20-%20keskne%20logilahendus.pdf] 


Installin openjdk,  
Installin openjdk,  
Line 48: Line 50:
</source>
</source>


Loon konfiguratsioonifaili /etc/logstash/logstash.conf. Failis kirjeldan pordi numbri ja  nime, millega on hiljem võimalik logisid grupeerida.   
Loon konfiguratsioonifaili /etc/logstash/logstash.conf. Failis kirjeldan pordi numbri ja  nime, millega on hiljem võimalik logisid grupeerida.   [http://enos.itcollege.ee/~mernits/Linux%20administreerimine/Arnus%20-%20keskne%20logilahendus.pdf]  


<source lang="bash">
<source lang="bash">
Line 55: Line 57:
         udp {
         udp {
                 type => "mikrotik"
                 type => "mikrotik"
                 port => 514
                 port => 10517
         }
         }
         #Logiserveri enda logid
         #Logiserveri enda logid
Line 72: Line 74:
</source>
</source>


Loon automaatse käivituse jaoks kirje upstarti  
Loon automaatse käivituse jaoks kirje upstarti [http://enos.itcollege.ee/~mernits/Linux%20administreerimine/Arnus%20-%20keskne%20logilahendus.pdf]


Faili nimi /etc/init/logstash-server.conf
Faili nimi /etc/init/logstash-server.conf
Line 105: Line 107:
</source>
</source>


Loon kausta /var/log/logstash ja kasutaja nimega logstash ning lisan ta gruppi adm.  
Loon kausta /var/log/logstash ja kasutaja nimega logstash ning lisan ta gruppi adm. [http://enos.itcollege.ee/~mernits/Linux%20administreerimine/Arnus%20-%20keskne%20logilahendus.pdf]


<source lang="bash">
<source lang="bash">
Line 114: Line 116:
</source>
</source>


Muudan vajalike kaustade omanikuks kasutaja nimega "logstash" ja grupi "adm"  
Muudan vajalike kaustade omanikuks kasutaja nimega "logstash" ja grupi "adm" [http://enos.itcollege.ee/~mernits/Linux%20administreerimine/Arnus%20-%20keskne%20logilahendus.pdf]


<source lang="bash">
<source lang="bash">
Line 124: Line 126:
== Elasticsearch ==
== Elasticsearch ==


Laen internetist alla elasticsearchi  paki, installerin ja eemaldan faili.  
Laen internetist alla elasticsearchi  paki, installerin ja eemaldan faili. [http://enos.itcollege.ee/~mernits/Linux%20administreerimine/Arnus%20-%20keskne%20logilahendus.pdf]


<source lang="bash">
<source lang="bash">
Line 133: Line 135:
</source>
</source>


Käivitan teenuse
Käivitan teenuse [http://enos.itcollege.ee/~mernits/Linux%20administreerimine/Arnus%20-%20keskne%20logilahendus.pdf]
<source lang="bash">
<source lang="bash">
service elasticsearch start
service elasticsearch start
Line 140: Line 142:
== Kibana ==
== Kibana ==


Installeerin sõltuvused ja tõmban internetist pakitud kibana arhiivi.  
Installeerin sõltuvused ja tõmban internetist pakitud kibana arhiivi. [http://enos.itcollege.ee/~mernits/Linux%20administreerimine/Arnus%20-%20keskne%20logilahendus.pdf]


<source lang="bash">
<source lang="bash">
Line 146: Line 148:
tar xvzf rubygems-2.1.11.tgz
tar xvzf rubygems-2.1.11.tgz
cd rubygems-2.1.11
cd rubygems-2.1.11
apt-get install ruby1.9.3 rubygems
ruby setup.rb
ruby setup.rb
apt-get install ruby1.9.3 rubygems
 
   
   
wget https://github.com/rashidkpc/Kibana/archive/v0.2.0.tar.gz
wget https://github.com/rashidkpc/Kibana/archive/v0.2.0.tar.gz
Line 162: Line 165:
Stringi on vaja kirjutada masina IP-aadress, et pääseks ligi veebibrauseriga Kibana kasutajakeskkonnale
Stringi on vaja kirjutada masina IP-aadress, et pääseks ligi veebibrauseriga Kibana kasutajakeskkonnale
<source lang="bash">
<source lang="bash">
KibanaHost = '192.168.1.93'
KibanaHost = '192.168.88.241'
</source>
</source>


Loon kibana automaatseks käivitamiseks  upstarti kirje /etc/init/kibana.conf sisuga:
Loon kibana automaatseks käivitamiseks  upstarti kirje /etc/init/kibana.conf sisuga: [http://enos.itcollege.ee/~mernits/Linux%20administreerimine/Arnus%20-%20keskne%20logilahendus.pdf]
<source lang="bash">
<source lang="bash">
# kibana.conf# kibana - log viewer
# kibana.conf# kibana - log viewer
Line 200: Line 203:
/system logging action
/system logging action
set 3 bsd-syslog=no  
set 3 bsd-syslog=no  
name=remote remote=192.168.1.93
name=remote remote=192.168.88.241
remote-port=514
remote-port=10517
src-address=0.0.0.0  
src-address=0.0.0.0  
syslog-facility=daemon  
syslog-facility=daemon  
Line 213: Line 216:
== Ligipääs ja testimine ==
== Ligipääs ja testimine ==


Veebiliidesest on võimalik keskkond avada, kui trükkida sisse aadress http://192.168.1.93:5601
Veebiliidesest on võimalik keskkond avada, kui trükkida sisse aadress http://192.168.88.241:5601/
 


== Kokkuvõte ==
== Kokkuvõte ==
Line 223: Line 225:


https://medium.com/what-i-learned-building/e855bc08975d
https://medium.com/what-i-learned-building/e855bc08975d
https://wiki.itcollege.ee/index.php/Talk:Linuxi_administreerimine_-_Labor_2_%28keskse_logihalduse_rakendamine%29_protokoll
https://wiki.itcollege.ee/index.php/Talk:Linuxi_administreerimine_-_Labor_2_%28keskse_logihalduse_rakendamine%29_protokoll
http://enos.itcollege.ee/~mernits/Linux%20administreerimine/Arnus%20-%20keskne%20logilahendus.pdf

Latest revision as of 13:57, 12 January 2014

Labor 2 Protokoll - Mikrotik ruuteri logiserver

Lauri Rüütli A41 ja Tõnu Ruut AK31

07.01.14

Ülesande Püstitus

Luua logiserver, mis korjab võrgust kokku mikrotik ruuteri logid

Server: Ubuntu Server 32bit versioon 12.04 TLS (võib kasutada ka teisi linux versioone)

Võrguseade Mikrotik RB951G-2HnD versioon 6.7 (võib kasutada ka teisi ruutereid, kuid seljuhul tuleb kasutada teisi ruuteri seadistamise käske, kui selles õpetuses kirjeldatud)

Kasutatud tarkvara

Logstash versioon 1.1.12 - logiserver

Elasticsearch versioon 0.90.0 - logide talletamiseks

Kibana 0.2.0 - veebiliides logide sirvimiseks ja otsimiseks

(Kasutatud Sander Arnuse poolt loodud lahendust.)

Serveri seadistamine

Uus virtuaalserver nimega logserver ip aadressiga 192.168.88.241 (võib olla erinev)

Ruuter ip aadressiga 192.168.88.1 (võib olla erinev)

Logstash

Käsud sisestada sudo kasutajaga [1]

Installin openjdk,

teen logstashi jaoks kausta,

laadin alla logstashi ja tõstan selle logstashi kausta.

apt-get install openjdk-7-jre

mkdir /etc/logstash
 
wget https://logstash.objects.dreamhost.com/release/logstash-1.1.12-flatjar.jar 

mv logstash-1.1.12-flatjar.jar /etc/logstash/logstash.jar

Loon konfiguratsioonifaili /etc/logstash/logstash.conf. Failis kirjeldan pordi numbri ja nime, millega on hiljem võimalik logisid grupeerida. [2]

input {
        #Mikrotikist süsteemidest tulevad logid
        udp {
                type => "mikrotik"
                port => 10517
        }
        #Logiserveri enda logid
        file {
                type => "logserver"
                path => [ "/var/log/syslog", "/var/log/*.log" ]
        }
}
 
output {
        #Saadetakse andmebaasi
        elasticsearch {
        }
}

Loon automaatse käivituse jaoks kirje upstarti [3]

Faili nimi /etc/init/logstash-server.conf

Sisuga:

# logstash server instance
description     "logstash server instance"
 
start on virtual-filesystems
stop on runlevel [06]
 
respawn
respawn limit 5 30
limit nofile 65550 65550
 
env HOME=/etc/logstash
chdir /etc/logstash
setuid logstash
setgid adm
console log
 
#Minimaalne ja maksimaalne javale lubatud mälumaht
#env JAVA_OPTS='-Xms512m -Xmx512m'
 
script
      exec java -jar /etc/logstash/logstash.jar agent -f /etc/logstash/logstash.conf
end script

Loon kausta /var/log/logstash ja kasutaja nimega logstash ning lisan ta gruppi adm. [4]

mkdir /var/log/logstash
adduser --system --disabled-password --no-create-home --group --quiet logstash
usermod -a -G adm logstash

Muudan vajalike kaustade omanikuks kasutaja nimega "logstash" ja grupi "adm" [5]

chown -R logstash:adm /etc/logstash/
chown -R logstash:adm /var/log/logstash/

Elasticsearch

Laen internetist alla elasticsearchi paki, installerin ja eemaldan faili. [6]

wget https://download.elasticsearch.org/elasticsearch/elasticsearch/elasticsearch-0.90.0.deb
dpkg -i elasticsearch-0.90.0.deb
rm elasticsearch-0.90.0.deb

Käivitan teenuse [7]

service elasticsearch start

Kibana

Installeerin sõltuvused ja tõmban internetist pakitud kibana arhiivi. [8]

wget http://production.cf.rubygems.org/rubygems/rubygems-2.1.11.tgz 
tar xvzf rubygems-2.1.11.tgz
cd rubygems-2.1.11
apt-get install ruby1.9.3 rubygems
ruby setup.rb

 
wget https://github.com/rashidkpc/Kibana/archive/v0.2.0.tar.gz
tar -zxf v0.2.0.tar.gz
mv Kibana-0.2.0/ /etc/kibana
rm v0.2.0.tar.gz
cd /etc/kibana
gem install bundler
bundle install

Muudan faili /etc/kibana/KibanaConfig.rb ja seal sees leiduvat "KibanaHost" stringi.

Stringi on vaja kirjutada masina IP-aadress, et pääseks ligi veebibrauseriga Kibana kasutajakeskkonnale

KibanaHost = '192.168.88.241'

Loon kibana automaatseks käivitamiseks upstarti kirje /etc/init/kibana.conf sisuga: [9]

# kibana.conf# kibana - log viewer
description     "Kibana logstash viewer"
 
start on virtual-filesystems
stop on runlevel [06]
 
respawn
respawn limit 5 30
limit nofile 65550 65550
 
# Environment
env HOME=/etc/kibana/
chdir /etc/kibana
setuid logstash
setgid adm
console log
 
# Run Kibana, which is in /etc/kibana
script
      ruby /etc/kibana/kibana.rb
end script

Kliendi seadistamine

Kliendi seadmeks on Mikrotik RB951G-2HnD

Seadistamiseks tuleb sisestada järgmised käsud:

/system logging action
set 3 bsd-syslog=no 
name=remote remote=192.168.88.241 
remote-port=10517 
src-address=0.0.0.0 
syslog-facility=daemon 
syslog-severity=auto 
target=remote
/system logging 
add action=remote disabled=no prefix="" topics=info

Ligipääs ja testimine

Veebiliidesest on võimalik keskkond avada, kui trükkida sisse aadress http://192.168.88.241:5601/

Kokkuvõte

Tegemist oli mahuka tööga, mis algul tundus lihtne, aga pärast tuli välja, et erinevatel versioonidel ja õpetustel on vead sees. Lõpuks õnnestus logiserver käima ja tööle saada. Esimese logiserveri ehitamiseks sobib antud lahendus hästi.

Kasutatud materjal

https://medium.com/what-i-learned-building/e855bc08975d

https://wiki.itcollege.ee/index.php/Talk:Linuxi_administreerimine_-_Labor_2_%28keskse_logihalduse_rakendamine%29_protokoll

http://enos.itcollege.ee/~mernits/Linux%20administreerimine/Arnus%20-%20keskne%20logilahendus.pdf