Automatische maintenance periodes in Zabbix

Omdat we vinden dat het up to date houden van onze systemen van levensbelang is, hebben we elke laatste vrijdag van de maand een onderhoudswindow waarin we alle systemen, websites ed. updaten. Om nu te voorkomen dat we tijdens dit geplande onderhoud worden gespamd met berichten uit de monitoring hebben we hiervoor een automatische maintenance periode ingesteld.

In het kort komt het er op neer dat Zabbix tijdens deze periode de geselecteerde systemen in maintenance plaatst en dus geen notificaties uitstuurt als de servers bijvoorbeeld herstarten. Uiteraard kan je deze systemen ook met de hand in maintenance zetten maar ja…iets met automatisering 🙂

Maintenance periods

Dit menu item vind je hier: Configuration -> Maintenance. Vervolgens klik je rechts op de knop “Create maintenance period”. Het volgende scherm heeft 3 tabbladen, let er op dat je ze alle 3 invult.

Maintenance

  • De naam mag je helemaal zelf verzinnen. Wij gebruiken bijvoorbeeld Monthly System Maintenance.
  • Maintenance type kun je laten staan op “With data collection”. Dit zorgt ervoor dat Zabbix gewoon data blijft ontvangen van de host.
  • Active since / active till geeft alleen het begin en eind aan van de regel, dit zegt niets over het moment dat de host in maintenance wordt gezet.
  • Description as you wish…

Periods

Ga naar het tabblad periods en klik op New. Wat je hier kunt kiezen is eigenlijk een wrapper voor een cronjob. Klik maar eens op:

  • Period type: Monthly
  • Date: Day of week

Wij hebben dit zo geconfigureerd:

In dit geval worden dus de systemen in maintenance gezet:

  • elke laatste vrijdag
  • elke maand
  • van 20:00 tot 00:00

Host & Groups

Op het laatste tabblad kun je nog aangeven welke systemen in maintenance gezet moeten worden. Je kunt hier het makkelijkste groepen gebruiken zodat nieuwe systemen (die moet je dan wel in de juiste groepen plaatsen) automatisch meegenomen worden.

Zabbix discovery regel voor SNMP devices

We gebruiken Zabbix voor het monitoren van servers, firewalls, switches, printers en allerlei andere apparaten die op het netwerk zijn aangesloten en waar we de status van willen weten. Het onderhouden van al die apparaten (‘hosts’ in Zabbix) kan bij een grote hoeveelheid apparaten écht een dagtaak zijn.

Zabbix Discovery

Zabbix maakt dit een stuk makkelijker met Discovery regels. Met deze regels kun je een ip reeks scannen op de aanwezigheid van apparaten. Vervolgens kun je hier acties aan hangen zodat er van alles gedaan kan worden op het moment dat er een apparaat gevonden wordt.

Binnen Zabbix bestaat het discovery process uit twee delen:

  • De discovery, deze scant een ip reeks op aanwezige apparaten.
  • Een action welke wordt uitgevoerd wanneer er een apparaat gevonden wordt.

Discovery regel

We beginnen met het aanmaken van een discovery regel. Hiervoor ga je naar de Zabbix web interface, Configuration -> Discovery.

Hier zie je de standaard discovery rule staan die aan is gemaakt tijdens de installatie van Zabbix. Als voorbeeld maken we een nieuwe regel aan.

  • Klik op Create discovery rule.
  • Geef de regel een naam.
  • Geef de IP reeks op die gescant moet worden.

Omdat we ons op dit moment richten op SNMP devices gaan we als check een SNMP check invoeren.

Klik bij Checks op “New” en vul in:

  • Check type SNMPv2 (tenzij je apparaten SNMPv1 zijn)
  • Port range is default 161
  • SNMP community is meestal public
  • SNMP OID 1.3.6.1.2.1.1.1

Die laatste is het belangrijkste. Uit de SNMP documentatie:

sysDescr OBJECT-TYPE
SYNTAX DisplayString (SIZE (0..255))
ACCESS read-only
STATUS mandatory
DESCRIPTION
"A textual description of the entity. This value
should include the full name and version
identification of the system's hardware type,
software operating-system, and networking
software. It is mandatory that this only contain
printable ASCII characters."
::= { system 1 }

Als we deze OID gebruiken zou Zabbix een waarde terug moeten krijgen die overeenkomt met de omschrijving van het apparaat zoals bijvoorbeeld een ups, switch, printer of iets dergelijks.

Voeg de regel toe en Zabbix zal elk uur de ip reeks scannen op apparaten. Gevonden apparaten kun je zien bij Monitoring -> Discovery.

Actions

Nu gebeurt er nog niets wanneer een apparaat gevonden wordt. Dit komt omdat er nog geen action aan gekoppeld is. Ga naar Configuration -> Actions. Rechts boven zie je een drop down menu van de Event Source. Klik hier op Discovery en dan op Create Action.

Als naam kun je van alles opgeven. Wij houden een naamgeving aan die lijkt op een SQL statement. Zoiets als: CREATE host FROM RULE discovery-192.168.0.x

Klik bij New Condition op de eerste drop down en selecteer “Received value”. De tweede drop down is de operator en is afhankelijk van je scenario. Stel even dat je UPS’en toe wilt voegen. Als je 1 model UPS hebt zou je hier “=” gebruiken en de volledige SysDescr invullen. Heb je van dezelfde fabrikant meerdere modellen maar wel met dezelfde items die je wilt monitoren, dan gebruik je hier “like” en hanteer je een iets ruimere waarde zoals bijvoorbeeld “APC UPS” zonder het exacte model nummer.

Vergeet niet op “add” te klikken!

Ga nu naar het tabblad Operations. Hier geef je aan wat er moet gebeuren wanneer deze actie wordt uitgevoerd. Je zou dus ook alleen een notificatie kunnen sturen zonder de host daadwerkelijk te gaan monitoren.

We gaan meerdere operations uitvoeren:

  • Add host
  • Link to template

Het template voor de host is afhankelijk van het merk en type apparaat. Kijk hiervoor op https://share.zabbix.com

Als het benodigde template hier niet bij staat zal je deze zelf aan moeten maken. Hoe dit moet komt in de volgende post.

Installatie van ELK (Elasticsearch, Logstash & Kibana)

Om alle log files, event logs e.d. te verzamelen en te kunnen doorzoeken gebruiken wij ELK. ELK is een verzameling van een aantal pakketten, namelijk: Elasticsearch, Logstash en Kibana
In deze blogpost leggen we uit hoe je ELK kunt installeren. Om te beginnen heb je een standaard minimale installatie nodig van CentOS. Uiteraard kan het ook op Debian/Ubuntu.

Installatie van Java  (JDK)

Java is er in een aantal smaken: JRE en JDK. Daarnaast kun je voor beide pakketten kiezen uit de open source variant, OpenJRE of OpenJDK en de closed sourced varianten van Oracle. Wij gebruiken de closed source JDK van Oracle.

Voor het gemak verifiëren we dat er geen Java geïnstalleerd is:

java -version
-bash: java: command not found

Geen Java aanwezig dus we gaan verder met het downloaden en installeren van de RPM. Doorloop hiervoor de volgende stappen:

  1. Ga naar de volgende website: http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
  2. Accepteer de license agreement
  3. Kopieer de download link. In Google chrome is dat rechts klikken op de link -> Copy link address. Je hebt de versie: linux-x64.rpm nodig
  4. Plak de link vervolgens in het volgende commando tussen de laatste qoutes: wget –no-cookies –no-check-certificate –header “Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie” “”
  5. Op dit moment krijg je dan het volgende commando:wget –no-cookies –no-check-certificate –header “Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie” “http://download.oracle.com/otn-pub/java/jdk/8u144-b01/090f390dda5b47b9b721c7dfaa008135/jdk-8u144-linux-x64.rpm”
  6. Als je dit op je CentOS server uitvoert en je krijgt de melding: -bash: wget: command not found kun je dat op lossen door het volgende uit te voeren:# sudo yum install wget
  7. Eenmaal gedownload gaan we het pakket installeren met (de versie kan uiteraard verschillen):# sudo rpm -ivh jdk-8u144-linux-x64.rpm

Als je nu weer het commando java -version uitvoert krijg je zoiets terug:

java version "1.8.0_144"
Java(TM) SE Runtime Environment (build 1.8.0_144-b01)
Java HotSpot(TM) 64-Bit Server VM (build 25.144-b01, mixed mode)

Installatie van Elasticsearch

De installatie van Elasticsearch is vrij eenvoudig en bestaat uit de volgende 4 stappen:

  1. Importeer eerst de GPG key voor de RPM package manager:
    # sudo rpm –import http://packages.elastic.co/GPG-KEY-elasticsearch
  2. Maak in de directory /etc/yum.repos.d het volgende bestand aan: elasticsearch.repo (# sudo nano /etc/yum.repos.d/elasticsearch.repo) en voeg het volgende in:
    [elasticsearch-5.x]
    name=Elasticsearch repository for 5.x packages
    baseurl=https://artifacts.elastic.co/packages/5.x/yum
    gpgcheck=1
    gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
    enabled=1
    autorefresh=1
    type=rpm-md
  3. Installeer Elasticsearch
    # sudo yum install elasticsearch

Aangezien er wordt aangegeven dat de service niet automatisch gestart wordt, is het een goed moment om dit gelijk te regelen.

  1. Voer het volgende commando uit:
    # sudo systemctl enable elasticsearch 
  2. Start Elasticsearch met:
    # sudo service elasticsearch start

Als alles goed is gegaan:

Starting elasticsearch (via systemctl): [ OK ]

Installeren van Kibana

De stappen voor het installeren van Kibana zijn vergelijkbaar met die van Elasticsearch. Aangezien de GPG key hetzelfde is voor de 3 pakketten hoeven we deze niet opnieuw te importeren.

  1. # sudo nano /etc/yum.repos.d/kibana.repo
  2. Kopieër het volgende naar het kibana.repo bestand:
    [kibana-4.4]
    name=Kibana repository for 4.4.x packages
    baseurl=http://packages.elastic.co/kibana/4.4/centos
    gpgcheck=1
    gpgkey=http://packages.elastic.co/GPG-KEY-elasticsearch
    enabled=1
  3. Installeer Kibana met:
    # sudo yum install kibana
  4. Voer het volgende commando uit:
    # sudo chkconfig kibana on
  5. Start Kibana met:
    # sudo service kibana start

Installeren van Logstash

Als laatste voor nu gaan we Logstash installeren. Ook dit is vergelijkbaar met de vorige installaties.

  1. # sudo nano /etc/yum.repos.d/logstash.repo
  2. Kopieër het volgende naar het logstash.repo bestand:
    [logstash-2.2]
    name=logstash repository for 2.2 packages
    baseurl=http://packages.elasticsearch.org/logstash/2.2/centos
    gpgcheck=1
    gpgkey=http://packages.elasticsearch.org/GPG-KEY-elasticsearch
    enabled=1
  3. Installeer Logstash met:
    # sudo yum install logstash
  4. Voer het volgende commando uit:
    # sudo chkconfig logstash on
  5. Start Logstash met:
    # sudo service logstash start

Afronding

In principe is de ELK stack nu geinstalleerd al zal deze nog niet veel doen. Aangezien de firewall standaard aan staat kun je er op dit moment nog niet bij. Je kunt de firewall uitzetten of de nodige regels toevoegen.

Het uitzetten van de firewall kan tijdelijk:

# sudo iptables -F

Of iets minder tijdelijk:

# sudo systemctl disable firewalld

 

Wachtwoorden recyclen

Wachtwoorden hergebruiken…

Gebruik je sterke wachtwoorden ?

Wat is nu een sterk wachtwoord? Is dat een wachtwoord wat bestaat uit letters en cijfers? Moet je ook hoofdletters gebruiken?
Hoe onthoud je al die wachtwoorden en wijzig je ze weleens ?

Een sterk wachtwoord:

  • bestaat uit minimaal 8 karakters (meer is beter)
  • bevat (hoofd)letters, cijfers en leestekens
  • is niet herleidbaar

Datalekken en diefstal

Ook vandaag (14 november) zijn er weer tal van meldingen over datalekken en gestolen accounts. Er is zelfs een nieuwsitem over Facebook die gestolen accounts koopt zodat die accounts “veilig” blijven.

Het inbreken op websites en servers en daarbij het stelen van account gegevens is helaas aan de orde van de dag. Een boude stelling: het is niet meer de vraag óf je gegevens gestolen worden maar wanneer.

Nu is het niet de bedoeling je op de kast te jagen dus daarom: oplossingen!

Wachtwoord managers

iCloud Keychain

Dit is de standaard oplossing die Apple meelevert en werkt op alle Apple apparaten. Het is een goede manier op je wachtwoorden op te slaan met één nadeel: het werkt alleen voor Apple. Zo is de ondersteuning voor bijvoorbeeld Google Chrome gestopt door Google. Het is dus niet mogelijk om de wachtwoorden vanuit Chrome op te slaan in je keychain.

Keepass

Een van de oudere password managers maar daarom absoluut niet minder veilig. Keepass bestaat sinds 2003 en is volledig open source. Er zit een wachtwoord generator in zodat je altijd een veilig wachtwoord hebt.

Keepass werkt met een database die je ergens op je computer opslaat. Je kunt deze ook op een USB stick of Dropbox zetten zodat je je wachtwoorden op meerdere computers kunt gebruiken.

De database is versleuteld zodat je deze zonder het hoofdwachtwoord niet kunt gebruiken.

Een van de mooie features van Keepass is de mogelijkheid tot plugins. Zo is er een plugin waarmee je de wachtwoorden die je hebt opgeslagen in bijvoorbeeld Chrome, Firefox of Internet Explorer kunt importeren.

Lastpass

Waar Keepass met een eigen database werkt, gebruikt Lastpass een online database. Ook deze is helemaal versleuteld en bij diefstal dus niet te gebruiken. De kluis, zoals Lastpass deze noemt, is al online en daarom kan je hem dus gelijk op meerdere computers/telefoons/tablets gebruiken.

Waar Keepass is hulpmiddel is om wachtwoorden veilig op te slaan, is Lastpass veel meer een wachtwoord manager. Zo is er een ook een wachtwoord generator, een herinnering als je op meerdere sites hetzelfde wachtwoord gebruikt, het automatisch opvangen van wachtwoorden wanneer je deze intypt.

De belangrijkste functies

  • Ongelimiteerde opslag voor wachtwoorden en notities
  • Toetsing van wachtwoorden met de “Security Challenge”
  • Ongelimiteerde synchronisatie tussen al je apparaten

1Password

Qua mogelijkheden, integratie en veiligheid is 1Password gelijk aan Lastpass. Het grootste verschil met Lastpass is dat 1Password niet gratis te gebruiken is en een applicatie nodig heeft die je installeert op je Windows computer of Mac.

Mijn voorkeur

Zelf ben ik groot fan van Lastpass omdat ze het enorm makkelijk maken om sterke en unieke wachtwoorden gebruiken. Daarnaast is ontzettend simpel om de wachtwoorden ook op je telefoon of tablet te krijgen dankzij de apps voor zowel iOS als Android. Op apparaten met een vingerafdruk scanner is het zelfs mogelijk om je wachtwoord kluis te ontgrendelen met je vingerafdruk.
Het is zelfs mogelijk om wachtwoorden met andere Lastpass gebruikers te delen, bijvoorbeeld met gezinsleden of collega’s!

IoT ( Internet of Things)

IoT (Internet of Things)

De afgelopen jaren is het Internet der Dingen steeds verder opgerukt. Tegenwoordig kan zo’n beetje elk apparaat aangesloten worden op het grote internet.

IoT

The Internet of Things, kort gezegd het IoT, bestaat uit allerlei apparaten die verbonden zijn met internet zodat ze op afstand bestuurd of uitgelezen kunnen worden. Denk hierbij bijvoorbeeld aan:

  • de thermostaat (de NEST)
  • lampen (Philips HUE)
  • babyfoons
  • Auto’s (Tesla)

Beveiliging

Het grootste probleem van al deze apparaten is de beveiliging. Eigenlijk allemaal hebben ze ernstige beveiligingslekken waardoor ze gebruikt kunnen worden voor bijvoorbeeld DDOS aanvallen zoals onlangs gebeurt is bij een aanval op internet provider Dyn van afgelopen oktober. Hierbij werden apparaten zoals de thermostaat en babyfoon gebruikt om zoveel aanvragen te doen bij de servers van Dyn dat deze niet meer in staat waren om te reageren op normale verzoeken.

Updaten

De oplossing van het probleem zit in het updaten van de software op deze apparaten. Dit gebeurt echter niet aangezien deze apparaten vaak zo goedkoop zijn dat er voor de fabrikant geen tijd en geld is om ondersteuning te blijven leveren. Dit zien we al enige jaren met de diverse mobiele telefoons die Android gebruiken. Zeker de goedkopere varianten worden vaak na een jaar al niet meer ondersteunt en krijgen geen updates meer. Dit is een fundamenteel probleem van het IoT.

Hoewel IoT erg handig kan zijn, je kunt bijvoorbeeld de verwarming aanzetten op het moment dat je in de auto naar huis stapt, zitten er ook enorme risico’s aan die op de korte termijn niet opgelost lijken te worden.

Cameratoezicht en privacy

Cameratoezicht en privacy

Een van de meest voorkomende vragen wanneer ik camerabeveiliging aanleg is: hoe zit het met de privacy en mag alles zomaar gefilmd en opgenomen worden.

ICT jurist Arnoud Engelfriet heeft hier een goed antwoord op: https://ictrecht.nl/factsheets/cameratoezicht/

 

Upgrade naar Windows 10

Upgrade naar Windows 10

Heeft u een computer of laptop met Windows 7, Windows 8 of windows 8.1? Upgraden naar Windows 10 is nog tot 29 juli gratis! Na deze datum kost een upgrade € 120, –

Bel 0172-764008 voor meer informatie of hulp bij upgraden.

https://www.microsoft.com/nl-nl/windows/windows-10-upgrade