Traffic mit Munin überwachen

sudo apt-get install git bc
sudo git clone https://github.com/munin-monitoring/contrib.git /opt/munin-contrib
sudo ln -snf /opt/munin-contrib/plugins/network/traffic /etc/munin/plugins/
sudo sh -c "echo '[traffic]\nuser root' >> /etc/munin/plugin-conf.d/munin-node"
sudo service munin-node restart

Installation von Node.js und npm mit Homebrew

Zuerst muss Homebrew installiert werden.

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Im Anschluß einfach Node.js und npm installieren.

brew install node
npm config set prefix /usr/local

L2TP over IPSec in Ubuntu 16.04 / 16.10

Die folgende Anleitung ist eine Übersetzung von Enabling L2TP over IPSec on Ubuntu 16.04.

Die folgenden Pakete werden im späteren Verlauf noch benötigt und sollten im Vorfeld installiert werden:

sudo apt install intltool libtool network-manager-dev libnm-util-dev libnm-glib-dev libnm-glib-vpn-dev libnm-gtk-dev libnm-dev libnma-dev ppp-dev libdbus-glib-1-dev libsecret-1-dev libgtk-3-dev libglib2.0-dev xl2tpd strongswan

Netzwerk-Manager neu bauen:

cd /tmp
git clone https://github.com/nm-l2tp/network-manager-l2tp.git  
cd network-manager-l2tp  
autoreconf -fi  
intltoolize
./configure --disable-static --prefix=/usr --sysconfdir=/etc --libdir=/usr/lib/x86_64-linux-gnu --libexecdir=/usr/lib/NetworkManager --localstatedir=/var --with-pppd-plugin-dir=/usr/lib/pppd/2.4.7 
make  
sudo make install

Entfernen der AppArmor Einstellungen für IPSec:

sudo apparmor_parser -R /etc/apparmor.d/usr.lib.ipsec.charon
sudo apparmor_parser -R /etc/apparmor.d/usr.lib.ipsec.strok

Ersetzen von x2ltpd durch libpcap:

sudo apt remove xl2tpd
sudo apt install libpcap0.8-dev
cd /tmp
wget https://github.com/xelerance/xl2tpd/archive/v1.3.6/xl2tpd-1.3.6.tar.gz  
tar xvzf xl2tpd-1.3.6.tar.gz && cd xl2tpd-1.3.6  
make  
sudo make install

Zum Abschluß den Rechner einmal neustarten und dann über den Netzwerk-Manager die L2TP Verbindung anlegen.

Graylog2 auf Debian Jessy installieren

Bevor Graylog2 installiert werden kann, müssen die folgenden Vorrausetzungen erfüllt werden.

  • Java (>= 8)
  • MongoDB (>= 2.4)
  • Elasticsearch (>= 2.x)

Folgende Pakete werden im späteren Verlauf noch benötigt und sollten im Vorfeld installiert werden:

sudo apt-get install apt-transport-https curl pwgen wget

Java und MongoDB installieren

Java und MongoDB können beide aus den Debian-Backports installiert werden.

echo "deb http://ftp.de.debian.org/debian jessie-backports main" | sudo tee -a /etc/apt/sources.list.d/backports.list
sudo apt-get update
sudo apt-get install mongodb
sudo apt-get install -t jessie-backports openjdk-8-jre-headless

Elasticsearch installieren

wget -qO - https://packages.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
echo "deb https://packages.elastic.co/elasticsearch/2.x/debian stable main" | sudo tee -a /etc/apt/sources.list.d/elasticsearch-2.x.list
sudo apt-get update && sudo apt-get install elasticsearch

In der Datei /etc/elasticsearch/elasticsearch.yml folgende Werte setzen (einkommentieren oder an das Ende hängen):

cluster.name: graylog
network.host: 127.0.0.1
discovery.zen.ping.unicast.hosts: ["127.0.0.1:9300"]

Elasticsearch neustarten:

sudo service elasticsearch restart

Ein kurzer Test ob elasticsearch korrekt läuft ("status" sollte "green" sein für den "cluster_name: graylog"):

curl -XGET 'http://localhost:9200/_cluster/health?pretty=true'

Elasticsearch nach einem Reboot automatisch starten:

sudo systemctl enable elasticsearch

Graylog2 installieren

wget https://packages.graylog2.org/repo/packages/graylog-2.0-repository_latest.deb
sudo dpkg -i graylog-2.0-repository_latest.deb
sudo apt-get update && sudo apt-get install graylog-server

Dem Secretkey erstellen und in die Config eintragen:

SECRET=$(pwgen -s 96 1)
sudo -E sed -i -e 's/password_secret =.*/password_secret = '$SECRET'/' /etc/graylog/server/server.conf

Admin Passwort festlegen:

PASSWORD=$(echo -n MY-TOP-SECRET-PASSWORD | shasum -a 256 | awk '{print $1}')
sudo -E sed -i -e 's/root_password_sha2 =.*/root_password_sha2 = '$PASSWORD'/' /etc/graylog/server/server.conf

Graylog2 neustarten:

sudo service graylog-server restart

Graylog2 nach einem Reboot automatisch starten:

sudo systemctl enable graylog-server

Nun kann das Webinterface über die folgende URL http://localhost:9000 aufgerufen werden.
Wie ein entsprechender Nginx-VHost ausehen könnte, wird hier in der Dokumentation beschrieben.

Nginx mit Munin überwachen

sudo apt-get install munin-plugins-extra liblwp-useragent-determined-perl libwww-perl
cd  /etc/munin/plugins
sudo ln -snf /usr/share/munin/plugins/nginx_request
sudo ln -snf /usr/share/munin/plugins/nginx_status

Damit Munin die Informationen vom Nginx abrufen kann muss dieser diese bereitstellen. Dazu reicht es aus wenn man die folgende Location bei einem beliebigen Vhost ergänzt.

location /nginx-status {
  stub_status on;
}

Möchte man diese Informationen nicht komplett Öffentlich machen dann am besten einen Vhost "localhost" erstellen (dieser ist dann nicht öffentlich erreichbar).

server {
  server_name localhost;
  allow 127.0.0.1;
  deny all;
  access_log off;

  location /nginx-status {
    stub_status on;
  }
}

Als letzten Schritt muss die URL unter der die Informationen abrufbar sind in die Munin Konfiguration eingetragen sowie Nginx und Munin neugestartet werden.

sudo sh -c "echo '[nginx_*]\nenv.url http://localhost/nginx-status' >> /etc/munin/plugin-conf.d/munin-node"
sudo service nginx restart
sudo service munin-node restart

  • Seite 1 von 3