Archiv der Kategorie: Computer und Internet

Eine Sammlung der Beitrage rund um Computer und Internet

Sensor all the Things: Günstige Sensoren zur Raumklima-Überwachung selbst bauen/frickeln

Fertiges Sensorpaket

Zwar kann ich mich (noch) nicht mit dem Gedanken der Hausautomatisierung anfreunden, dennoch habe ich schon länger mit dem Gedanken gespielt meine Wohnung mit Sensoren auszustatten. Ich wollte die Zimmer meiner Wohnung möglichst kostengünstig mit praktischen Sensoren ausstatten.

Disclaimer: Ich arbeite hier teilweise mit Geräten die in 220V eingesteckt werden. Wenn ihr nicht wisst was ihr tut: Finger weg! Und sowieso niemals nachmachen!

Die Hardware

Was braucht man alles? Sensoren, Broker, Datenbankserver und Stromversorgung. Alles am besten aus einer Hand. Natürlich gibt es sowas, aber doch ziemlich teuer. Hier die Hardware die ich verwendet habe:

Plattform

Ideal wäre ein Grundsystem mit WLAN, Platz für Sensoren, einer stabilen Stromversorgung und idealerweise noch ein schönes Gehäuse dazu. Zum Glück gibt es so etwas Ähnliches schon:

Sonoff Socket S20

Die S20 gibt es für ~10 Euro bei Aliexpress und bieten fast alles was wir brauchen. Darin enthalten ist ein ESP der für WLAN sorgt und die Zwischensteckdose ist sogar schaltbar. Dieses Feature ignoriere ich aber zunächst, da ich derzeit noch keinen Sinn darin sehe, meine Wohnung zu automatisieren. Die S20 sind robust verbaut und wenn man diese aufschraubt, kann man man 4 Pins erreichen, an die Sensoren angeschlossen werden können: Fast perfekt

Leider ist das Gehäuse vollständig geschlossen, weswegen ich die 4 Pins für die Sensoren nach außen gelegt habe.

Sensoren

Bei der Wahl der Sensoren habe ich mich aufgrund der limitierten Pin-Anzahl für I²C Sensoren entschieden. Diese können parallel zueinander an die 4 Pins gehängt werden. Mögliche Sensoren (eine Auswahl):

  • BMP280
    • Luftdruck
    • Temperatur
    • Luftfeuchtigkeit
    • ~2-3 Euro
  • BH1750
    • Helligkeit
    • ~1-2 Euro
  • CCS811
    • Luftqualität
    • ~10 Euro
  • BME680
    • Luftdruck
    • Temperatur
    • Luftfeuchtigkeit
    • Luftqualität
    • ~15 Euro

Ich hab mich zunächst mal nur für BMP280 (sehr günstig und sehr praktisch) und den BH1750 (kostet fast nix, ich weiß noch nicht was ich mit den Werten anfange) entschieden.

Die Luftqualitätssensoren habe ich bestellt und ein Test steht noch aus. Allerdings bin ich noch nicht ganz überzeugt. Ich hätte gerne einen C0x Sensor aber sowas ist einfach super teuer.

Hardware zusammenbauen

Im Grunde muss für die Vorbereitung der Hardware einige Kabel angelötet werden, die Sensoren aufgesteckt werden und eine neue Firmware konfiguriert werden.

S20 vorbereiten und neue Firmware flashen

Der Sonoff S20 kann über das Lösen von drei Schrauben geöffnet werden. Anschließend kann man auf der Platine vier Anschlussmöglichkeiten. Da es absolut nicht zu empfehlen ist, bei geöffnetem Gehäuse die S20 mit Strom zu versorgen. Die Anschlüsse können über vier Kabel und einem kleinen Loch nach draußen geführt werden.

Die Platine eines Sonoff S20 mit aufgelöteten Kabeln

Verbesserungsidee für die Profis: Vierpolige Klinkenstecker bzw. -buchsen eigenen sich hervorragend um die Anschlüsse sauber nach draußen zu führen.

Das Pinout ist in folgendem Bild zu erkennen:

Pinout Sonoff S20

Firmware konfigurieren

Als Firmware verwende ich ESPEasy (Github, Hauptseite). Dazu benötigt man zunächst die Software aus dem neusten Release von Github: https://github.com/letscontrolit/ESPEasy/releases und den dazu passenden Flasher für ESPs. Da die Anleitung etwas ausführlicher ist und ich dieses noch an einem Beispiel nachvollziehen muss, würde ich zunächst hierauf verzichten und dies noch nachreichen. Wenn ihr es trotzdem vermisst, einfach einen Kommentar schreiben.

Sensorpaket löten

Die angesprochenen I2C Sensoren können parallel angebracht werden und benötigen neben der Stromversorgung nur zwei Leitungen. Zu beachten ist dabei nur:

Sonoff S20Sensor
GNDGND
VCCVIN/VCC
RXSDA
TXSCL
Zwei Sensoren gestapelt

Sonoff S20 konfigurieren

Die neue Firmware stellt ein Webinterface zur Verfügung. Die IP-Adresse wird dabei beim Flashen angezeigt. Solltet ihr verpasst haben, die IP-Adresse zu notieren, könnt ihr in eurem Router nochmal nachsehen oder die IP-Adresse per nmap herausfinden.

Auf die Beschreibung der üblichen Konfigurationen wie WIFI, NTP und Co verzichte ich an dieser Stelle. Hier kann man sich gut durchklicken und die Infos sollten klar sein.

Controller konfigurieren

Für den Controller verwenden wir ein Raspi. Wie dieser konfiguriert wird, ist weiter unten zu sehen. Leider beißt sich hier die Katze in den Schwanz, denn für die Konfiguration benötigt man die IP-Adresse des Controllers. Bitte zunächst also den Raspi fertig einrichten und hier wieder weitermachen. Der Controller ist dazu da, die Daten, die am ESP Easy erfasst werden, weiterzuverarbeiten und zu speichern. Eine Beispielkonfiguration für den Raspi sieht wie folgt aus:

Controller-Konfigratuion für den Raspi

I2C Sensoren aktivieren

Um Pins für die Sensoren frei zu kriegen, muss zunächst der serielle Port abgeschaltet werden. Unter Tools -> Advanced -> Enable Serial Port deaktivieren. Anschließend den Controller neustarten. Danach unter Hardware -> I2C Interface die korrekten Pins einstellen:

Pinbelegung für die Sonoff S20

Wenn die Sensoren angeschlossen sind können diese über Tools -> I2C Scan getestet werden. Die Ausgabe sollte dabei wie folgt aussehen:

I2C Scan bei ESP Easy
I2C Scan bei ESP Easy

Im obigen Beispiel werden zwei Sensoren erkannt und gleich die vermuteten Sensoren angezeigt. In diesem Fall: BH1750 und BMP280. Die Sensoren können nun über Devices konfiguriert werden. Hier ein Beispiel für den BMP280. Zu beachten ist, dass „Send to Controller“ nicht aktiv ist, solange kein Controller konfiguriert ist. Ein Controller muss zunächst installiert werden.

Beispielkonfiguration für BMP280

So können auch noch weitere Sensoren konfiguriert werden. Ob die Sensoren vom ESP Easy unterstützt werden kann im Umfangreichen Wiki nachgelesen werden: https://www.letscontrolit.com/wiki/index.php?title=Devices

Server installieren und konfigurieren

Als Server fungiert ein einfacher Raspberry Pi 3 (35 €). Hier funktioniert aber alles auf dem man folgende Tools installieren kann:

  • InfluxDB
  • Grafana (optional)
  • Telegraf
  • Mosquitto

Ein allgemeiner Hinweis: Ich gehe in diesem Beitrag aus gründen der Komplexität nicht auf die Sicherheit eurere Systeme ein. Bitte informiert euch selbst, wie ihr  

Rasbian installieren

Als Betriebssystem für den Rapsi verwende ich Rasbian. Dazu gibt es offizielle Anleitungen, wie dieses installiert werden kann. In dieser Anleitung verzichte ich darauf.

Mosquitto installieren

Mosquitto ist ein einfacher MQTT message broker. Die Installation und das starten ist dabei relativ einfach:

sudo apt install mosquitto mosquitto-clients
sudo systemctl enable mosquitto.service
sudo systemctl start mosquitto.service

Mosquitto kann über das File /etc/mosquitto/mosquitto.conf konfiguriert werden. Wenn man keine Authentifizierung möchte, reicht die standard-config aus.

InfluxDB installieren

Als Datenbank-Backend verwenden wir InfluxDB. influx ist eine Zeitreihendatenbank und eignet sich besonders gut für die Art der erfassten Daten. Dazu zunächst die Datei
/etc/apt/sources.list.d/influxdb.list mit folgendem Inhalt erstellen:

deb https://repos.influxdata.com/debian stretch stable

Achtung: Hier wird eine Paketquelle aus einer potentiell nicht vertrauenswürdigen Quelle verwendet. Dies ist immer mit Vorsicht zu genießen. Da dies aber die Paketquelle von Influx selbst ist, ist diese relativ vertrauenswürdig.

Nun werden wir root, installieren den RSA-Key von influx und installieren die Datenbank:

sudo su
curl -sL https://repos.influxdata.com/influxdb.key | apt-key add -

apt update
apt install influxdb

Telegraf installieren und konfigurieren

Um die mqtt-Daten zu erfassen, kann Telegraf verwendet werden. Nebenbei erhält man dann auch noch Daten der Auslastung des Raspi. Das Paket telegraf kommt aus den selben Quellen wie die influx-Datenbank.

apt install telegraf

Nach der Installation muss die Config-Datei unter /etc/telegraf/telegraf.conf angepasst werden. Die Meisten Punkte müssen lediglich auskommentiert werden. Wenn keine weiteren Änderungen nötig sind, kann der unten stehende Config-Teil auch einfach ans Ende der Datei kopiert werden.

# Read metrics from MQTT topic(s)
[[inputs.mqtt_consumer]]

## MQTT broker URLs to be used. The format should be scheme://host:port,
## schema can be tcp, ssl, or ws.
servers = ["tcp://localhost:1883"]

## Topics to subscribe to
topics = ["#",]

Anschließend müssen noch beide Services enabled und gestartet werden.

systemctl daemon-reload

systemctl enable influxdb.service
systemctl start influxdb.service

systemctl enable telegraf.service
systemctl start telegraf.service

Grundsätzlich reicht dieses Setup schon aus. Auch können ab jetzt schon die Daten in der InfluxDB gefunden werden. Allerdings wollen wir die Daten auch visuell besser aufbereiten.

Grafana Installieren

Grafana eignet sich hervorragend für die Darstellung der von uns erfassten Daten. Leider ist die Version des grafana im rapsi-repo sehr alt, daher nehmen wir auch hier eine andere Version. Weitere Informationen zur Installation der Paketquellen zu grafana sind hier zu finden: http://docs.grafana.org/installation/debian/ Erstellt dazu /etc/apt/sources.list.d/grafana.list mit folgendem Inhalt:

deb https://packages.grafana.com/oss/deb stable main

Achtung: Hier wird eine Paketquelle aus einer potentiell nicht vertrauenswürdigen Quelle verwendet. Dies ist immer mit Vorsicht zu genießen. Dies ist allerdings der von Grafana selbst gewählte Weg. Nun muss noch der GPG-Key für das Grafana-Paket installiert werden:

curl https://packages.grafana.com/gpg.key | sudo apt-key add -

Anschließend

apt update
apt install grafana
systemctl daemon-reload
systemctl enable grafana-server.service
systemctl start grafana-server.service

Ab jetzt kann man unter der IP-Adresse des Raspis und dem Port :3000 Grafana erreichen:

http://192.168.123.123:3000

Für die weitere Konfiguration einfach dem Webinterface folgen und z.B. einen Benutzer einrichten bzw. Passwörter ändern. Der Standard-Benutzer ist admin mit dem Passwort admin.

Beispiel für Darstellung erfasster Daten

Ab hier sind euch alle Freiheiten gegeben, die erfassten Daten grafisch aufzubereiten. Als Beispiel die Erfassung der Raumtemperatur mit drei Sensoren. Dazu einfach ein „Panel“ hinzufügen und folgende Daten erfassen:

Beispiel für die grafische Aufbereitung der erfassten Daten mit Grafana

Anschließend können noch die Achsen und die Legende bearbeitet werden. Hier empfiehlt es sich die verschiedenen Einstellmöglichkeiten einfach durchzubprobieren. Man hat hier sehr viele Einstellmöglichkeiten. Anschließend sollten die Daten aufbereitet werden und als Grafik dargestellt werden:

Gimiks

Da wir nun Telegraf für die Datenerfassung nutzen, können wir auch die Daten des Rapsi auswerten. Telegraf erfasst alle Daten des Raspi automatisch. Also Load, Temperatur, CPU Auslastung etc. Natürlich ist das nicht nötig, aber wenn wir die Daten schon erfassen, können wir diese doch auch gleich mit Grafana auswerten. Eien tolle Funktion in Grafana: Man kann sich fertige Dashboards hinzufügen. Unter https://grafana.com/dashboards findet man verschiedene fertige Dahsboards mit einer dazugehörigen ID. Beispiele für Telegraf sind z.B. das Dashboard mit der ID 61 oder 928. Dazu einfach seitlich auf das „+“ -> Import Dashboard und anschließend die gewünschte ID eingeben. Im folgenden Dialog muss noch die Datenquelle (InfluxDB) angepasst werden auf telegraf.

Beispiel-Dashboard für Telegraf (928)

Updates

[04.02.2019] Update der Paketquellen und Gimiks

Grafana hat nun endlich selbst eine Paketquelle für das aktuelle Grafana. Dies wurde in der Anleitung ergänzt.

Es gibt jetzt auch die Anleitung wie ich die Prozessdaten des Raspi erfassen kann.

[11.02.2019] Mosquitto ergänzt

Ich habe doch tatsächlich den Teil über Mosquitto vergessen. ist jetzt ergänzt.

Threema Safe Backup mit Nextcloud WebDAV Funktion

Threema ist schon ein sehr toller Messenger, aber leider gibt es in Sachen Backup noch viel zu tun. Ein Schritt in die richtige Richtung ist der Threema Safe. Damit lassen sich grundlegende Einstellungen sichern. Unter anderem:

  • Threema-ID
  • Profildaten
  • Kontakte
  • Einstellungen

Was allerdings nicht gespeichert wird:

  • Chatverläufe
  • Mediendaten

Threema bietet für Threema Safe verschiedene Optionen. So kann man die Daten in der Cloud von Threema speichern, oder in einem eigenen Webdav-Verzeichnis. Da viele die Threema nutzen ausreichend paranoid sind um fremden Cloud-Speichern nicht zu verwenden und auch eine eigene Nextcloud betreiben ist die zweite Option das Mittel der Wahl.

Threema Safe in der eigenen Nextcloud

Die Nextcloud bietet alles, was Threema Safe benötigt. Eine Anleitung wie man dies einrichtet ist im Folgenden zu finden.

Serviceaccount Anlegen

Zunächst einmal sollte ein Service-Account für Threema angelegt werden. Die Threema-App benötigt Login-Daten für das Speichern des Backups. Hierfür sollte man wenn möglich nicht die Daten seinen Haupt-Accounts verwenden.

Neuen Account anlegen: Als Administrator einfach oben rechts auf den Benutzer klicken -> Benutzer -> Neuer Benutzer

Hier einfach einen Benutzernamen (z.B. „threema“ mit einem sicheren Passwort erzeugen. Passwort und Benutzername werden später benötigt.

Ordner-Sturktur anlegen

Threema verlangt eine spezielle Ordner-Sturktur auf dem Server. Legt einen beliebigen Ordner für die Backups an (möglichst ohne Leerzeichen). Innerhalb dieses Ordners MUSS ein Ordner namens „backups“ vorhanden sein. Außerdem muss eine Datei namens „config“ angelegt werden, mit folgendem bzw. ähnlichem Inhalt:

{
   "maxBackupBytes": 52428800,
   "retentionDays": 180
}

maxBackupBytes legt dabei die maximale Backup-Größe fest, retentionDays wie lange dieses Backup aufgehoben werden soll. Die Ordnerstruktur sollte danach etwa so aussehen:

Threema Safe Ordnerstruktur in der Nextcloud (Web-Ansicht)

Threema Safe Konfiguration in der App einstellen

Das schlimmste ist erledigt. Nun nur noch die Einstellungen in die Threema-App übernehmen:

Burger-Menü (oben Links) -> Meine Backups -> Threema Safe

Webdav-Verzeichnis: Das Nextcloud-Verzeichnis kann mit WebDAV über folgenden Link erreicht werden:

https://cloud.website.de/remote.php/dav/files/username/subfolder

Dabei müssen natürlich die URL zur Cloud, der Benutzername und der Subfolder angepasst werden. Als Beispiel meine Konfiguration:

https://cloud.timoswebsite.de/remote.php/dav/files/threema/threema-safe

Username und Passwort wie von euch im ersten Schritt gewählt. Werden die Einstellungen gespeichert fragt Threema noch nach einem Passwort mit dem das Backup auf dem Server verschlüsselt werden soll.

Nun sollte in der Threema-App folgende Ansicht sichtbar sein:

Threema Safe Einstellungen auf dem Handy mit der Nextcloud

Abschließende Hinweise

Threema speichert ab jetzt selbstständig die oben genannten Daten etwa alle 24 Stunden. Aber vorsicht: Dies ist kein vollständiges Backup!

Nach wie vor werden keine Gesprächsverläufe bzw. Mediendateien gesichert. Diese müssen weiterhin über „Meine Backups -> Daten-Backup“ erstellt und vom Handy gesichert werden. Hier muss Threema definitiv noch nacharbeiten.

gitea – Der bessere Alternative zu gogs (Howto zur Installation)

Hallo Leute,

die Entwicklung schreitet manchmal mit weiten Schritten voran und man muss immer am Ball bleiben um auf dem neusten Stand zu sein. Und so hab ich mir gitea mal etwas genauer angesehen.

Was ist gitea, gogs, gitlab?

gitea ist ein fork von gogs einem wirklich sehr coolem und Ressourcen sparenden github.com Klon. Mit beiden Systemen kann man sich quasi sein ganz persönliches github aufbauen und zwar auf seinen eigenen Servern.

Im übrigen lasse ich gitlab für mich mal vollkommen außen vor, weil es mir kalt über den Rücken läuft, wenn ich an Ruby on Rails Anwendungen denke und zudem gogs/gitea deutlich (!) Ressourcen sparender ist.

Ich selbst betreibe zwei Instanzen von gogs (privat und in der Forschungsgruppe) und möchte in diesem Artikel auch die Erfahrungen mit der Migration teilen.

Warum plötzlich gitea und nicht weiter mit gogs?

Wie bereits gesagt ist gitea ein Klon vom quelloffenen gogs. Die Hauptentwicklung bei gogs hing mehr oder weniger an einer Person und die Entwicklung stagnierte in letzter Zeit enorm. In gitea sind mittlerweile einige Feature eingearbeitet, welche so nicht bei gogs vorkommen. Einige Beispiele:

  • GPG verification
  • 2-Faktor-Authentifizierung
  • OpenID

Vor Allem hat mich die 2-Faktor-Authentifizierung überzeugt. Auch glaube ich, dass die Entwicklung durch mehr Personen einfach mehr leisten und schneller Updates bringt.

Gitea ist ja schön und gut, aber wie migriere ich von gogs?

Ich habe nun insgesamt 2 Instanzen von gitea aufgesetzt:

  • Neuinstallation unter Debian 9 (Stretch)
  • Migration von gogs 0.11.19.* unter Arch

Neuinstallation von gitea unter Debian 9 (Stretch)

Die einfachste Variante ist wohl die Neuinstallation. Alle der folgenden Befehle werden als sudo ausgeführt. Zunächst sollte ein User angelegt werden:

adduser --system git

Stellt sicher, dass git Installiert ist:

apt-get install git

Anschließend Ordner erstellen, gitea herunterladen und rechte anpassen:

mkdir -p /opt/gitea/custom/conf
mkdir /opt/gitea/data
cd /opt/gitea/
wget -O gitea https://dl.gitea.io/gitea/master/gitea-master-linux-amd64
chmod +x gitea
chown -R git:git /opt/gitea/

Die jeweils aktuelle gitea Version findet man unter https://github.com/go-gitea/gitea/releases oder https://dl.gitea.io/gitea/

Nun kann man gitea bereits mit folgendem Befehl starten:

./gitea web

Dieser Befehl legt auch schonmal eine leere config-datei unter /opt/gitea/custom/conf/ an.
Wir möchten gitea aber nicht ständig manuell starten und legen stattdessen ein .service-file für systemd an. Dazu im die Datei /etc/systemd/system/gitea.service mit folgendem Inhalt anlegen:

[Unit]
Description=Gitea
After=syslog.target
After=network.target
After=mariadb.service mysqld.service postgresql.service memcached.service redis.service

[Service]
# Modify these two values and uncomment them if you have
# repos with lots of files and get an HTTP error 500 because
# of that
###
#LimitMEMLOCK=infinity
#LimitNOFILE=65535
Type=simple
User=git
Group=git
WorkingDirectory=/opt/gitea
ExecStart=/opt/gitea/gitea web
Restart=always

[Install]
WantedBy=multi-user.target

Mit folgenden Befehlen kann nun gitea gestartet, gestopt und enabled werden (Achtung: Vorher den Befehl „systemctl daemon-reload“ ausführen):

systemctl enable gitea.service
systemctl start gitea.service
systemctl stop gitea.service
systemctl status gitea.service

Hier auch noch der Auszug aus meiner nginx-config:

########################################
#
# git.website.tdl
#
########################################

server {
        listen 80;
        listen [::]:80;

        error_log /var/log/nginx/error.log warn;

        server_name git.website.tdl;
        return 301 https://$server_name$request_uri;
}

server {
        listen 443 ssl http2;
        listen [::]:443 ssl http2;

        server_name git.website.tdl;

        error_log /var/log/nginx/error.log warn;

        proxy_cache off;
        ssl_certificate /etc/letsencrypt/live/git.website.tdl/fullchain.pem;
        ssl_certificate_key /etc/letsencrypt/live/git.website.tdl/privkey.pem;
        ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH";
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_prefer_server_ciphers on;
        ssl_session_cache shared:SSL:10m;
        add_header Strict-Transport-Security "max-age=63072000; includeSubdomains; preload";
        add_header X-Frame-Options SAMEORIGIN;
        add_header X-Content-Type-Options nosniff;
        ssl_session_tickets off; # Requires nginx >= 1.5.9
        ssl_stapling on; # Requires nginx >= 1.3.7
        ssl_stapling_verify on; # Requires nginx => 1.3.7
        ssl_trusted_certificate /etc/letsencrypt/live/git.website.tdl/chain.pem;
        resolver 8.8.8.8 8.8.4.4 208.67.222.222 208.67.220.220 valid=300s;
        resolver_timeout 5s;
        ssl_dhparam /etc/nginx/ssl/dhparams.pem;
        
	# Disalow to read .htaccess-Files
        location ~/\.ht {
                deny all;
        }

	client_max_body_size 1G;

	# Configuration for letsencrypt
    	location /.well-known {
		alias /srv/http/git.website.tdl/.well-known;
    	}

        location / {
                proxy_pass http://localhost:3000/;
        }

}

Es wird ein einfacher proxy_pass angelegt. Gitea sollte damit im Internet erreichbar sein. Nun noch wie üblich eine Datenbank anlegen (ich gehe davon aus, das schafft ihr) und man kann auch schon los legen.

Migration unter Arch

Zunächst einmal muss gitea installiert werden. Ich empfehle dabei das gitea aus dem user repository (mehr Infos: https://wiki.archlinux.org/index.php/Gitea) zu nehmen. Ich selbst habe mich dafür entschieden, die installation analog zu der unter Debian zu machen, da ich hier gerne das Upgrade selbst durchführen will.

Leider funktioniert die einfache Migration wie hier beschrieben nicht mehr: https://docs.gitea.io/en-us/upgrade-from-gogs/ Dazu wäre Version 0.9 nötig. Ich habe leider auch keine elegante Variante gefunden. Ich habe zwar die aufgezeigte Migration versucht, aber die Datenbank ist einfach nicht mehr konsistent. Einzige Migrationsmöglichkeit ist es, die Repos einzeln zu migrieren.

Kostenlose S/MIME Zertifikate vom Fraunhofer SIT

Normalerweise halte ich mich ja vor Dingen fern, die „Volks-“ im Namen haben, aber die Volksverschlüsselung des Fraunhofer SIT klingt einfach zu verlockend.

TL:DR; Bei der Volksverschlüsselung erhält man nach Authentifizierung ein für 2 Jahre gültiges S/MIME Zertifikat. Leider ist das Zertifikat selbst signiert, aber das Fraunhofer Institut arbeitet wohl schon an einer Aufnahme in die trusted stores.

Was ist S/MIME?

Secure / Multipurpose Internet Mail Extensions (S/MIME) ist ein toller weg seine Emails zu signieren und zu verschlüsseln. Es ist vergleichbar mit GnuPG ist aber deutlich besser in alle Email-Clients integriert und man benötigt keine Plugins oder Erweiterungen. Mehr dazu hier: http://t3n.de/news/mails-verschlusseln-eigentlich-482381/

Wie bekomme ich das Zertifikat?

Da für das Zertifikat der vollständige Name überprüft werden muss, funktionieren derzeit leider nur folgende Verifikationsmethoden:

  1. Personalausweis: Man nutzt die tollen Funktionen des Personalausweises und hat ein Lesegerät dafür.
  2. Telekom: Man ist Festnetzkunde der Telekom und kann über die Rechnung seinen Namen verifizieren
  3. Registrierungscode: Man findet jemanden vom Fraunhofer auf einer Veranstaltung und lässt sich vom Mitarbeiter verifizieren.

Die letzte Methdoe habe ich gewählt und beschreibe im Folgenden wie man sich das Zertifikat holt.

Leider gibt es die Antrags-Software derzeit nur für Windows. Daher empfehle ich einfach kurz eine Windows VM anzulegen und mit der Software ein Zertifikat beantrage. Das Tool einfach herunterladen, installieren und folgende Identitäsnachweis wählen:

Anschließend Email-Adresse und Antrags-Code auf der Karte eingeben. Nach der Überprüfung wird noch ein Bestätigungscode auf die angegebene Email-Adresse geschickt und schon ist der Antrag fertig.

Vergesst nicht euren Sperrcode sicher aufzuheben. Dieser wird benötigt, wenn das Zertifikat vor dem Ablaufdatum zurückgezogen werden muss.

Zertifikat exportieren

Zum exportieren des Zertifikates, muss links im Menü das Zahnrad ausgewählt werden und anschließend „Zertifikat exportieren“. Achtet darauf, dass ihr ein .p12 Zertifkat exportiert. Dieses kann in der Regel für alle Systeme verwendet werden.

Zertifikat in Thunderbird einbinden

Die Einbindung in Thunderbird ist dann eigentlich ein Kinderspiel. Man geht zu seinen Email-Konten (unter Linux: Bearbeiten -> Konten Einstellungen -> S/MIME-Sicherheit.

Anschließend wählt man für die Digitale Unterschrift und Verschlüsselung das richtige .p12 Zertifikat aus (gibt dann noch ein eventuell vergebenes Passwort ein) und schon wars das.

Es muss dann außerdem unter Bearbeiten -> Einstellungen -> Erweitert -> Zertifikate Verwalten das Zertifikat vom „Fraunhofer SIT“ suchen und bei allen Zertifikaten das „Vertrauen bearbeiten“ und alle drei Häckchen setzen.

Um zu testen, ob alles funktioniert hat, sendet das System automatisch eine verschlüsselte Email. Wenn alles richtig eingerichtet ist, solltet ihr die Nachricht ohne Probleme entschlüsseln können.

 

Howto: Multi-Node Spark Cluster im Standalone-Mode auf Debian 9

Hallo Zusammen,

die Reise des verteilten Rechnens geht weiter. Ich setze voraus, dass ihr bereits einen Funktionsfähigen Hadoop-Cluster habt. Wie man diesen Aufsetzt kann hier nachgelesen werden: Hadoop-Cluster mit Debian 9 aufsetzen

Ich setze bei der Namensgebung stark auf diese Anleitung auf. Es lohnt sich also immer, diese

Spark Herunterladen und Konfigurieren

Ich setze hier voraus, dass ihr die Key-File-Anmeldung mit SSH eingerichtet habt und die verschiedenen Rechner in der /etc/hosts benannt sind.

Alle folgenden Arbeiten werden zunächst auf dem Master „hadoop-master“ (192.168.123.90) durchgeführt (vgl. Hadoop-Cluster mit Debian 9 aufsetzen). Zunächst die aktuelle Version herunterladen und entpacken. Wählt dazu die Pre-build Version für Apache Hadoop in der entsprechenden Version.

cd /opt/
wget https://d3kbcqa49mib13.cloudfront.net/spark-2.2.0-bin-hadoop2.7.tgz
tar xvf spark-2.2.0-bin-hadoop2.7.tgz
mv spark-2.2.0-bin-hadoop2.7/ spark/
chown -R hadoop:hadoop spark/
  • /opt/spark/conf/slaves.template zu /opt/spark/conf/slaves kopieren, anpassen und festlegen, auf welchen Maschinen ein Spark Worker gestartet werden soll
# A Spark Worker will be started on each of the machines listed below.
#localhost
hadoop-master
hadoop-slave-1
hadoop-slave-2
hadoop-slave-3
hadoop-slave-4
hadoop-slave-5
hadoop-slave-6
  • /opt/spark/conf/sparks-env.sh.template zu /opt/spark/conf/spark-env.sh kopieren und am Ende Folgendes einfügen:
SPARK_MASTER_HOST=hadoop-master
  • /opt/spark/conf/sparks-defaults.conf.template zu /opt/spark/conf/spark-defaults.conf kopieren und wie folgt anpassen:
spark.master                     spark://hadoop-master:7077
spark.eventLog.enabled           true
spark.eventLog.dir               hdfs://hadoop-master:8021/spark-log

Spark auf Slaves Verteilen

Nun erstelle wir zunächst mit Hilfe von tmuxinator (vgl. ) auf den Slaves das Sparks-Verzeichnis.

sudo mkdir /opt/spark/
sudo chown -R hadoop:hadoop /opt/spark/

Jetzt verteilen wir auf dem master die files auf die slaves:

scp -r spark/* hadoop-slave-1:/opt/spark/.
scp -r spark/* hadoop-slave-2:/opt/spark/.
scp -r spark/* hadoop-slave-3:/opt/spark/.
scp -r spark/* hadoop-slave-4:/opt/spark/.
scp -r spark/* hadoop-slave-5:/opt/spark/.
scp -r spark/* hadoop-slave-6:/opt/spark/.

Spark Cluster Starten

Nun sollte alles installiert sein und wir können den Spark-Cluster starten:

# Starts both a master and a number of slaves.
./opt/spark/sbin/start-all.sh
# Stops both the master and the slaves.
./opt/spark/sbin/stop-all.sh

Ab jetzt kann man über http://192.168.123.90:8080/ (hier natürlich die eigene IP eingeben) das Webinterface aufrufen und sieht seine Worker.

Hadoop-Cluster mit Debian 9 aufsetzen

Im Rahmen einer Forschungsarbeit beschäftige ich mich mit Spark auf einem Hadoop-Cluster. Ich habe daher ein wenig Spielzeug bekommen und wollte mal sehen, wie geeignet das System für uns ist. Der Testaufbau soll vor allem auch zeigen, ob man große Daten auch mit geringen Ressourcen gut verarbeiten kann.

Die Maschinen

Ingesamt 7 Desktop-Rechner mit

  • i7-2600 @3,4 GHz mit 4 Kernen
  • 500GB HDD
  • 8 GB RAM

Ich weiß, die Specs sind laut Empfehlungen viel zu klein für ein Hadoop-Cluster, aber der Test soll auch zeigen, wie weit man mit geringen Ressourcen kommt.

Das Betriebssystem

Mal wieder steht man vor der Wahl des Betriebssystem. Ich fühle mich eigentlich auf Arch am wohlsten, da ich aber weniger Arbeit mit der Wartung der Maschinen als vielmehr mit Hadoop verbringen möchte, hab ich mich für Debian 9 entschieden.

Festplattenkonfiguration

  • 30GB: /
  • 8GB: SWAP
  • Rest für /home/

Netzwerkkonfiguration

Wir arbeiten ein einem abgeschottenen Netzwerk innerhalb der Hochschule. Die IP-Adressen sind eigentlich egal und dienen nur mir als Gedächtnisstütze ;). Wichtig ist nur, dass man die Hosts-Datei /etc/hosts entsprechend anpasst:

192.168.123.90 hadoop-master
192.168.123.91 hadoop-slave-1
192.168.123.92 hadoop-slave-2
192.168.123.93 hadoop-slave-3
192.168.123.94 hadoop-slave-4
192.168.123.95 hadoop-slave-5
192.168.123.96 hadoop-slave-6

tmux dein Freund zur Administration vieler Maschinen

Für die Administration vieler Maschinen ist tmux quasi unverzichtbar. Ich verwende dazu noch das tool tmuxinator mit folgender Konfiguration:

name: hadoop
root: ~/
windows:
  - editor:
      layout: tiled
      synchronize: after
      panes:
        - ssh [email protected]
        - ssh [email protected]
        - ssh [email protected]
        - ssh [email protected]
        - ssh [email protected]
        - ssh [email protected]
        - ssh [email protected]
  - server: bundle exec rails s

Installation Hadoop

Ich habe mich an der Anleitung http://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-common/ClusterSetup.html orientiert und bilde hier nur die wichtigsten Schritte ab.

Zunächst die neuste Java-Version und rsync installieren:

sudo apt-get install openjdk-8-jdk rsync

SSH Public-Key Authentifizierung für alle Maschinen

Der master sollte auf alle slaves Zugriff haben. Daher habe ich auf dem master einen Schlüssel erstellt und diesen auf die anderen Maschinen verteilt.

Installation und Konfiguration des Masters

Die folgenden Arbeiten werden zunächst nur auf dem Master vorgenommen. Die neuste Version von Hadoop herunterlade und entpacken:

mkdir /opt/hadoop
cd /opt/hadoop/
wget http://www-eu.apache.org/dist/hadoop/common/hadoop-2.8.1/hadoop-2.8.1.tar.gz
tar -xzf hadoop-1.2.0.tar.gz
mv hadoop-2.8.1 hadoop
chown -R hadoop:hadoop /opt/hadoop/

Nun müssen einige files auf dem Master angepasst werden:

  • /opt/hadoop/hadoop/etc/hadoop/hadoop-env.sh
export JAVA_HOME=$(readlink -f /usr/bin/java | sed "s:bin/java::")
  • /opt/hadoop/hadoop/etc/hadoop/core-site.xml
<configuration>
	<property>
		<name>fs.default.name</name> 
		<value>hdfs://hadoop-master:9000/</value>
	</property>
	<property>
		<name>io.file.buffer.size</name>
		<value>131072</value>
	</property>
</configuration>
  • /opt/hadoop/hadoop/etc/hadoop/hdfs-site.xml
<configuration>
	<property> 
		<name>dfs.name.dir</name> 
		<value>/home/hadoop/hadoop/dfs/name</value> 
	        <final>true</final> 
	</property> 
</configuration>
  • /opt/hadoop/hadoop/etc/hadoop/slaves
hadoop-slave-1
hadoop-slave-2
hadoop-slave-3
hadoop-slave-4
hadoop-slave-5
hadoop-slave-6

Installation und Konfiguration der Slaves

Nun müssen die Files auf alle slaves verteilt werden (hier hilft wieder tmux).

scp -r /opt/hadoop/hadoop hadoop-slave-1:/opt/hadoop
scp -r /opt/hadoop/hadoop hadoop-slave-2:/opt/hadoop
scp -r /opt/hadoop/hadoop hadoop-slave-3:/opt/hadoop
scp -r /opt/hadoop/hadoop hadoop-slave-4:/opt/hadoop
scp -r /opt/hadoop/hadoop hadoop-slave-5:/opt/hadoop
scp -r /opt/hadoop/hadoop hadoop-slave-6:/opt/hadoop

Nun auf den Slaves noch folgendes Config-File anpassen:

  • /opt/hadoop/hadoop/etc/hadoop/hdfs-site.xml
<configuration>
	<property> 
		<name>dfs.name.dir</name> 
		<value>/home/hadoop/hadoop/dfs/name</value> 
	        <final>true</final> 
	</property> 
</configuration>

Und fertig ist die komplette Konfiguration. Nund muss das HDFS formatiert werden:

/opt/hadoop/hadoop/bin/hdfs namenode -format <cluster_name>

Starten und Beenden der Dienste

Am Ende sollten verschiedene Dienste gestartet werden. Dazu zunächst in folgendes Verzeichnis wechseln:

  • /opt/hadoop/hadoop/sbin/
# Starten der HDFS Namenode und Datanodes
./start-dfs.sh
# Starten der YARN Prozesse
./start-yarn.sh
# Starten des WebAppProxy Servers
./yarn-daemon.sh --config /opt/hadoop/hadoop/etc/hadoop/ start proxyserver
# Starten des MapReduce JobHistory Servers
mr-jobhistory-daemon.sh --config /opt/hadoop/hadoop/etc/hadoop/ start historyserver

Möchte man die Server beenden können folgende Befehle verwendet werden:

# Stoppen der HDFS Namenode und Datanodes
./stop-dfs.sh
# Stoppen der YARN Prozesse
./stop-yarn.sh
# Stoppen des WebAppProxy Servers
./yarn-daemon.sh --config /opt/hadoop/hadoop/etc/hadoop/ stop proxyserver
# Stoppen des MapReduce JobHistory Servers
mr-jobhistory-daemon.sh --config /opt/hadoop/hadoop/etc/hadoop/ stop historyserver

Webinterfaces

Nach dem Starten aller Dienste, sollten folgende Dienste erreichbar sein (IP-Addresse ist diejenige wo auch der Service läuft, in dieser Beschreibung der Master; Port ist jeweils der Standardport):

  • NameNode: http://192.168.123.90:50070
  • ResourceManager: http://192.168.123.90:8088
  • MapReduce JobHistory Server: http://192.168.123.90:19888

Arch Linux: Android Studio Virtual Devices starten nicht

Heute nach langer Zeit mal wieder ein kleiner quick and dirty bugfix:

Ich habe mir Android Studio aus den Paketquellen installiert, doch leider konnte ich keine virtuellen Devices starten.

Einzige Lösung:

/home/[user]/Android/Sdk/emulator/emulator -use-system-libs -avd [vm_name]

Damit das ganze auch innerhalb von Android Studio klappt, musste ich folgenden Workaround anwenden:

cd /home/[user]/Android/Sdk/emulator/lib64/libstdc++
mkdir old
mv * old/
ln -s /usr/lib/libstdc++.so.6
ln -s /usr/lib/libstdc++.so.6.0.24

und nochmal das ganze für 32bit:

cd /home/[user]/Android/Sdk/emulator/lib/libstdc++
mkdir old
mv * old/
ln -s /usr/lib/libstdc++.so.6
ln -s /usr/lib/libstdc++.so.6.0.24

Das hat bei mir zum Erfolg geführt.

Update 27.08.2017

Übrigens muss diese Methode nach einem Update der SDKs wiederholt werden.

Automatischer Aufbau einer openVPN Verbindung beim Start von freeNAS

Hallo Zusammen,

ich arbeite derzeit mit FreeNAS und bin sehr begeistert von diesem System. Dieses bietet alles, was man 2017 von einem NAS erwartet und gibt mir noch dazu viele Freiheiten.

Situation

Leider befindet sich der FreeNAS Server hinter einer Firewall, die zwar Verbindungen in das Internet zulassen, aber nicht aus dem Internet auf den FreeNAS-Server. Dennoch habe ich einen Server im Internet, welcher als openVPN-Server fungiert. Das Ziel ist es, dem FreeNAS automatisch eine VPN-Verbindung zu dem Server im Internet aufbauen zu lassen. Von hier aus kann dann weiter agiert werden.

VPN Konfiguration

FreeNAS verwendet openBSD als Betriebssystem mein VPN-Server läuft mit Arch Linux. Da ich jetzt nicht den 100dersten „Wie konfiguriere ich VPN“-Beitrag posten möchte, verweise ich auf zwei sehr sehr gute Wiki-Beiträge im ArchWiki:

Konfiguration im FreeNAS

Für die Konfiguration im FreeNAS haben wir verschiedene Möglichkeiten. Leider habe ich es nur über eine Möglichkeit geschafft (die erste direkt im Betriebssystem). Unabhängig von der Lösung müssen alle benötigten Dateien auf den Ordner gepackt werden:

  • ca.crt
  • freenas.crt
  • freenas.key
  • ta.key
  • client.conf

Anschließend kann die Konfiguration auf dem FreeNAS-Server mit

openvpn /root/vpn/client.conf

getestet werden.

Direkt im Betriebssystem

Ich habe die oben genannten Dateien unter /root/vpn/ gelegt. Achtet dabei, dass in der client.conf immer der absolute Pfad angegeben ist. Anschließend muss in der Datei /conf/base/etc/rc.conf am Ende Folgendes Ergänzt werden:

# Start openVPN
openvpn_enable="YES"
openvpn_if="tun"
openvpn_dir="/root/vpn"
openvpn_configfile="/root/vpn/client.conf"

Anschließend reicht ein Neustart und die openVPN Verbindung wird automatisch erstellt.

Über Init/Shutdown Befehl oder Script

In der Weboberfläche kann unter Tasks -> Init/Shutdown Scripts -> Add Init/Shutdown Script ein Befehl bzw. Script angegeben werden, welches gestartet wird. Ich habe folgende Konfiguration versucht:

Leider war dies nicht von Erfolg gekrönt. Ich konnte auch leider keine Fehlerlogs finden. Die Verbindung wurde einfach nie aufgebaut. Ich habe dann ein einfaches BASH-Script geschrieben, welches die Verbindung aufbauen soll, doch leider können die Startscripte nur auf einem gemounteten Volume liegen. Auf /root/vpn/ hat man somit keinen Zugriff. Leider ist es in meiner Konfiguration auch nicht möglich auf ein gemountetes Volume gleich vom Start weg zuzugreifen, da dieses verschlüsselt ist und erst gemountet/geöffnet werden muss.

 

Die R-Kom und das Routerwahlrecht

In meiner neuen Wohnung in Regensburg habe ich bereits kurz nach dem Einzug die freudige Nachricht erhalten, dass bald Glasfaser ins Haus kommt und man sich bei Glasfaster Ostbayern (eine Marke der R-Kom) einen Vertrag klicken kann. Alleine das Wort Glasfaser sorgt bei jedem Nerd schon für Euphorie. Kommen dann noch die Worte „In“ „der“ „eigenen“ „Wohnung“ dazu, brechen Freudenschreie aus. Gesagt getan *klickklick*.

Das Bestellformular

Seit Neustem darf sich jeder Internetnutzer seinen Router selbst aussuchen und manchmal ist das auch gar keine so schlechte Idee. Eine kurze Recherche hat ergeben, dass die Fritz!Box 7490 super mit dem FTTB Anschluss von Glasfaser Ostbayern klar kommt, daher habe ich mir diese auf Amazon gekauft. Irgendwie hatte ich aber das Gefühl die R-Kom möchte nicht nicht so gerne, dass sich dieser doofe Kunde seinen Router selbst aussucht, denn ich musste gleich 5x bestätigen, wie gefährlich doch so ein eigener Router ist.

r-kom-und-das-router-wahlrecht

Der Anschluss

Eigentlich hätte ich es mir schon denken können, dass der Glasfaseranschluss unter keinem guten Stern steht, denn auch der Anschlusstermin wurde kurz vor knapp nochmal um 3 Wochen nach hinten verschoben, wegen (jetzt kommts): „Es ist nicht genug Glasfaser auf Lager“ (*hihi*). Drei Wochen später kam dann aber der Techniker und hat meine Telefon-Kupferleitung von der Wohnung mit dem Verteiler im Keller angeschlossen. Mehr war dann aber auch nicht drin, denn der Techniker musste dann feststellen, dass man wohl vergessen hatte, das Glasfaserkabel auch mit dem Verteiler zu verbinden ^^. Ein paar Tage später war es dann aber so weit und ich konnte endlich im Internet surfen… naja… fast…

Die Konfiguration

Die R-Kom war in dieser Hinsicht besonders hilfreich und hat in dem Schreiben, welches mich über meinen erfolgreichen Anschluss informiert, für die Installation/Konfiguration von Routern auf folgendes sehr hilfreiches Dokument verwiesen: Schnittstellenbeschreibung (das war übrigens auch die einzige „Anleitung“ auf die verwiesen wurde)

Hier mal die erste Seite dieser tollen und für „nicht-Techniker“ sehr verständlichen Beschreibung:

gfo_schnittstellenbeschreibung

Auszug aus der Schnittstellenbeschreibung der R-Kom. Es handelt sich um ein Dokument zu finden auf: https://www.glasfaser-ostbayern.de/hilfe-service/downloads/#routerwahlrecht

Natürlich beinhaltet das Dokument alles was man braucht, aber mal ehrlich: Das soll ein nicht-Techniker verstehen? Das Dokument geht über 7 Seiten so weiter und verzichtet vollständig auf beschreibenden Text.

Einstellungen für die Fritzbox 7490

Für Alle, die vor dem selben Problem standen, hier die korrekten Einstellungen für die Fritzbox 7490 in Verbindung mit einem FTTB-Anschluss von Glasfaser Ostbayern:

Unter Internet -> Zugangsdaten: „Anschluss an einen DSL-Anschluss“ auswählen. Anschließend unter Verbindungseinstellungen folgendes Einstellen:

bildschirmfoto-von-2016-11-29-17-35-37

Unter Telefonie -> Eigene Rufnummer -> Anschlusseinstellungen muss dann noch folgendes eingestellt werden:

bildschirmfoto-von-2016-11-29-18-05-05

Nun muss noch bei Telefonie -> Eigene Rufnummer -> Bei der entsprechenden Telefonnummer die Option „Anmeldung immer über eine Internetverbindung“ deaktivieren (danke an vitallo). Nun sollte alles funktionieren.

Geschwindigkeit und Beschwerdemanagement

Nach all den Beschwerden hier im Beitrag muss ich aber auch sagen, dass die gelieferte Geschwindigkeit, der Ping und die allgemeine Verbindungsqualität exquisit sind und exakt den bestellten Leistungen entsprechen (wirklich ohne Ironie, ich bin damit sehr zufrieden). Auch das „Beschwerdemanagement“ finde ich in Ordnung. Als der Techniker-Termin verschoben wurde, hat man mich per Brief und sogar per Telefonanruf informiert. Jetzt muss die R-Kom nur noch ein bisschen besser in der Kundenfreundlichkeit bezüglich der freien Routerwahl werden und ein bisschen den „Hass“ auf Freifunk Regensburg verlieren und alles ist gut :).

Der König von Narnia und die Technische Niederschule Regensburg

Dass Mailverteiler bei denen man an alle Antworten kann manchmal keine gute Idee sind, dürfte der Ein oder Andere wohl schon am eigenen Leib erfahren haben. An unserer Hochschule ist es zum glück nicht so einfach. Es gibt zwar die Email-Adresse [email protected], mit der alle Studenten erreicht werden können, aber die dort ankommenden Mails müssen vorher noch von einem Moderator abgenickt werden…

Der Fall Narnia

Manchmal passieren aber auch mit Moderation lustige Dinge. So kam es am 16.12.2015 zu folgender Konversation, die natürlich an alle Studenten ging:

Liebe Studentinnen, liebe Studenten,

einmal im Laufe des Studiums können Sie ein Büchergeldstipendium einfach und unkompliziert beantragen.

Die persönliche Antragsannahme ist in der Allgemeinen Studienberatung bis spätestens 23.12.2015 möglich. […]

Grüße
M.B.

Hört sich im Grunde wie der übliche Spam an, der so über den Äther läuft und die Postfächer der Studenten füllt, doch leider war ein Moderator sehr fleißig und hat dann auch folgende Antworten durch gelassen:

Sehr geehrte Frau M.B.,

Vielen Dank für Ihre E-Mail zum Büchergeldstipendium. Gerne möchte ich es beantragen, da ich passend für die Masterarbeit ein paar Bücher anschaffen muss.

Leider funktioniert der Link nicht und die Seite kann nicht gefunden werden. Auch auf der OTH Website kann ich keinen gültigen Link über das Bücherstipendium finden.

Könnten Sie mir bitte den Antrag als PDF per E-Mail schicken oder einen anderen Link zukommen lassen?

Vielen Dank im Voraus für Ihre Rückmeldung.

Mit freundlichen Grüßen,

R.T.

Tja kann schon mal passieren, aber hey.. das passiert sicher nur einmal…. Wiederum ein paar Minuten später:

Sehr geehrte Frau R.T.,
ich muss Ihnen leider absagen.
Studentinnen sind von deutschen Stipendien leider ausgeschlossen.
Ich finds auch kacke.
Mit freundlichen Grüßen
Prof. Dr. Egger
Stipendiatenbetreuer der Technischen Niederschule

Prof. Dr. Egger ist natürlich kein Professor sondern ein Student und außerdem ist ihm ein kleiner Fehler unterlaufen. Gut, dass sich jemand findet, der die Sache aufklärt:

Hochverehrter Prof. Dr. Egger,
ich darf an die Satzung des niederbayerischen Gremiums von 1867 erinnern, welche in Paragraph 12,5 Absatz 3/4 besagt, dass Studenten/innen unter besonderen Umständen und oder mit Defiziten in der Benutzung des elektronischen Postdienstes,das ausdrückliche Recht auf ein bezahltes Fördersemester in elektronischer Nachrichtenübermittlung haben.  Das Semester kann parallel zum Studium laufen, wird sowohl im Bachelor als auch im Masterstudium auf einer zusätzlichen Seite in Form einer Teilnehmerurkunde dokumentiert und mit der Freude sämtlicher Gesprächspartner gewürdigt . Es stimmt mich traurig, dass Sie der armen Frau R.T. dieses Wissen vorenthalten.
Mit freundlichen Grüßen
Dr. Main S. Enf
König von Narnia

Andere Hochschulen

So oder so Ähnlich haben es wohl schon viele Studenten auch von anderen Hochschulen mitbekommen. Dass es aber auch schlimmer geht, hat mir vor kurzem ein Kollege erzählt:

Durch ein Update oder eine fehlerhafte Konfiguration war es plötzlich möglich, allen Studenten zu antworten, natürlich ohne Moderation. Das Chaos war natürlich vorprogrammiert. Es ging sogar so weit, dass Studenten den „Tipp“ gegeben haben, doch im Betreff bitte „Abmelden + [Sein eigenes Passwort]“ zu schreiben, dann könne man sich von dem Mailverteiler abmelden. Natürlich haben viele Studenten diesen Tipp dann gleich mal ausprobiert.

Fazit

Aus Spaß kann schnell Ernst werden, aber so lange es bei dem König von Narnia bleibt, ist alles gut. Mich persönlich hat die Spam-Politik nur immer extrem genervt. Das Studentenpostfach wird völlig zugespammt und es gab natürlich keine Möglichkeit sich von einzelnen Programmen ab zu melden. Die Professoren dürfen sich wirklich nicht wundern, warum die Studenten die Email-Adresse kaum nutzen.