Server Installation: Unterschied zwischen den Versionen

Aus Opennet
Wechseln zu: Navigation, Suche
(Abuse Handling)
(dnsmasq für on-Domain-Auflösung in Verbindung mit DHCP)
Zeile 180: Zeile 180:
 
  none            /proc        proc    defaults          0 0
 
  none            /proc        proc    defaults          0 0
 
  none            /dev/shm      tmpfs    defaults          0 0
 
  none            /dev/shm      tmpfs    defaults          0 0
 +
 +
==== DNS-Konfiguration ====
 +
===== Setup: Statische IP-Konfiguration =====
 +
Im Falle einer statischen IP-Konfiguration (z.B. [[Server/yurika]]) genügen die folgenden Einträge in der /etc/resolv.conf:
 +
search on
 +
nameserver 192.168.0.246
 +
nameserver 192.168.0.247
 +
nameserver 192.168.0.248
 +
Zusätzlich sollten lokal verfügbare DNS-Server aufgeführt werden, um die Namensauflösung auch ohne Verbindung zur Mesh-Wolke sicherzustellen.
 +
 +
===== Setup: DHCP-Client =====
 +
Falls die WAN-IP eines Servers via DHCP konfiguriert wird (z.B. [[Server/ryoko]]), dann kann eine lokale dnsmasq-Installation die Domain-basierte Namensauflösung sicherstellen:
 +
apt install dnsmasq resolvconf
 +
 +
Folgende Konfigurationsdatei für dnsmasq ist anzulegen (/etc/dnsmasq.d/opennet.conf):
 +
# Opennet-Nameservice
 +
server=/on/192.168.0.246
 +
server=/on/192.168.0.247
 +
server=/on/192.168.0.248
 +
rev-server=192.168.0.0/24,192.168.0.246
 +
rev-server=192.168.0.0/24,192.168.0.247
 +
rev-server=192.168.0.0/24,192.168.0.248
 +
 +
Der DHCP-Client schreibt seine Upstream-DNS-Information nun in /var/run/dnsmasq/resolv.conf, welche von dnsmasq verwendet wird.
  
 
=== Virtualisierung ===
 
=== Virtualisierung ===

Version vom 14. Januar 2017, 17:47 Uhr

Inhaltsverzeichnis

Gateway Server

Kurzer Leitfaden für das Aufsetzen neuer Vereinsgateways.

Basisinstallation

Allgemeines zur Grundinstallation siehe auch unter Dienste-Server.

Konfiguration

Ansible

Alle neuen Gatewayserver werden per Konfigurationsautomatisierung installiert und verwaltet.

Siehe Server Installation/Ansible.

Netzwerk-Geräte

TODO - veraltet, überarbeiten!

  • Externe und Intern IP in /etc/network/interfaces konfigurieren. Dabei eth0=extern und eth1=intern
  • lege gatewaysetup.sh und iptables_dnat.autogenerated in /etc/network ab
  • lege ein helper script zum konditionalen aufruf von /etc/network/gatewaysetup.sh in /etc/init.d/gatewaysetup (siehe z.B. izumi setup)
  • linke /etc/init.d/gatewaysetup auf /etc/rcS.d/S40gatewaysetup
  • Das Script /etc/network/if-up.d/openvpn starten OVPN

Routing / OLSR

  • OLSR /etc/olsrd.conf, Defaults mit:
UseHysteresis       no
LinkQualityLevel    2
Interface "eth1"    { <defaults> }
Hna4
{
 # ipkg repositories
 195.56.146.238	255.255.255.255
 212.91.225.42	255.255.255.255
 # downloads.openwrt.org
 78.24.191.177   255.255.255.255

}

  • WAN-Routing /etc/network/ip-up.d/gatewaysetup.sh (Kopie besorgen)

IPv6 Miredo

Sollte kein IPv6 nativ oder via Tunnel bereit stehen, kann über Miredo (freie Toredo Implementierung) eine externe IPv6 Erreichbarkeit hergestellt werden. Gleichzeit kein DNS Update (dynamic dns) erfolgen. Details siehe Server Installation/miredo.

SSH-Server

  • ggf. neue Schlüssel erstellen in /etc/ssh/
    • RSA-Host-Key per ssh-keygen -b 2048 -t rsa -f ssh_host_rsa_key
    • DSA-Host-Key per ssh-keygen -b 2048 -t dsa -f ssh_host_dsa_key
  • Einige änderungen in /etc/ssh/sshd_config
PermitRootLogin without-password
#RSAAuthentication yes
#PasswordAuthentication no
  • auf Opennet Servern ist stets molly-guard installiert

OpenVPN

Siehe Server Installation/OpenVPN.

Nameserver

Siehe Server Installation/BIND.

Webserver

Siehe Server Installation/Apache und Server Installation/PHP

Timeserver

  • ntp (Server) via apt installieren

MTA (Mail Transfer)

Siehe Server Installation/Postfix.

Policy Routing

Für Server wird inzwischen Policy Routing verwendet, um die lokalen Routen (z.B. zum Default-GW) von den Opennet-internen OLSR Routen zu trennen.

  • Paket iproute installieren
  • /etc/iproute2/rt_tables ergänzen:
250     hardroutes
  • /etc/network/if-up.d/policy_routing.sh erstellen, ggf. Interface anpassen
#!/bin/sh
if [ $IFACE = 'eth0' ] ; then
       # leave those to olsr
       ip route add throw 192.168.0.0/16 table hardroutes
       ip route add throw 10.0.0.0/8 table hardroutes
       # everything else, send through the gateway to the rest of the world
       ip route add 0.0.0.0/0 via $IF_GATEWAY table hardroutes
       ip rule add table hardroutes pref 10
fi
  • bei User-GW Server in /etc/network/interfaces ergänzen:
auto lo:0
iface lo:0 inet static
       address 192.168.0.247
       netmask 255.255.255.255

VPN-Status

Dienste Server

Basisinstallation

  • Booten, z.B. per CD oder PXE mit Knoppix
  • Dateisystem vorbereiten:
    • cfdisk /dev/<device>, z.B. /dev/hda (IDE) oder /dev/sda (SCSI)
    • primäre Partitionen: 32 MB boot (Typ 83 + bootable), 500 MB swap (Typ 82), Rest für / (Typ 83)
    • boot mit EXT2: mkfs.ext2 /dev/<device>1
    • swap mit SWAP: mkswap /dev/<device>2
    • root mit XFS: mkfs.xfs /dev/<device>3
  • Debian (aktuelle Stable) installieren
a) Neuinstallation, vgl. Debian GNU/Linux-Installationsanleitung
c) per debootstap von Knoppix aus, vgl. Debian GNU/Linux-Installationsanleitung - C.4
b) als Kopie von vorhandenem GW, z.B. izumi
  • Filesysteme auf izumi ggf. mounten, crontab Einträge ggf. deaktivieren (CPU-Last)
  • boot einbinden: mount /dev/<device>1 /mnt/
  • boot spiegeln: rsync -axz --numeric-ids root@izumi.on:/boot/ /mnt/
  • root einbinden: umount /mnt; mount /dev/<device>3 /mnt/
  • root spiegeln: rsync -axz --numeric-ids root@izumi.on:/ /mnt/
  • Minimale Device-Nodes anlegen (bei UDEV): MAKEDEV null console zero

RAID u. Paritionierung

Siehe Server Installation/RAID.

Grub2

  • Grub2 installieren und Kernel einbinden
apt-get install grub-pc
grub-install /dev/saX   # alternativ besser wieder dpkg-reconfigure...
update-grub
  • Grub2 Installation ggf. später wieder anpassen
dpkg-reconfigure grub-pc
  • Kontrolle über /boot/grub/grub.cfg und /boot/grub/device.map und ggf.
grub-install --recheck /dev/sdX
  • Bei der Nutzung von Software RAID (md) Grub auch in beiden Physical Disks installieren
  • Zuordnung der Festplatten in Grub2 erfolgt stets über UUIDs, Kontrolle über (hier Bsp. mit RAID via md):
$:~# cat /boot/grub/device.map 
(hd0)	/dev/disk/by-id/ata-WDC_WD10EARX-22N0YB0_WD-WMC0T0893214
(hd1)	/dev/disk/by-id/ata-WDC_WD10EARX-22N0YB0_WD-WMC0T0882613
$:~# ls -l /dev/disk/by-uuid
lrwxrwxrwx 1 root root 10 May 14 14:03 15e2985b-d7cf-47ed-a0b5-ddc9cb41a7ef -> ../../dm-3
lrwxrwxrwx 1 root root 10 May 14 14:03 97165c10-cc81-4766-897e-952741036bae -> ../../dm-5
lrwxrwxrwx 1 root root  9 Jan  4 16:13 e4369ea9-7b23-447c-a4c1-625b2f8878f9 -> ../../md0
$:~# grep -i uuid /boot/grub/grub.cfg 
search --no-floppy --fs-uuid --set e4369ea9-7b23-447c-a4c1-625b2f8878f9
search --no-floppy --fs-uuid --set e4369ea9-7b23-447c-a4c1-625b2f8878f9
search --no-floppy --fs-uuid --set e4369ea9-7b23-447c-a4c1-625b2f8878f9
linux	/boot/vmlinuz-2.6.32-5-amd64 root=UUID=e4369ea9-7b23-447c-a4c1-625b2f8878f9 ro  quiet
search --no-floppy --fs-uuid --set e4369ea9-7b23-447c-a4c1-625b2f8878f9
linux	/boot/vmlinuz-2.6.32-5-amd64 root=UUID=e4369ea9-7b23-447c-a4c1-625b2f8878f9 ro single 
search --no-floppy --fs-uuid --set e4369ea9-7b23-447c-a4c1-625b2f8878f9
linux	/boot/vmlinuz-2.6.26-2-amd64 root=UUID=e4369ea9-7b23-447c-a4c1-625b2f8878f9 ro  quiet
search --no-floppy --fs-uuid --set e4369ea9-7b23-447c-a4c1-625b2f8878f9
linux	/boot/vmlinuz-2.6.26-2-amd64 root=UUID=e4369ea9-7b23-447c-a4c1-625b2f8878f9 ro single

Minimalkonfiguration

  • Hostname /etc/hostname + /etc/mailname
  • Zeitzone /etc/timezone -> Europe/Berlin
  • Kernelmodule /etc/modules
  • Dateisysteme /etc/fstab
/dev/<device>1   /boot         ext2     noauto,noatime    1 1
/dev/<device>3   /             xfs      noatime           0 0
/dev/<device>2   none          swap     sw                0 0
/dev/cdrom       /mnt/cdrom    iso9660  noauto,ro         0 0
none             /proc         proc     defaults          0 0
none             /dev/shm      tmpfs    defaults          0 0

DNS-Konfiguration

Setup: Statische IP-Konfiguration

Im Falle einer statischen IP-Konfiguration (z.B. Server/yurika) genügen die folgenden Einträge in der /etc/resolv.conf:

search on
nameserver 192.168.0.246
nameserver 192.168.0.247
nameserver 192.168.0.248

Zusätzlich sollten lokal verfügbare DNS-Server aufgeführt werden, um die Namensauflösung auch ohne Verbindung zur Mesh-Wolke sicherzustellen.

Setup: DHCP-Client

Falls die WAN-IP eines Servers via DHCP konfiguriert wird (z.B. Server/ryoko), dann kann eine lokale dnsmasq-Installation die Domain-basierte Namensauflösung sicherstellen:

apt install dnsmasq resolvconf

Folgende Konfigurationsdatei für dnsmasq ist anzulegen (/etc/dnsmasq.d/opennet.conf):

# Opennet-Nameservice
server=/on/192.168.0.246
server=/on/192.168.0.247
server=/on/192.168.0.248
rev-server=192.168.0.0/24,192.168.0.246
rev-server=192.168.0.0/24,192.168.0.247
rev-server=192.168.0.0/24,192.168.0.248

Der DHCP-Client schreibt seine Upstream-DNS-Information nun in /var/run/dnsmasq/resolv.conf, welche von dnsmasq verwendet wird.

Virtualisierung

Bezüglich KVM siehe Server Installation/KVM.

Bezüglich UML siehe Server Installation/UML.

Dienste

ACPI

  • alle Opennet Server haben einen acpid Dienst, so ist es möglich per Taster oder KVM den Server ein Signal zum herunterfahren zu senden
  • das parallel häufig mitinstallierte dbus sowie consolekit und policykit ist nicht notwendig, kann deinstalliert werden

Ferm (Firewall)

Siehe Server Installation/ferm.

Trac (Projektmanagement)

Siehe Server Installation/trac.

Gitolite (Git Server)

Siehe Server Installation/gitolite.

MediaWiki

Siehe Server Installation/MediaWiki.

Postgresql

  • Installation per APT
  • bei Bedarf Zugriffe erweitern in /etc/postgresql/<version>/main/pg_hba.conf
# allow other connections to DB
# added mathias mahnke 2012-05-12
#
# "local" is for Unix domain socket connections only
local   all         all                               ident
# IPv4 local connections:
host    all         all         127.0.0.1/32          md5
# IPv6 local connections:
host    all         all         ::1/128               md5
  • nach einem Debian od. Postgres Major Release Wechsel muessen die DBs manuell migriert werden (Versionen anpassen):
pg_dropcluster 9.1 main --stop
/etc/init.d/postgresql restart
pg_upgradecluster 8.4 main
diff -u 8.4/main/pg_hba.conf 9.1/main/pg_hba.conf
.. Rechte in /etc/postgresql/<version>/main/pg_hba.conf pruefen ..
.. Anwendung pruefen, wenn okay, fortfahren ..
pg_dropcluster 8.4 main
apt-get remove postgresql-8.4 postgresql-client-8.4
  • hierbei wurde zunächst die Default DB gelöscht und dann per Migr neu angelegt mit den Daten der urspr. DB

IRC

  • ircd-hybrid, IRC Server - als fertiges Debian Paket noch ohne SSL Support
  • hybserv, Dienste für IRC Netz (Nickname, Channel, Memo...); seit 2014 nicht mehr in Einsatz
  • logbot.pl, Bot für IRC Netz
  • Vorgang zur Installation des ircd mit SSL Support (entspr. CRYPTLINKS.txt in Debian Package Doku):
cd /usr/src/
apt-get source ircd-hybrid
apt-get build-dep ircd-hybrid
cd ircd-hybrid-<latest-version>
USE_OPENSSL=1 fakeroot debian/rules binary
cd ..
dpkg -i ircd-hybrid_<latest-version>.ssl1_<arch>.deb
  • Konfigurationsfile /etc/ircd-hybrid/ircd.conf anpassen:
listen {
   port = 6667;
   flags = hidden, ssl;
   port = 6669;
   flags = ssl;
   port = 6697;
};
  • Kopie Zertifikate Private Key File unter /etc/ircd-hybrid/key ablegen
  • nach der Installation via "netstat -l" überprüfen

Gallery3

  • Installation oder Upgrade durch Download Archives von galleryproject.org
  • bei Upgrade in neuen Unterordner ablegen
  • entpacken und ggf. ../var/ übernehmen
  • alte Installation umbenennen und neue auf alten Namen anpassen
  • .htaccess von alter Installation auf neue übertragen
  • http://<server>/<installation>/upgrader aufrufen
  • Modul "randimg" hinzufügen, http://codex.galleryproject.org/Gallery3:Modules:randimg

Mailman

Siehe Server Installation/Mailman.

Opennet CA

Siehe Server Installation/Opennet CA. Basiert auf OpenSSL.

Subversion

Siehe Server Installation/Subversion.

Roundcube (Webmail)

Siehe Server Installation/Roundcube.

Websieve (Mailmanagement)

Siehe Server Installation/Websieve.

SSL Zertifikate (Let's Encrypt)

Siehe Server Installation/Let's Encrypt.

Monitoring

apticron

Derzeit nicht verwendet, liefert zu häufig Fehler.

  • prüft den Update Status des Debian OS
  • Default-Installation ausreichend, liefert Änderungen per Mail an root
  • werden durch postfix dann automatisch an das ONI-NOC gesendert

apt-listchanges

  • zeigt eine Zusammenfassung des Paket Changelogs bei der Instalation
  • Versand parallel an Opennet NOC (via /etc/aliases - "root : noc@....")
  • Installation per apt-get install apt-listchanges, keine weitere Konfiguration notwendig

munin

Siehe Server Installation/munin.

monit

  • Debian Default-Installation ausführen und Opennet Config-File unter /etc/monit/conf.d/opennet ablegen
  • Dienst in /etc/default/monit aktivieren
  • Check auf Default-GW (IP) und PID-Files (Pfade) prüfen
  • überwacht dann dauerhaft Prozesse und startet diese ggf. neu
  • Zugriff per https://<host>:444 und Username/Passwort (siehe Config-File)
  • PEM File (Key + Cert) in /etc/ssl/private/<server-cert_year.pem> samt Symlink (<server-cert.pem>) ablegen + absichern (chmod go-r *.pem)
  • DH Paramter zum PEM File hinzufügen: openssl gendh 2048 >> /etc/ssl/private/<server-cert.pem>

vnstat

  • vnstat installieren: apt-get install vnstat; vnstat -u -i <wan-interface>
  • wird regelmässig durch den cron gestartet
  • Werte können an der Console abgefragt werden, z.B. Monatswerte per vnstat -m

logcheck

  • derzeit nicht im Einsatz auf Opennet Servern!
  • prüft Logdateien auf Anomalien und sendet dieses per E-Mail
  • Installation per apt-get install logcheck und Konfiguration von /etc/logcheck/logcheck.conf:
FQDN=0
MAILASATTACH=0
REPORTLEVEL="server"
SENDMAILTO="noc@opennet-initiative.de"
TMP="/tmp"
  • Ausnahmen bitte in /etc/logcheck/ignore.d.server/opennet ablegen

Nagios

Siehe Server Installation/Nagios.

changetrack

  • überwacht Änderungen der Config Files unter /etc
  • per apt installieren
  • /etc/changetrack.conf erweitern mit:
/etc/*
/etc/*/*
/etc/*/*/*
/root/changes.txt
/root/.ssh/authorized_*
  • /etc/default/changetrack anpassen:
AUTO_TRACK_ALL_CONFFILES=yes
  • die danach final überwachten Dateien sind unter /var/lib/changetrack/all_conffiles.txt einsehbar (nicht manuell bearbeiten! wird via daily-cron erzeugt)

apt-dater

  • zentrale Überwachung von ausstehende Updates via apt-dater
  • hierzu muss auf jedem Server der Hostsupport via apt-dater-host installiert sein
  • Zugriff dann per SSH Key vom eigenen Client PC und installiertem apt-dater
  • Installationslogs entstehen wie üblich unter /var/log/apt/

Backup

Rsync

  • die meisten Server werden zu Server/akito per rsync gesichert
  • hierzu wird folgendes Script (/usr/local/sbin/backup.sh) als Grundgerüst je Server verwendet (hier heartofgold als Beispiel):
#!/bin/bash
FORMAT='%H:%M:%S %d.%m.%Y'; 
LOGFILE=/var/log/backup.log
renice 19 -p $$ >/dev/null
ionice -c 3 -p $$
echo "$(date +"$FORMAT") Start Backup: hog" >>  $LOGFILE
rsync -azx --numeric-ids --delete --bwlimit 300 --exclude-from /tank/exclude/ALL.txt 
 \ --exclude-from /tank/exclude/heartofgold.txt hog.on-i.de:/ /tank/hog/
echo "$(date +"$FORMAT") Start Backup: fertig" >>  $LOGFILE
  • neue Server dort entsprechend ergänzen

Tartarus

  • externes Backup der Server, wird für Server bei Hetzner verwendet (Hetzner Backup Service your-server.de)
  • Zugangsdaten im Conf-File hinterlegen und Start via /etc/crontab
15  4   2-31 * * root   /usr/sbin/tartarus -i /etc/tartarus/www.conf >> /var/log/tartarus.log 2>&1
15  4   1 * *   root    /usr/sbin/tartarus /etc/tartarus/www.conf >> /var/log/tartarus.log 2>&1

Karten-Software

Die Opennet-Karten basieren auf den Link Quality Daten die OLSR bereit stellt. Ein PHP Script bereitet diese Daten auf und legt sie auf dem Webserver in einem Textfile ab. Es gibt die Übersichtskarten und die AP-Positionskarten.

Übersichtskarten

Die Übersichtskarten werden über ein iFrame und der URL wiki.opennet-initiative.de/osm.php?lat=54.085&lng=12.12&zoom=14&maptype=gmap in Wiki-Seiten eingebunden. Statt dem Maptype gmap kann man auch mapnik verwenden. Mapnik Karten basieren auf dem Kartendaten von Openstreetmap.

AP-Positionskarten

Durch das Wiki-Plugin OnApPos lassen sich Karten erzeugen die einen AP und dessen Nachbarn darstellt. Um z.B. eine Karte für AP100 und dessen Nachbarn zu erzeugen würde man folgendes einfügen:

<OnApPos>100</OnApPos>

Damit die Karte passend am rechten Rand positioniert wird kann man folgende Vorlage verwenden:

{{Accesspoint Kartenposition|ap=100}}

PHP Link Quality Script

Wir befinden uns auf dem Webserver. Über ein Cron Script (/usr/local/sbin/get_topo) werden alle 60 Sekunden per OLSR-TXT Plugin die Topo und HNA Informationen ausgelesen und in Text Dateien (/var/www/olsrtopo/hna|topo) geschrieben. Diese werden anschließend über das PHP Script /var/www/olsrtopo/engine.php ausgewertet. Das Ergebnis ist die Datei /var/www/olsrtopo/topo_output.csv die als Grundlage für die Karten-Scripte dient.

Das Script engine.php führt folgende Aktionen aus.

  • HNA's aus /var/www/olsrtopo/hna einlesen.
  • AP Liste im Wiki Parsen und Koordinaten sammeln.
  • Topo aus /var/www/olsrtopo/topo einlesen.
  • Netz Qualität der einzelnen AP's berechnen. Dabei wird von den AP's ausgegangen die direkten Kontakt mit einem Gateway haben das HNA's ausgibt. Von hier werden absteigend die Links verfolgt. Die LQ eines AP's ist die LQ des schlechtesten Link zum nächsten Gateway.
  • Liste mit Links zwischen den AP's ausgeben.
  • Liste mit AP's ausgeben.
  • Die Daten landen in topo_output.csv.
  • Daten werden ein mal pro Minute aktualisiert.

Python Link Quality Script

Das Python Script (von sh01) läuft auf Opennet_Server/heartofgold und verwendet ein spezielles OLSR Plugin um an die LQ Daten zu kommen. Die Daten landen auf Opennet_Server/heartofgold in /var/www/htdocs/topology/olsr/alfredi_output.csv. Das passiert alle 5 Minuten durch einen Cronjob.

Auf www.on-i.de läd ein weiterer Cronjob /usr/local/sbin/olsrtopoloader alle 5 Minuten die csv-Datei auf den Webserver nach /var/www/olsrtopo/alfredi_output_old.csv. Durch zwei Mediawiki Erweiterungen können die Informationen nun im Wiki angezeigt werden. Diese Daten werden aktuell nicht verwenden. Zum Vergeichen der Karten kann man alfredi_output_old.csv nach topo_output.csv kopieren.

OpenLayers Karte

  • siehe Geronimo (früher Openlayers)
  • aufgeteilt in Programmteil (nicht öffentlich, /var/www/map/) und Webanteil (öffentlich, /var/www/htdocs/map/)
  • Triggern von www.opennet-initiative.de/api/ auf /var/www/map/src/geronimoCGI.py mittels WSGI
  • Python Lib "wikitools" notwendig - http://code.google.com/p/python-wikitools/
  • Python Lib geojson und cherrypy notwendig - Installation via pip install geojson cherrypy
  • Crontab notwendig (Zugriffsdaten Wikibot einsetzen) mit
*/10 * * * * /var/www/map/geronimo.py 

Abuse Handling

Als Abuse Kontakt verwenden wir unsere Admin-Mailingliste. Dort wird sich dann unser Hoster melden, sollten Sie eine Absuse-Anfrage erhalten. Wir versuchen diese nach besten Möglichkeiten zu unterstützen. Im Zweifel nehmen wir eine temporäre Sperre eines APs od. Protokolls vor. Ganz wichtig ist das Sensibilisieren der Nutzer bzw. des Nutzerkreises. Hierzu haben wir sowohl Aushänge (in verschiedenen Sprachen) als auch die Infoseite für freie Zugangspunkte und weiteres im Opennet Wiki.

Sollten die Informationen nicht ausreichen, so könnte unsere Antwort wie folgt aussehen:

Leider können wir den Fall nicht selbst nachvollziehen.
Wir bieten auf dem Server einen Zugang für einen offenen Personenkreis
an (Opennet Initiative e.V.). Sollten wir mehr Informationen erhalten
können, versuchen wir gern die Ursache zu finden und abzustellen.
Entspr. den rechtlichen Anforderungen in Bezug auf den Datenschutz
erfassen wir keine personenbezogenen Daten.
Meine Werkzeuge
Namensräume

Varianten
Aktionen
Start
Opennet
Kommunikation
Karten
Werkzeuge