altes wiki durchsortiert zum veröffentlichen

This commit is contained in:
amanita 2017-06-15 13:20:32 +02:00
commit 57b6e0e2d3
92 changed files with 4949 additions and 0 deletions

View file

@ -0,0 +1,50 @@
### Aufgaben der Gründung:
Vor einiger Zeit hatten wir versucht, gerade ausstehende Aufgaben zu sammeln. Sie stehen exemplarisch für das was wir bereits getan haben oder uns einmal vornahmen zu tun.
#### Körperschaft:
1. [x] Gründung des Vereins
2. [x] Gewerbeanmeldung
3. [x] Konto einrichten
4. [x] Anmeldung beim Finanzamt
5. [x] Abschließen der Verträge
6. [x] Förderungen beantragen
#### Website
- [x] Selbstverständnis
- [x] Impressum
- [x] Kontakt
- [x] Satzung und Geschäftsordnung
- [x] Kurze Erklärung was wir tun
- Alles knapper und besser fassen
- Wiki
- Anleitungen
- Dienste, die dritte auf unserer Infrastruktur anbieten (Mail, Etherpads, Git, etc.)
#### Baumaßnahmen:
- [x] Serverraum abmauern
- [x] Server-Sensorik (Luftfeuchte, Türöffnung)
- Serverraum Belüftung
- [x] Lagerraum
- [x] Verschlag für Technik unterm Dach
- [x] Stromversorgung für Technik unterm Dach
* Status-LED auf dem Dach (weithin sichtbar)
- [x] Sicherung tauschen
- [x] Stromzähler einbauen
#### Papierkram:
- [x] Geschäftsordnung schreiben
- [x] Verträge entwerfen
- Hotspot-Verträge entwickeln
#### Netzausbau:
Aktuell:
- ~~Relayd zum laufen bringen. carl: "wollen wir relayd als Notfalllösung haben?"~~
- ~~Link zum Westnetz einrichten~~
- "Autoconfig" für die Antennen
#### Absprechen:
- [x] Vertrag/Angebot mit/von HLKomm
#### Fragen klären:
- OpenWRT oder proprietärer Kackmist?

View file

@ -0,0 +1,17 @@
Ich dachte bevor wir so richtig anfangen sollten wir uns am besten schon mal Gedanken über eine Dokumentationskonzept machen, damit wir das so on the fly nebenher dokumentieren können, und nicht irgendwann ohne Doku dastehen, oder alles auf einmal dokumentieren müssen.
# Physikalischer Netzaufbau/Hardware
Ich hatte mir überlegt, dass wir am besten für jedes Gerät, das wir im Netzwerk betreiben (in dieser Hinsicht gelten VMs auch als Gerät) eine eigene Seite anlegen, wo zum einen möglichst viel Information überdas Gerät, sowas wie ip, mac, seriennummer, modellbezeichnung, _anschlüsse_ an andere Geräte, Standort (GPS, Adresse), Panoramas, und mehr, gesammelt ist, und zum anderen ein Changelog, wo immer wenn etwas an diesem Gerät geändert wird ein Eintrag gemacht wird.
Wenn wir das halbwegs Strukturiert machen kann man daraus dann sogar nacher coole Netzgrafiken automatisch generieren.
<DokuTemplate>
NACHTRAG: Diese Informationen werden wir in Ansible eintragen und den Teil der Doku daraus generieren.
# Nutzende/Orte
Bin mir nicht ganz sicher was wir da brauchen, Aber wieder eine Seite pro Nutzendem hört sich gut an, und eine Ansprechpartnerin pro Ort. Wenn wir da ne Kontaktemailadresse oder so reintun, sollten wir aus datenschutzgründen https ausrollen.
NACHTRAG: Wer sollt Zugriff auf diese Daten haben?
# Passwörter/Schlüssel
Da bin ich mir tatsächlich nicht sicher, zum einen ist es Sinnvoll wenn nur wenige leute die Passwörter für bsp. Server und APs kennen, andererseits ist dann halt der Busfaktor recht niedrig.
Mein bester Vorschlag wäre ein passwort nur einer oder zwei personen in die hand zu drücken, aber sie dann verschlüselt mit einem multipart-schlüssel (der verschlüsselungsschlüssel wird in mehrere teile geteilt, und man braucht mindestens x teile um das ding zu entschlüsseln) auf irgendnem usbstick der irgendwo eingemauert wirt zu speichern.
Aber bitte haut Vorschläge raus!
NACHTRAG: Passwörter liegen in einem GPG-Block im Git, den die Vorstände entschlüsseln können.

4
Readme.md Normal file
View file

@ -0,0 +1,4 @@
# Das Reudnetz Wiki
Hier sammeln wir all die Informationen, die ohne Probleme öffentlich sein können. Jeder der sich für das Reudnetz interessiert ist eingeladen, darin zu stöbern.

23
git.md Normal file
View file

@ -0,0 +1,23 @@
### how to wiki
##### Grafisch:
[wiki.reudnetz.org](wiki.reudnetz.org)
##### Git:
initiales einstellen von git
git config --global user.name "user"
git config --global user.email "user@mail.tld"
initiales saugen des wikis
git clone git@git.reudnetz.org:wiki.git
aktualisieren der lokalen daten
git pull
"pushen" der lokalen änderungen zum server
git add DATEI.md # jeweils geänderte Dateien
git commit -m "NACHRICHT" # schlaue Nachricht was geändert wurde
git push

8
menschenzeugs/FAQ.md Normal file
View file

@ -0,0 +1,8 @@
### FAQ
Wiederkehrende Fragen aller Art gehören samt Antwort hier her. Ziel ist es die Liste irgendwann auf die Website zu packen.
##### Wie kann ich sicherstellen, das ich meinen Datenverkehr nicht mitlest?
Das ist uns gesetztlich untersagt und wir versprechen euch, dass wir das nicht tun. Möglich ist es aber dennoch. Das gilt übrigens für jeden einzelnen Knotenpunkt, eurer Verbindung. Deshalb ist es wichtig, das ihr Ende-zu-Ende Verschlüsslung einsetzt. Damit seid ihr nicht mehr darauf angewiesen uns zu vertrauen, sondern könnt sichergehen, dass nur ihr und euer Gegenüber die Informationen zu Gesicht bekommt.
##### Warum richtet ihr dann keine Ende-zu-Ende Verschlüsslung ein?
Weil wir das nicht für euch machen können. Ziel einer solchen Verschlüsselung ist es, das nur ihr uns euer Gegenüber die Daten im Klartext zu Gesicht bekommt. Sobald wir so etwas für euch anbieten würden, hätten wir Zugriff auf den Klartext. Vertraut niemanden der euch einen solchen Dienst anbietet.

3
menschenzeugs/Readme.md Normal file
View file

@ -0,0 +1,3 @@
## Zeug mit Menschen drin
Hier kommt alles hin, was mit dem ganzen Kommunikations-Overhead zu tun hat, der mit dem ISP einhergeht. Also Dokumententemplates, Veröffentlichungen, Infoblätter, usw.
Dokumente werden dagengen seperat gespeichert, solange ich nicht weiß, was ich veröffentlichen darf.

View file

@ -0,0 +1,112 @@
\documentclass[a4paper]{article}
%
\usepackage[english]{babel}
\usepackage[utf8x]{inputenc}
\usepackage{amsmath}
\usepackage{graphicx}
\usepackage{fancyhdr}
\usepackage[colorinlistoftodos]{todonotes}
\usepackage{lastpage}
%
\newcommand{\Qline}[1]{\noindent\rule{#1}{0.6pt}}
%
\def\theauthor{Reudnetz w.V.}
\def\thetitle{Anschlussvertrag}
\def\theadress{\\ Wurzner Str.2, 04315 Leipzig \\ mail@reudnetz.org}
%
\author{\theauthor \theadress}
\title{\thetitle}
\date{}
%
\fancypagestyle{front}{
\renewcommand{\headrulewidth}{0.5pt}
\fancyhead[L]{\maketitle}
\fancyhead[R]{
\includegraphics[width=3cm]{logo.png}
}
\fancyfoot[C]{\thepage / \pageref{LastPage}}
}
\fancypagestyle{body}{
\fancyhead[L]{\thetitle}
\fancyhead[R]{\theauthor}
\fancyfoot[C]{\thepage / \pageref{LastPage}}
}
%
%
\begin{document}
\maketitle
\thispagestyle{front}
\section*{Vertragsgegenstand}
Der Reudnetz w.V. verpflichtet sich gegenüber dem Vertragspartner zur Be\-reit\-stellung eines Internetanschlusses gemäß dem Angebot \textbf{Reudnetz Baustelle} am vereinbarten Übergabeort.
\section*{Leistungsbeschreibung}
\subsection*{Reudnetz Baustelle}
\textbf{Reudnetz Baustelle} ist kein Anschluss wie jeder Andere.
\begin{itemize}
\item{Echte Flatrate:} Keine Volumenbeschränkungen
\item{Keine Kündigungsfrist:} Kündbar zum Monatsende
\item{Mindestbandbreite:} Wir garantieren eine Mindestbandbreite
\item{Symmetrische Anschlüsse:} Genauso viel Upload wie Download
\item{Unterstützung:} Erreichbare Ansprechpersonen kümmern sich um euren Anschluss.
\item{Mitbestimmung:} Werde Vereinsmitglied und entscheide über deinen Provider.
\end{itemize}
\section*{Zahlungsmodalitäten}
\paragraph{} Die monatlichen Kosten sind im Voraus auf das Konto
zu überweisen. Beginnend ab dem ersten vollen Monat nach Anschlussschaltung.\\
Die Anschlusskosten sind ab der Anschlussschaltung zu zahlen.\\
\\
Monatliche Kosten: \Qline{4cm}
\\
Einmalige Anschlusskosten: \textbf{50 Euro}
\\
Übergabeort:
\\
\\
\Qline{\textwidth}
\\
Reudnetz w.V.\\
IBAN: DE27 4306 0967 1188 3419 00\\
GLS Bank Bochum\\
\section*{Nutzerdaten}
Gemäß des Telekommunikationsgesetztes §111 erheben wir folgende Daten:\\
Vorname, Name/Organisation:\\
Anschrift:\\
Geburtsdatum:\\
Email-Adresse:\\
Der Vertrag tritt am \Qline{3cm} in Kraft.\\
Ich habe die Widerrufsbelehrung und den Inhalt des Vertrages gelesen und stimme dem zu:
\\
\\
\\
\begin{tabular}{ l l l }
\Qline{0.18\textwidth} & \Qline{0.36\textwidth} & \Qline{0.36\textwidth}\\
Datum & Unterschrift des Nutzenden & Unterschrift des Anbieters \\
%\Qline{0.45\textwidth} & \Qline{0.45\textwidth}\\
%Unterschrift des Anbieters & Datum \\
\end{tabular}
\thispagestyle{body}
\section*{Widerrufsbelehrung}
\subsection*{Widerrufsrecht}
Sie haben das Recht, binnen vierzehn Tagen ohne Angabe von Gründen diesen Vertrag zu widerrufen. Die Widerrufsfrist beträgt vierzehn Tage ab dem Tage des Vertragsabschlusses.\\
Um Ihr Widerrufsrecht auszuüben, müssen Sie uns (Reudnetz w.V, Wurzner Str.2, 04315 Leipzig) mittels einer formlosen eindeutigen Erklärung (z.B. ein mit der Post versandter Brief oder E-Mail) über Ihren Entschluss, diesen Vertrag zu widerrufen, informieren.\\
Zur Wahrung der Widerrufsfrist reicht es aus, dass Sie die Mitteilung über die Ausübung des Widerrufsrechts vor Ablauf der Widerrufsfrist absenden.\\
\textbf{Folgen des Widerrufs:}
Wenn Sie diesen Vertrag widerrufen, haben wir Ihnen alle Zahlungen, die wir von Ihnen erhalten haben, einschließlich der Lieferkosten (mit Ausnahme der zusätzlichen Kosten, die sich daraus ergeben, dass Sie eine andere Art der Lieferung als die von uns angebotene, günstigste Standardlieferung gewählt haben), unverzüglich und spätestens binnen vierzehn Tagen ab dem Tag zurückzuzahlen, an dem die Mitteilung über Ihren Widerruf dieses Vertrags bei uns eingegangen ist. Für diese Rückzahlung verwenden wir dasselbe Zahlungsmittel, das Sie bei der ursprünglichen Transaktion eingesetzt haben, es sei denn, mit Ihnen wurde ausdrücklich etwas anderes vereinbart; in keinem Fall werden Ihnen wegen dieser Rückzahlung Entgelte berechnet.\\
Haben Sie verlangt, dass die Dienstleistung während der Widerrufsfrist beginnen soll, so haben Sie uns einen angemessenen Betrag zu zahlen, der dem Anteil der bis dahin erbrachten Dienstleistungen im Vergleich zum Gesamtumfang der im Vertrag vorgesehenen Dienstleistung entspricht.
\end{document}

View file

@ -0,0 +1,112 @@
\documentclass[a4paper]{article}
%
\usepackage[english]{babel}
\usepackage[utf8x]{inputenc}
\usepackage{amsmath}
\usepackage{graphicx}
\usepackage{fancyhdr}
\usepackage[colorinlistoftodos]{todonotes}
\usepackage{lastpage}
%
\newcommand{\Qline}[1]{\noindent\rule{#1}{0.6pt}}
%
\def\theauthor{Reudnetz w.V.}
\def\thetitle{Anschlussvertrag}
\def\theadress{\\ Wurzner Str.2, 04315 Leipzig \\ mail@reudnetz.org}
%
\author{\theauthor \theadress}
\title{\thetitle}
\date{}
%
\fancypagestyle{front}{
\renewcommand{\headrulewidth}{0.5pt}
\fancyhead[L]{\maketitle}
\fancyhead[R]{
\includegraphics[width=3cm]{logo.png}
}
\fancyfoot[C]{\thepage / \pageref{LastPage}}
}
\fancypagestyle{body}{
\fancyhead[L]{\thetitle}
\fancyhead[R]{\theauthor}
\fancyfoot[C]{\thepage / \pageref{LastPage}}
}
%
%
\begin{document}
\maketitle
\thispagestyle{front}
\section*{Vertragsgegenstand}
Der Reudnetz w.V. verpflichtet sich gegenüber dem Vertragspartner zur Be\-reit\-stellung eines Internetanschlusses gemäß dem Angebot \textbf{Reudnetz Zuhause} am vereinbarten Übergabeort.
\section*{Leistungsbeschreibung}
\subsection*{Reudnetz Zuhause}
\textbf{Reudnetz Zuhause} ist kein Anschluss wie jeder Andere.
\begin{itemize}
\item{Echte Flatrate:} Keine Volumenbeschränkungen
\item{Keine Kündigungsfrist:} Kündbar zum Monatsende
\item{Mindestbandbreite:} Wir garantieren eine Mindestbandbreite
\item{Symmetrische Anschlüsse:} Genauso viel Upload wie Download
\item{Unterstützung:} Erreichbare Ansprechpersonen kümmern sich um euren Anschluss.
\item{Mitbestimmung:} Werde Vereinsmitglied und entscheide über deinen Provider.
\end{itemize}
\section*{Zahlungsmodalitäten}
\paragraph{} Die monatlichen Kosten sind im Voraus auf das Konto
zu überweisen. Beginnend ab dem ersten vollen Monat nach Anschlussschaltung.\\
Die Anschlusskosten sind ab der Anschlussschaltung zu zahlen.\\
\\
Monatliche Kosten: \textbf{20 Euro}
\\
Einmalige Anschlusskosten: \textbf{50 Euro}
\\
Übergabeort:
\\
\\
\Qline{\textwidth}
\\
Reudnetz w.V.\\
IBAN: DE27 4306 0967 1188 3419 00\\
GLS Bank Bochum
\section*{Nutzerdaten}
Gemäß des Telekommunikationsgesetztes §111 erheben wir folgende Daten:\\
Vorname, Name:\\
Anschrift:\\
Geburtsdatum:\\
Email-Adresse:\\
Der Vertrag tritt am \Qline{3cm} in Kraft.\\
Ich habe die Widerrufsbelehrung und den Inhalt des Vertrages gelesen und stimme dem zu:
\\
\\
\\
\begin{tabular}{ l l l }
\Qline{0.18\textwidth} & \Qline{0.36\textwidth} & \Qline{0.36\textwidth}\\
Datum & Unterschrift des Nutzenden & Unterschrift des Anbieters \\
%\Qline{0.45\textwidth} & \Qline{0.45\textwidth}\\
%Unterschrift des Anbieters & Datum \\
\end{tabular}
\thispagestyle{body}
\section*{Widerrufsbelehrung}
\subsection*{Widerrufsrecht}
Sie haben das Recht, binnen vierzehn Tagen ohne Angabe von Gründen diesen Vertrag zu widerrufen. Die Widerrufsfrist beträgt vierzehn Tage ab dem Tage des Vertragsabschlusses.\\
Um Ihr Widerrufsrecht auszuüben, müssen Sie uns (Reudnetz w.V, Wurzner Str.2, 04315 Leipzig) mittels einer formlosen eindeutigen Erklärung (z.B. ein mit der Post versandter Brief oder E-Mail) über Ihren Entschluss, diesen Vertrag zu widerrufen, informieren.\\
Zur Wahrung der Widerrufsfrist reicht es aus, dass Sie die Mitteilung über die Ausübung des Widerrufsrechts vor Ablauf der Widerrufsfrist absenden.\\
\textbf{Folgen des Widerrufs:}
Wenn Sie diesen Vertrag widerrufen, haben wir Ihnen alle Zahlungen, die wir von Ihnen erhalten haben, einschließlich der Lieferkosten (mit Ausnahme der zusätzlichen Kosten, die sich daraus ergeben, dass Sie eine andere Art der Lieferung als die von uns angebotene, günstigste Standardlieferung gewählt haben), unverzüglich und spätestens binnen vierzehn Tagen ab dem Tag zurückzuzahlen, an dem die Mitteilung über Ihren Widerruf dieses Vertrags bei uns eingegangen ist. Für diese Rückzahlung verwenden wir dasselbe Zahlungsmittel, das Sie bei der ursprünglichen Transaktion eingesetzt haben, es sei denn, mit Ihnen wurde ausdrücklich etwas anderes vereinbart; in keinem Fall werden Ihnen wegen dieser Rückzahlung Entgelte berechnet.\\
Haben Sie verlangt, dass die Dienstleistung während der Widerrufsfrist beginnen soll, so haben Sie uns einen angemessenen Betrag zu zahlen, der dem Anteil der bis dahin erbrachten Dienstleistungen im Vergleich zum Gesamtumfang der im Vertrag vorgesehenen Dienstleistung entspricht.
\end{document}

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

View file

@ -0,0 +1,21 @@
digraph angriffsdiagramm {
rankdir = BT
node [shape="rect"]
"Fernmeldegeheimnis verletzen"
"Stören"
"Personenbezogene Daten erlangen"
node [shape=""]
"in Gebäude eindringen" -> "in Kabelschacht eindringen" -> "Kernnetz infiltrieren" -> "Fernmeldegeheimnis verletzen"
"in Kabelschacht eindringen" -> "Kernnetz stören" -> "Stören"
"in Gebäude eindringen" -> "in Räumlichkeit eindringen" -> "in Technikschrank eindringen" -> "Kernnetz infiltrieren"
"in Technikschrank eindringen" -> "Kernnetz stören"
"in Technikschrank eindringen" -> "INP stören" -> "Stören"
"in VDS-Gebäude eindringen" -> "in VDS-Räumlichkeiten eindringen" -> "in VDS-Technikschränk eindringen" -> "verschlüsselung überwinden" -> "Personenbezogene Daten erlangen"
node [style="dotted"]
"in Endnutzer-Gebäude eindringen" -> "ENP Stören" -> "Stören" [style="dotted"]
"in Endnutzer-Gebäude eindringen" -> "ENP Infiltrieren" -> "Fernmeldegeheimnis verletzen" [style="dotted"]
node [style=""]
}

View file

@ -0,0 +1,130 @@
Systeme:
* Router
* Endkundenrouter
* Kernnetz
* VDS-Einrichtung
Szenarien:
* Störungen des Netzwerkes
* Aneignung schützenswerter Daten
personenbezogen
Fermeldegeheimnis
* Missbräuchliche Nutzung der Netzinfrastruktur zum Angriff weiterer Ziele (Vektor)
* Manipulation des Datenverkehrs
### start text
Als Hackerangriffe sind hier Bedrohungen der Systemsicherheit durch physisch von System getrennte Personen definiert, die durch Ausnutzung der imanenten Eingeschaften des Netzes und/oder seiner Komponenten, widerrechtlich für ihre Zwecke nutzen.
Motivation kann dabei finanzieller oder informationeller Vorteil aber auch spielerischer Ehrgeiz sein.
Darunter fallen sowohl gezielte Angriffe, an denen Menschen aktiv arbeiten und diese an unsere Infrastruktur anpassen, wie auch weniger gezielte Angriffe, die in Form von universellen Viren und Trojanischen Pferden im Netz kursieren um Computer für die Anwendungen des böswilligen Programierers zu versklaven.
====== Gesamtsystematische Betrachtungen ======
===== Schutzziele =====
==== Schutz des Fernmeldegeheimnisses ====
Der gesamtsystematische Schutz des Fernmeldegeheimnisses besteht im Schutz der einzelnen Systemkomponenten.
==== Schutz Personenbezogener Daten ====
Der gesamtsystematische Schutz personenbezogener Daten besteht im Schutz der einzelnen Systemkomponenten.
==== Schutz gegen Störungen ====
Als Infrastuktureinrichtung muss das gesamte System möglichst unanfällig gegenüber Störungen einzelner Systemkomponenten sein.
==== Schutz gegen Nutzung als Angriffsvektor ====
Der gesamtsystematische Schutz personenbezogener Daten besteht im Schutz der einzelnen Systemkomponenten.
===== Sicherung gegen Störung
Alle kritischen Systemkomponenten sind redundant angelegt.
===== Sicherung gegen Fremdkontrolle
Vergangene Fälle, in denen Unternehmen nach Bekanntwerden von Sicherheitsdefiziten ihrerseits, durch Ignoration und Strafandrohung, Ausnutzung oder Veröffentlichung des Sicherheitsdefizites provoziert haben, legen nahe ein Kommuninationsorgan für solche Fälle anzulegen.
Als einfache strukturelle Maßnahme, Sicherheitsrisiken zu minimieren, richten wir eine Kommunikationsschnittstelle an die sich Personen wenden können,
die einen Sicherheitsmangel entdeckt haben und fordern explizit dazu auf, uns über derartige Vorfälle zu informieren.
====== Internetseitiger Netzabschlusspunkt ======
===== Schutzziele =====
==== Schutz des Fernmeldegeheimnisses ====
Erlangt ein Angreifer Kontrolle über einen INP so kann er den gesamten unverschlüsselten Internetverkehr aller Nutzenden mitlesen und manipulieren. Schutzbedarf.
==== Schutz Personenbezogener Daten ====
Der INP verarbeitet keine personenbezogenen Daten.
==== Schutz gegen Störungen ====
Bei Störung des INP ist die Netzwerkanbindung aller Nutzenden beeinträchtigt. Dies ist ein kritsisches Szenario, das besonderer Schutzmaßnahmen bedarf.
==== Schutz gegen Nutzung als Angriffsvektor ====
Erlangt ein Angreifer Kontrolle über den INP so kann er diesen verwenden, um auf andere Komponenten des Kernetzes störend oder manipulativ einzuwirken. Genauso kann er den INP als Angriffswerkzeug für weitere Ziele im Internet verwenden. Schutzbedarf.
===== Sicherung gegen Störung
Aus dem Internet kann der INP Ziel von Angriffen durch extrem zahlreiche Anfragen (AdezA) werden. Gegen diese können wir uns nur bedingt schützen. Durch redundante Anbindungen um große Bandbreite lässt der Aufwand für eine derartige Störung stark erhöhen. Gleichzeitig ist das Risiko, eines solchen Angriffs eher gering und hinterlässt über die Dauer des Angriffes hinaus keine nachhaltigen Schäden. Die Einschränkung der Verbindungsqualität wärend eines sochen Angriffs ist jedoch mit [] auf ein Minimum zu reduzieren.
===== Sicherung gegen Fremdkontrolle
Auf dem INP, läuft eine auf die Anwendung zugeschnittene Softwareauswahl, die über Signaturen eindeutig für Sicherheitsaudits verfügbarem Quellcode zugeordnet werden kann. Durch einen großen Umfang an Software ist auch die Anzahl an möglichen Fehlerquellen und Angriffvektoren groß. Eine Gegenmaßnahme stellt die Beschränkung auf notwendige Programme dar, die stets mit aktuellen Sicherheitsaktualisierungen versorgt werden. Durch ein Netzwerkstrennendes Datensicherheitselement werden mögliche Zugriffe auf das Kernnetz und die darin enthaltenen Geräte gesteuert und reglementiert.
====== Endverbraucherseitiger Netzabschlusspunkt ======
===== Schutzziele =====
==== Schutz des Fernmeldegeheimnisses ====
Erlangt ein Angreifer Kontrolle über einen ENP so kann er den gesamten unverschlüsselten Internetverkehr eines Nutzenden mitlesen und manipulieren. Schutzbedarf.
==== Schutz Personenbezogener Daten ====
Der ENP verarbeitet keine personenbezogenen Daten.
==== Schutz gegen Störungen ====
Bei Störung des ENP ist die Netzwerkanbindung eines einzelnen Nutzenden beeinträchtigt. Dies ist zu vermeiden, bedeutet aber nur geringen Schutzbedarf.
==== Schutz gegen Nutzung als Angriffsvektor ====
Erlangt ein Angreifer Kontrolle über einen ENP so kann er diesen verwenden, um auf andere Komponenten des Kernetzes störend oder manipulativ einzuwirken. Genauso kann er den ENP als Angriffswerkzeug für weitere Ziele im Internet verwenden. Schutzbedarf.
===== Sicherung gegen Störung
===== Sicherung gegen Fremdkontrolle
====== Kernnetz ======
===== Schutzziele =====
==== Schutz des Fernmeldegeheimnisses ====
Der Schutz des Fernmeldegeheimnisses ist für das Kernnetz relevant, da alle Endnutzerdatenverbindungen durch dieses laufen.
==== Schutz Personenbezogener Daten ====
Das Kernnetz verarbeitet keine personenbezogenen Daten.
==== Schutz gegen Störungen ====
Da ein ein größerer Ausfall des Kernnetzes auch einen größeren Ausfall, der über es zur Verfügung gestellten Dienstleistung nach sich ziehen würde, ist ein Schutz gegen Störungen relevant.
==== Schutz gegen Nutzung als Angriffsvektor ====
Erlangt ein Angreifer Kontrolle über Geräte des Kernnetzes so kann er diese verwenden, um auf andere Komponenten des Kernnetzes störend oder manipulativ einzuwirken. Genauso kann er die kontrollierten Komponenten als Angriffswerkzeug für weitere Ziele im Internet verwenden. Schutzbedarf.
===== Sicherung gegen Störung
===== Sicherung gegen Fremdkontrolle
Auf den Geräten des Kernenetzes, speziel den Hauptroutern, läuft eine auf die Anwendung zugeschnittene Softwareauswahl, die über Signaturen eindeutig für Sicherheitsaudits verfügbarem Quellcode zugeordnet werden kann. Durch einen großen Umfang an Software ist auch die Anzahl an möglichen Fehlerquellen und Angriffvektoren groß. Eine Gegenmaßnahme stellt die Beschränkung auf notwendige Programme dar, die stets mit aktuellen Sicherheitsaktualisierungen versorgt werden. Durch ein Netzwerkstrennendes Datensicherheitselement werden mögliche Zugriffe auf das Kernnetz und die darin enthaltenen Geräte gesteuert und reglementiert.
====== VDS-Einrichtung ======
===== Schutzziele =====
==== Schutz des Fernmeldegeheimnisses ====
Es läuft kein Netzwerkverkehr durch die VDS-Einrichtung, kein Schutzbedarf.
==== Schutz Personenbezogener Daten ====
Die VDS-Einrichtung verarbeitet personenbezogene Daten, damit muss sie besonders vor unauthorisiertem Zugriff geschützt werden.
==== Schutz gegen Störungen ====
Auch wenn der Betrieb einer VDS-Einrichtung für den Netzbetrieb vollkommen unbedeutend ist, ist der Nichtbetrieb mit gesetzlich unter Strafe gestellt, so dass wir verpflichtet sind die VDS-Einrichtung gegen Störungen zu sichern.
==== Schutz gegen Nutzung als Angriffsvektor ====
Das die VDS-Einrichtung nur einseitig mit dem Kernnetz verbunden ist, kann sie nicht als Engriffsvektor benutzt werden.
===== Sicherung gegen Störung
===== Sicherung gegen Fremdkontrolle
Durch öffentlich Dokumentation, der von uns eigensetzen Technik glauben wir einen Teil der
Auf den Geräten des Kernenetzes, speziel den Hauptroutern, läuft eine auf die Anwendung zugeschnittene Softwareauswahl, die über Signaturen eindeutig für Sicherheitsaudits verfügbarem Quellcode zugeordnet werden kann. Durch einen großen Umfang an Software ist auch die Anzahl an möglichen Fehlerquellen und Angriffvektoren groß. Eine Gegenmaßnahme stellt die Beschränkung auf notwendige Programme dar, die stets mit aktuellen Sicherheitsaktualisierungen versorgt werden. Durch ein Netzwerkstrennendes Datensicherheitselement werden mögliche Zugriffe auf das Kernnetz und die darin enthaltenen Geräte gesteuert und reglementiert.
Alle Geräte des Kernnetzes sind in Einrichtungen untergebracht, die mehrere Ebenen von physikalischem Schutz ermöglichen. Sowohl die Räume wir auch die Geräte sind mit jeweils seperat verschlossen, Schlüssel sind nur bei den zugangsberechtigeten Personen vorhanden. Darüber hinaus verfügen die Eingesetzen Geräte, oder deren Schränke über eine elektronische Erkennung von Eindringlingen.
Darüber hinaus begegnen wir der Gefahr von physischem Datendiebstahl durch die Verwendung von aktueller Verschlüsseltungstechnologie auf allen Datenspeichern nach BSI TR-02102-1.
Gegen Angriffe durch extrem zahlreiche Anfragen (AdezA) können wir uns nur bedingt schützen. Durch redundante Anbindungen um große Bandbreite lässt der Aufwand für eine derartige Störung start erhöhen. Gleichzeitig ist das Risiko, eines solchen Angriffs eher gering und hinterlässt über die Dauer des Angriffes hinaus keinen nachhaltigen Schäden. Die Einschränkung der Verbindungsqualität wärend eines sochen Angriffs ist jedoch mit [] auf ein Minimum zu reduzieren.
Vergangene Fälle, in denen Unternehmen nach Bekanntwerden von Sicherheitsdefiziten ihrerseits, durch Ignoration und Strafandrohung, Ausnutzung oder Veröffentlichung des Sicherheitsdefizites provoziert haben, legen nahe ein Kommuninationsorgan für solche Fälle anzulegen.
Als einfache strukturelle Maßnahme, Sicherheitsrisiken zu minimieren, richten wir eine Kommunikationsschnittstelle an die sich Personen wenden können,
die einen Sicherheitsmangel entdeckt haben und fordern explizit dazu auf, uns über derartige Vorfälle zu informieren.
### end text
Trojaner, Viren, Rootkits
DDOS
WLAN-Störsender
Im MOment kann uns Jemand hacken, in dem er eine Antenne vom Dach pflückt, uns das WLAN-Passwort über die serielle Konsole extrahiert. Evtl. kommt man so auch ans Antennenpasswort.
Kein Passwort reuse
SOftware SIgnaturen
Verfügbarer Quellcode für Sicherheitsaudits
Exakt auf die Anwendungen zugeschnittene Softwareauswahl (minimale Systeme)
Intrusion Detection
Verschlüsselung nach aktuellem Stand der Technik
strukturell:
Transparente Vorgehensweise
Kontrollorgan für Entscheidungen
Keine Sicherheit durch Verschleierung
Kommunikationschnittstelle für MEnschen, die Fehler uns auf gemachte Fehler aufmerksam machen.

Binary file not shown.

After

Width:  |  Height:  |  Size: 45 KiB

View file

@ -0,0 +1,186 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="96.26902mm"
height="96.339195mm"
viewBox="0 0 341.1107 341.35935"
id="svg2"
version="1.1"
inkscape:version="0.92.0 r15299"
sodipodi:docname="logo.svg">
<defs
id="defs4">
<filter
id="filter4574"
inkscape:label="Clean Edges"
style="color-interpolation-filters:sRGB">
<feGaussianBlur
id="feGaussianBlur4576"
result="blur"
stdDeviation="0.455132" />
<feComposite
id="feComposite4578"
result="composite1"
operator="in"
in2="blur"
in="SourceGraphic" />
<feComposite
id="feComposite4580"
result="fbSourceGraphic"
operator="in"
in2="composite1"
in="composite1" />
<feColorMatrix
id="feColorMatrix4582"
values="0 0 0 -1 0 0 0 0 -1 0 0 0 0 -1 0 0 0 0 1 0"
in="fbSourceGraphic"
result="fbSourceGraphicAlpha" />
<feGaussianBlur
in="fbSourceGraphic"
result="blur"
stdDeviation="0.46"
id="feGaussianBlur4584" />
<feComposite
result="composite1"
operator="in"
in="fbSourceGraphic"
in2="blur"
id="feComposite4586" />
<feComposite
result="composite2"
operator="in"
in="composite1"
in2="composite1"
id="feComposite4588" />
</filter>
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="0.25"
inkscape:cx="-82.455931"
inkscape:cy="-36.620536"
inkscape:document-units="px"
inkscape:current-layer="layer1"
showgrid="false"
inkscape:window-width="954"
inkscape:window-height="522"
inkscape:window-x="960"
inkscape:window-y="528"
inkscape:window-maximized="0"
fit-margin-top="0"
fit-margin-left="0"
fit-margin-right="0"
fit-margin-bottom="0" />
<metadata
id="metadata7">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Ebene 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(-247.55145,-134.3622)">
<path
sodipodi:type="star"
style="opacity:1;fill:none;fill-opacity:1;stroke:#37c8ab;stroke-width:2.4000001;stroke-miterlimit:4;stroke-dasharray:none"
id="path4142"
sodipodi:sides="7"
sodipodi:cx="413.86658"
sodipodi:cy="309.83688"
sodipodi:r1="174.64433"
sodipodi:r2="157.34911"
sodipodi:arg1="1.0135008"
sodipodi:arg2="1.4622997"
inkscape:flatsided="true"
inkscape:rounded="0"
inkscape:randomized="0"
d="M 506.23472,458.05554 355.57516,474.46602 248.81023,366.90741 266.33609,216.37353 394.95542,136.21946 537.81523,186.80285 587.33918,330.03338 Z"
inkscape:transform-center-x="-4.2081291"
inkscape:transform-center-y="-4.4941427" />
<g
id="g4437"
transform="matrix(0.31100177,0,0,0.31100177,631.46715,393.33005)">
<path
style="fill:#f3871e"
d="m -826.44833,139.5583 a 129.87912,129.87912 0 0 0 -8.7657,-2.77082 129.87912,129.87912 0 0 0 -12.6686,-2.84149 129.87912,129.87912 0 0 0 -12.8889,-1.56213 129.87912,129.87912 0 0 0 -0.8046,-0.0164 c -3.1231,24.77513 -4.3501,34.48724 -7.124,56.48659 a 73.187004,73.187004 0 0 1 3.9279,0.0816 73.187004,73.187004 0 0 1 7.2636,0.87936 73.187004,73.187004 0 0 1 7.1374,1.60148 73.187004,73.187004 0 0 1 4.9404,1.56074 73.187004,73.187004 0 0 1 6.7608,2.79005 73.187004,73.187004 0 0 1 6.4504,3.45293 73.187004,73.187004 0 0 1 6.0726,4.07934 73.187004,73.187004 0 0 1 2.2059,1.82442 c 9.3896,-15.04875 18.4705,-29.59239 30.1141,-48.32326 a 129.87912,129.87912 0 0 0 -9.1746,-6.16417 129.87912,129.87912 0 0 0 -11.4474,-6.12612 129.87912,129.87912 0 0 0 -11.9993,-4.95212 z"
id="path4378-6"
inkscape:connector-curvature="0"
inkscape:export-xdpi="300"
inkscape:export-ydpi="300" />
<path
style="fill:#f3871e"
d="m -785.10493,23.213055 a 253.35071,253.35071 0 0 0 -17.0999,-5.40283 253.35071,253.35071 0 0 0 -24.7116,-5.54152 253.35071,253.35071 0 0 0 -19.2175,-2.3310403 c -3.9959,31.7155503 -4.2149,33.3977703 -7.8616,62.3308603 a 190.45009,190.45009 0 0 1 16.3986,1.98643 190.45009,190.45009 0 0 1 18.5753,4.1673 190.45009,190.45009 0 0 1 12.8552,4.06029 190.45009,190.45009 0 0 1 17.5958,7.26212 190.45009,190.45009 0 0 1 16.7847,8.9845 190.45009,190.45009 0 0 1 9.9233,6.664445 c 11.6356,-18.755485 20.903,-33.623055 33.1579,-53.406105 a 253.35071,253.35071 0 0 0 -10.6648,-7.16213 253.35071,253.35071 0 0 0 -22.3281,-11.95136 253.35071,253.35071 0 0 0 -23.4073,-9.66096 z"
id="path4372-7"
inkscape:connector-curvature="0"
inkscape:export-xdpi="300"
inkscape:export-ydpi="300" />
<path
style="fill:#f3871e"
d="m -742.59223,-96.422815 a 380.3168,380.3168 0 0 0 -25.6697,-8.112335 380.3168,380.3168 0 0 0 -37.0942,-8.3187 380.3168,380.3168 0 0 0 -24.6851,-2.99093 c -2.5444,19.613315 -5.2725,40.800085 -8.1725,63.462015 a 316.25134,316.25134 0 0 1 21.9785,2.66338 316.25134,316.25134 0 0 1 30.8465,6.91943 316.25134,316.25134 0 0 1 21.3453,6.74351 316.25134,316.25134 0 0 1 29.2206,12.06046 316.25134,316.25134 0 0 1 27.8697,14.9175597 316.25134,316.25134 0 0 1 11.3811,7.64263 c 11.6204,-18.7851397 22.6417,-36.4862797 33.7222,-54.4284997 a 380.3168,380.3168 0 0 0 -12.0853,-8.11674 380.3168,380.3168 0 0 0 -33.5176,-17.94018 380.3168,380.3168 0 0 0 -35.1395,-14.5016 z"
id="path4366-5"
inkscape:connector-curvature="0"
inkscape:export-xdpi="300"
inkscape:export-ydpi="300" />
<path
style="fill:#f3871e"
d="m -699.29863,-218.2561 a 509.61255,509.61255 0 0 0 -34.3957,-10.86695 509.61255,509.61255 0 0 0 -49.7066,-11.14856 509.61255,509.61255 0 0 0 -30.1491,-3.65571 c -1.988,14.98295 -5.7517,44.90719 -8.1712,63.46452 a 445.54709,445.54709 0 0 1 27.443,3.32632 445.54709,445.54709 0 0 1 43.456,9.74614 445.54709,445.54709 0 0 1 30.0717,9.50245 445.54709,445.54709 0 0 1 41.1679,16.98995 445.54709,445.54709 0 0 1 39.2645,21.01669 445.54709,445.54709 0 0 1 12.778,8.58257 c 10.0829,-16.36784 25.7488,-41.54514 33.6709,-54.46535 a 509.61255,509.61255 0 0 0 -13.4309,-9.01982 509.61255,509.61255 0 0 0 -44.913,-24.03748 509.61255,509.61255 0 0 0 -47.0855,-19.43477 z"
id="path4333-3"
inkscape:connector-curvature="0"
inkscape:export-xdpi="300"
inkscape:export-ydpi="300" />
<path
inkscape:connector-curvature="0"
id="path4140-5"
d="m -734.71681,-280.83421 15.09004,-40.52055 -21.67743,-48.96731 c -11.9226,-26.93203 -26.18703,-58.74161 -31.69862,-70.6879 l -10.0212,-21.72058 44.86717,-120.47962 44.86717,-120.47963 -4.13631,-8.5875 c -5.32376,-11.05294 -5.9206,-19.42474 -2.11975,-29.73558 10.88415,-29.52582 52.16144,-29.95002 63.36699,-0.65124 3.51998,9.20351 3.16969,18.22371 -1.05968,27.28744 -3.89968,8.35725 -9.24607,13.5005 -18.02897,17.34411 l -6.50939,2.84856 -42.90823,115.21938 -42.90822,115.21937 31.66807,70.73325 31.66798,70.73322 -17.54639,47.15371 -17.54639,47.15371 -15.2283,-5.67109 -15.2283,-5.67109 15.09004,-40.52056 z m 47.09491,6.06355 18.84285,-50.5978 -20.90349,-45.9491 -20.90349,-45.9491 24.56469,-65.96238 24.5647,-65.96239 -3.83961,-9.33005 c -6.33314,-15.38939 -3.43988,-29.68909 8.17612,-40.40847 9.69568,-8.94745 21.35953,-11.00081 34.64614,-6.09933 6.91301,2.55032 9.2458,4.06176 13.41242,8.69069 16.03206,17.81062 8.79288,46.60034 -13.89991,55.27941 l -7.20199,2.75443 -22.42144,60.2072 -22.42143,60.20719 20.76286,45.43127 20.76287,45.43127 -21.26377,57.09858 -21.26377,57.09856 -15.22831,-5.67109 -15.2283,-5.67109 z m 47.16063,9.46881 21.48999,-57.70601 24.90795,-11.36679 24.90795,-11.36679 38.94377,-104.5738 38.94377,-104.57379 -1.81767,-2.99813 c -7.25844,-11.97232 -8.38604,-21.34392 -3.98878,-33.15167 12.84237,-34.48498 62.76375,-27.5514 65.68939,9.12358 0.35329,4.42827 -0.37424,8.51631 -2.56015,14.38604 -3.8011,10.2069 -9.85046,16.64638 -19.26107,20.5033 l -6.65889,2.72908 -41.81802,111.34259 -41.81793,111.34263 -24.94227,11.51252 -24.94218,11.51256 -19.05462,51.16645 -19.05462,51.16643 -15.2283,-5.67109 -15.22831,-5.67109 z"
style="fill:#8ca23b"
inkscape:export-xdpi="300"
inkscape:export-ydpi="300" />
</g>
<path
style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#37c8ab;stroke-width:1.20000005;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 266.5,215.8622 111,7.5 18,-86.5 111,321 -129,-234.5 -128,142.5 256,90.5 30.5,-269"
id="path4444"
inkscape:connector-curvature="0" />
<path
style="fill:#80ffe6;fill-opacity:0.25112107;fill-rule:evenodd"
d="m 267.5,216.3622 109.5,8 19,-90 z"
id="path4446"
inkscape:connector-curvature="0" />
<path
style="fill:#2affd5;fill-opacity:0.26008971;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 250,364.3622 127.5,-140.5 -111.5,-8 z"
id="path4450"
inkscape:connector-curvature="0" />
<path
style="fill:#2affd5;fill-opacity:0.29147985;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 250,365.8622 255.5,90 -129.5,-233 z"
id="path4452"
inkscape:connector-curvature="0" />
<path
style="fill:#2affd5;fill-opacity:0.29147985;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 249.5,366.3622 105.5,108 151,-16.5 z"
id="path4454"
inkscape:connector-curvature="0" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 100 KiB

View file

@ -0,0 +1,153 @@
Content-Type: text/x-zim-wiki
Wiki-Format: zim 0.4
Creation-Date: 2016-09-02T10:39:18+02:00
====== sicherheitskonzept ======
Created Freitag 02 September 2016
Systeme:
* Router
* Endkundenrouter
* Kernnetz
* VDS-Einrichtung
Angriffsszenarien:
* Sabotage
* Innen
* Außen
* ??
Außerdem konzeptuelle netzansicht
{{./diagram.png?type=diagram}}
====== Sicherung gegen Sabotage von Innen ======
Für eine Sabotage von Innen muss ein Saboteur in die Organisation eingeführt werden.
Dieser könnte zwei Ziele verfolgen, direkte Sabotage der operativen Systeme, oder Lähmung der Organisation.
Reudnetz w.V. ist in seiner Organisationsstruktur als Verein mit offenen Anmeldungen gegenüber der Einführung von Saboteuren besonders gefährdet.
Zur direkten Sabotage muss der Saboteur Zugang zu Zugangsdaten zu den Operativen Systemen erlangen.
Dies wird verhindert, indem diese Zugangsdaten nur einer sehr begrenzten Personengruppe zugänglich gemacht werden, diese nur erweitert wird, wenn es aufgrund des Arbeitsaufwandes unabdingbar notwendig ist und alle Zugangsdaten ausgetauscht werden, sobald eine der berechtigten Personen ausgetauscht wird.
Im April 2016 beträgt die Größe der berechtigten Personengruppe Zwei, in Zahlen 2 Personen.
Zur indirekten Sabotage durch lähmung der Organisation ist es für den Saboteur ausreichend an Organisationstreffen und Mitgliederversammlungen teilzunehmen, wozu er bereits durch eine simple Mitgliedschaft berechtigt ist.
(Dieses Angriffsszenario ist allerdings irrelevant, da die genannten treffen plenarischer form stattfinden, also quasi selbst-lähmend sind)
Die Gegenmasnahme setzt an der Tatsache an, dass das Verhalten des Saboteurs sich zumindest subtil von dem eines konstruktiven Mitglieds unterscheiden muss. Sollte irgend einem Teilnehmer während einer Mitgleiderversammlung oder eines Organisationstreffens ein solches Verhalten auffallen, wird dieses einem Vorstandsmitglied gemeldet, welches dann Ermittlungen einleitet. Dieses Verfahren ist in der Geschäftsordnung geregelt.
Die Mitglieder werden basierend auf Geheimdienstdokumenten über sabotierende Verhaltensmuster aufgeklärt.
====== Internetseitiger Netzabschlusspunkt ======
===== Schutzziele =====
==== Schutz des Fernmeldegeheimnisses ====
Der Schutz des Fernmeldegeheimnisses ist für den internetseitigen Netzabschlusspunkts (in folge INP) relevant,
da der gesamte Datenverkehr, welcher nicht zwischen zwei Netzteilnehmern abläuft durch selbigen läuft.
==== Schutz Personenbezogener Daten ====
Der INP verarbeitet keine personenbezogenen Daten, kein Schutzbedarf.
==== Schutz gegen Störungen ====
Da der INP eine kritische Komponente darstellt, deren Ausfall das Netz stark negativ beeinträchtigen würde ist eine Betrachtung des Schutzes gegen Störungen relevant.
===== Sicherung gegen Sabotage von Innen =====
Den Gesamtsystemischen Gegenmaßnahmen und Analysen ist nichts hinzuzufügen
===== Sicherung gegen Sabotage von Außen/Angriffe =====
Um Sabotage von innen oder einen terroristischen Angriff auf die Infrastruktur erfolgreich durchzuführen, muss der Angreifer direkten physischen Zugriff auf den INP erlangen.
Der INP befindet sich inerhalb eines abschließbaren Technikschranks.
Der Technikschrank befindet sich innerhalb eines abgeschlossenen Raumes.
Der Raum befindet sich innerhalb eines Stadthauses.
Um physichen Zugriff auf den INP zu erlangen, muss zunächst in den Raum eingedrungen werden.
Dies kann geschehen, indem die Tür aufgebrochen wird, oder der Angreifer Zugriff auf den Schlüssel erhällt.
Das Aufbrechen der Türe ist hinreichend erschwert, da das Stadthaus, in dem sich der Raum befindet ganzjährlich bewohnt ist, und sich somit schweres Gerät, wie es zum Aufbrechen der Türe notwendig wäre nicht unbemerkt antransportieren lässt. Auch die Geräuschentwickung erschwert ein unbemerktes Eindringen.
Das Erlangen eines Schlüssels wird verhindert indem alle Schlüssel bei Vorstandsmitgliedern verbleiben, und nur für konkrete Arbeiten an die Ausführenden vergeben werden.
Ein Angreifer, der in den Raum eingedrungen ist, muss weiter in den Technikschrank einbrechen.
Die Ausführungsmöglichkeiten und Gegenmaßnahmen sind die Gleichen wie zur Verhinderung eines Eindringens in den Raum.
Zusatzlich verfügt der Technikschrank über einen elektronischen Eindringlingsalarm, der über Vorfälle alarmiert.
// alarmanlage??
====== Endverbraucherseitiger Netzabschlusspunkt ======
===== Schutzziele =====
==== Schutz des Fernmeldegeheimnisses ====
Der Schutz des Fernmeldegeheimnisses ist für den endverbraucherseitigen Netzabschlusspunkts (in folge ENP) relevant, da der Datenverkehr eines Endverbrauchers über diesen fließt.
==== Schutz Personenbezogener Daten ====
Der ENP verarbeitet keine personenbezogenen Daten, kein Schutzbedarf.
==== Schutz gegen Störungen ====
Da durch eine Störung lediglich die Nutzung durch einen einzigen Endverbraucher eingeschränkt wird, ist ein Schutz gegen Störungen notwendig, aber nicht kritisch.
===== Sicherung gegen Sabotage von Innen =====
Den gesamtsystemischen Analysen und Gegenmaßnahmen ist nichts hinzuzufügen.
===== Sicherung gegen Sabotage von Außen =====
Hier werden nur eindringende Szenarien betrachtet, die darauf abzielen das Fernmeldegeheimnis zu verletzen. Für Szenarien, in welchen lediglich Störungen das Ziel sind siehe "Sicherung gegen Angriffe".
Um das Fernmeldegeheimnis zu verletzen muss der Saboteur Zugriff auf den ENP erhalten.
Dieser ist grundsätztlich nicht speziell gesichert, steht allerdings nicht im öffentlichen Raum, sondern in den Räumlichkeiten des Endnutzers, wodurch ein Zugriff einen Einbruch vorraussetzen würde.
Um die Auswirkungen eines potentiellen Zugriffs zu minimieren, wird die Erreichbarkeit aller ENPs permanent Überwacht und Eindringlingserkennungssysteme eingesetzt.
Außerdem werden alles eingesetzten Transportwegsverschlüsselungsschlüssel zwischen den ENPs und dem Kernnetz regelmäßig ausgetauscht.
===== Sicherung gegen Angriffe =====
Um den ENP Funktionsunfähig zu machen sind viele Angriffsszenarien denkbar, vom einfachen Eindringen und gezielt Zerstören bis zu einem vollständigen Angriff, bei welchem Brandsätze und/oder Explosivstoffe zur Zerstörung des eingestzt Standpunkts werden.
Die Gegenmaßnahme ist nicht eine Verhinderung dieser Zerstörungen, sondern eine schnelle Wiederherstellung der Funktionalität, indem ein ständiger Vorrat an ENPs gehalten wird, aus dem zerstörte ENPs innerhalb eines Werktages ersetzt werden können.
====== Kernnetz ======
===== Schutzziele =====
==== Schutz des Fernmeldegeheimnisses ====
Der Schutz des Fernmeldegeheimnisses ist für das Kerrnnetz relevant, da alle Endnutzerdatenverbindungen durch dieses laufen.
==== Schutz Personenbezogener Daten ====
Das Kernnetz verarbeitet keine personenbezogenen Daten, kein Schutzbedarf
==== Schutz gegen Störungen ====
Da ein ein größerer Ausfall des Kernnetzes auch einen größeren Ausfall der über es zur Verfügung gestellten Dienstleistung nach sich ziehen würde, ist ein Schutz gegen Störungen relevant.
===== Sicherung gegen Sabotage von Innen =====
Den gesamtsystemischen Analysen und Gegenmaßnahmen ist nichts hinzuzufügen.
===== Sicherung gegen Sabotage von Außen =====
Hier werden nur eindringende Szenarien betrachtet, die darauf abzielen das Fernmeldegeheimnis zu verletzen. Für Szenarien, in welchen lediglich Störungen das Ziel sind siehe "Sicherung gegen Angriffe".
Um das Fernmeldegeheimnis zu verletzen muss der Saboteur Zugriff auf das Kernnetz haben. Dazu müsste er mehrere physische Abgrenzungen durchdringen, von außen nach innen in ein Haus eindringen, in eine der abgeschlossenen Räumlichkeiten in denen das Kernnetz untergebracht ist, eindringen, in eine der abgeschlossenen Technikschränke, die die Geräte beinhalten, eindringen. Da das Kernnetz sich in einem ganzjährlich bewohnten Stadthaus befindet ist ein Einbruch so gut wie unmöglich unbemerkt ausführbar. Selbst wenn ein Eindringen in das Haus an für sich gelingt, muss das schwere Gerät, welches notwendig ist, um die Türen und Schränke aufzubrechen unbemerkt Transportiert werden, und danach die Türen und Schränke ohne große Geräuschentwicklung aufgebrochen werden, was sehr unwahrscheinlich ist.
Alternativ wäre es auch möglich die Schlüssel und Elektronischen Zugangskarten für alle Ebenen zu erlangen und diese zu nutzen um gewaltfrei einzudringen. Dies wird verhindert, indem die Schlüssel nur bei Vorständen liegen, und nur für konkrete Arbeitsvorgänge an authorisiertes Personal ausgegeben werden.
Sollte ein Eindringen dennoch erfolgreich sein, müsste der Saboteur eine Wanze an ein Kabel anbringen, Entweder in der Mitte eines Kabels, wo sich das Eindringen in die Technikschränke und Räumlichkeiten Erübrigen würde und statt dessen ein Eindringen in Kabelschächte notwendig wäre, oder zwischen eine Büchse und ein Kabel.
Beide Eingriffe würden jedoch in der Netzwerküberwachung auffallen, was eine Untersuchung des Kernnetzes, und eine Entfernung der Wanze nach sich ziehen würde.
// Transportwegsverschlüsselung auch auf lan?
===== Sicherung gegen Angriffe =====
//bleh
====== VDS-Einrichtung ======
===== Schutzziele =====
==== Schutz des Fernmeldegeheimnisses ====
Es läuft kein Netzwerkverkehr durch die VDS-Einrichtung, kein Schutzbedarf.
==== Schutz Personenbezogener Daten ====
Die VDS-Einrichtung verarbeitet personenbezogene Daten, damit muss sie besonders vor unauthorisiertem Zugriff geschützt werden.
==== Schutz gegen Störungen ====
Auch wenn der Betrieb einer VDS-Einrichtung für den Netzbetrieb vollkommen unbedeutend ist, ist der Nichtbetrieb mit hohen Geldstrafen bewehrt, wir sind also gezwungen die VDS-Einrichtung gegen Störungen zu sichern.
===== Sicherung gegen Sabotage von Innen =====
Den gesamtsystemischen Analysen und Gegenmaßnahmen ist hinzuzufügen, dass die VDS-Einrichtung nur von zugangsberechtigten Personen bedient wird.
Dabei wird vorgeschriebene vier-Augen-Prinzip wird eingesetzt.
Des weiteren wird jeder Zugriff mit bewegungsaktivierten Überwachungskameras aufgezeichnet, so dass eine spätere Verfolgung eines Saboteurs erleichtert wird.
Unsere Sicherheitsprotokolle verbieten weiterhin die Mitnahme von elektronischen oder elektrischen Geräten in die VDS-Räume.
===== Sicherung gegen Sabotage von Außen =====
Die Überwachungsdaten liegen Vollverschlüsselt vor, außerdem ist das System in seiner Standardkonfiguration stromlos, und wird nur bei Einspielung neuer Daten oder dem Abruf der Überwachungsdaten durch staatliche Organe für die Dauer des Vorgangs aktiviert.
Dies macht Heiße und Kalte Angriffe quasi unmöglich. Der Raum wird schall- und funkisoliert, so dass unberechtigtes Abgreifen der Überwachungsdaten während eines authorisierten Vorganges erschwert wird.
===== Sicherung gegen Angriffe =====
Nach unserer Analyse ist die VDS-Einrichtung als Angriffsziel besonders gefährdet, da Personengruppen, insbesondere aus der linken Szene Leipzigs, welche vom Verfassungsschutz als gefährlichste Deutschlands eingestuft wird, Motivation haben könnten sich gewaltsam gegen die Vollüberwachung des ganzen Landes zur Wehr zu setzen.
Da die VDS-gesetze aus der gesamten Bevölkerung breiten Widerspruch erfahren haben, ist dies allerdings nicht das einzige plausible Angriffszenario.
Als Gegenmaßnahme werden besonders verstärkte Türen, in sowohl den Räumen, als auch den Technikschränken und ein stilles bewegungsaktiviertes Alarmsystem eingesetzt.
Des weiteren werden die Daten 3-fach redundant gespeichert, und es wird ein komplettes VDS-System auf Vorrat gehalten, um eventuelle Zerstörungen ohne Verzögerung durch Lieferzeiten ersetzen zu können.

View file

@ -0,0 +1,283 @@
Einleitung
Das folgende Sicherheitskonzept unterteilt sich in generelle Sicherheitsrichtlinien die als grundlegendes Konzept in verschiedenen Szenarien angewendet werden. Dem folgt eine kurze Beschreibung der Systemstruktur sowie Definitionen der einzelnen Systemkomponenten.
Anschließend wird die Systemsicherheit in Bezug auf die zu erfüllenden Schutzziele ausgewertet. Dabei findet eine Bewertung des Schutzbedarfs der einzelnen Komponenten, in Verbindung mit den konkreten Gegenmaßnahmen statt.
Beschreibung der Systemstruktur
Definition der Systemkomponenten
Internetseitiger Netzabschlusspunk (im Folgenden INP)
Endkundenseitger Netzabschlusspunkt (im Folgenden ENP)
Kernnetz
Mindestspeicherfristerfüllungseinrichtung (im Folgenden MSFEE)
Sicherheitsrichtlinien
1. Datensparsamkeit
-> es ist immer nur die kleinstmögliche menge an Daten erhoben, mit denen der jeweilige Zweck erfüllbar ist
2. Systemtrennung
-> Seperat lösbare Probleme sind mithilfe von möglichst unabhängigen systemen zu lösen, so dass eine eventuelle Beeinträchtigung eines Systems kein anderes in Mitleidenschaft zieht.
3. Kleinhalten der Angriffsoberfläche
-> Zur lösung von Problemen und zur bereitstellung von Funktionalität ist immer das einfachste Werkzeug, welches diese Aufgabe erfüllt einzusetzen.
4. Beschränkung der Menschlichen Fehlerquelle
-> Zugrif auf systeme ist immer nur dem kleinstmöglichen Personenkreis, welcher in der lage ist das system funktionsfähig zu halten, zu gewähren
5. Verschlüsselung
-> Wo immer möglich ist Verschlüsselung einzusetzen, sowohl auf Transportwegen, als auch bei der Datenhaltung, um Angriffe zu erschweren. Sollten sich durch neue Technische entwicklungen, oder Mathematische Erkentnisse die eingesetzten Algorithmen als überholt herrausstellen sind diese Zeitnah durch Modernere Alternativen zu ersetzen
6. Ersetzbarkeit
-> Systeme sind so anzulegen, dass deren Einrichtung Einfach ist und schnell umgesetzt werden kann, so dass diese bei Ausfällen schnell ersetzt werden können.
7. Redundanz
-> Zentrale Systeme sind in mehreren Instanzen zu installieren, so dass bei Ausfall des Primärsystems das Sekundäre dessen Funktion übernehmen kann.
Evaluierung der Systemsicherheit
Die Evaluirung der Systemsicherheit wird anhand der Schutzziele gegliedert. Zu Beginn werden die nicht betroffenen Einheiten genannt. Danach folgt eine detaillierte Beschreibung der Sicherheitsrisiken und -vorkehrungen der betroffenen Einheiten.
= Schutz des Fernmeldegeheimnisses
Über die Netzwerküberwachung und die Mindestspeicherfristerfüllungseinrichtung (MSFEE) laufen keine Internetverbindungen, eine Verletzung des Fernmeldegeheimnisses ist also hier nicht möglich
== INP
=== Sabotage von Außen
Um Sabotage von außen auf die Infrastruktur erfolgreich durchzuführen, muss der Angreifer direkten physischen Zugriff auf den INP erlangen.
==== Gegenmaßnahmen
Der INP befindet sich inerhalb eines abschließbaren Technikschranks.
Der Technikschrank befindet sich innerhalb eines abgeschlossenen Raumes.
Der Raum befindet sich innerhalb eines Stadthauses.
Um physichen Zugriff auf den INP zu erlangen, muss zunächst in den Raum eingedrungen werden.
Dies kann geschehen, indem die Tür aufgebrochen wird, oder der Angreifer Zugriff auf den Schlüssel erhällt.
Das Aufbrechen der Türe ist hinreichend erschwert, da das Stadthaus, in dem sich der Raum befindet ganzjährlich bewohnt ist, und sich somit schweres Gerät, wie es zum Aufbrechen der Türe notwendig wäre nicht unbemerkt antransportieren lässt. Auch die Geräuschentwickung erschwert ein unbemerktes Eindringen.
Das Erlangen eines Schlüssels wird verhindert indem alle Schlüssel bei Vorstandsmitgliedern verbleiben, und nur für konkrete Arbeiten an die Ausführenden vergeben werden.
Ein Angreifer, der in den Raum eingedrungen ist, muss weiter in den Technikschrank einbrechen.
Die Ausführungsmöglichkeiten und Gegenmaßnahmen sind die Gleichen wie zur Verhinderung eines Eindringens in den Raum.
Zusatzlich verfügt der Technikschrank über einen elektronischen Eindringlingsalarm, der über Vorfälle alarmiert.
==== Installation einer Wanze
Sollte ein Angreifer Erfolgreich eindringen, könnte dieser eine Wanze auf dem Internetseitigen Kabel Installieren um den Datenstrom mitzulesen
===== Gegenmaßnahmen
Keine besonderen Gegenmaßnahmen
==== Offensichtliche Manipulation des INP
Der Angreifer könnte auch den INP selbst, beispielsweise durch Instalation eines alternativen Betriebssystems manipulieren, und den Datenstrom, oder Teile dessen mitlesen.
===== Gegenmaßnahmen
Sicherheitsrichtlinie: 5
Das Betriebssystem des INP ist Verschlüsselt, eine gezielte Manipulation des Betriebsystem in abgeschalteten Zustand also unmöglich. In angeschalteten Zustand ist sie durch restriktive Benutzerrechte und starke Passwörter unterbunden.
==== Subtile Manipulation des INP
Der Angreifer könnte statt das gesammte Betriebssystem zu ersetzen, den Teil ersetzen, welcher beim Start das Entschlüsselungspasswort entgegennimmt, und zwar in einer Weise, dass dieses das Entschlüsselungspasswort unverschlüsselt speichert oder ein alternatives Betriebssystem läd.
===== Gegenmaßnahmen
Aufgrund der großen physischen Hürden ist eine unbemerkt durchgeführte Manipulation für sehr schwierig und diese Restrisiko in Kauf zu nehmen.
Eine Mögliche Gegenmaßnahme wäre allerdings, das abtrennen des Bootloader vom Restsystem, um ihn sicher zu verwahren. Das Problemder SIcheren Verwahrung ist damit aber nicht gelöst.
=== Angriffe ohne physischen Zugang zu den Komponenten
Erlangt ein Angreifer Kontrolle über einen INP so kann er den gesamten unverschlüsselten Internetverkehr aller Nutzenden mitlesen und manipulieren. Erhöhter Schutzbedarf.
=== Angriffszenarien
==== Ein Angreifer nutzt eine Sicherheitslücke in der auf dem INP installierten Software aus.
Sicherheitsrichtlinien: 2, 3
Auf dem INP läuft eine auf die Anwendung zugeschnittene Softwareauswahl, die über Signaturen eindeutig für Sicherheitsaudits verfügbarem Quellcode zugeordnet werden kann. Durch einen großen Umfang an Software ist auch die Anzahl an möglichen Fehlerquellen und Angriffvektoren groß. Eine Gegenmaßnahme stellt die Beschränkung auf notwendige Programme dar, die stets mit aktuellen Sicherheitsaktualisierungen versorgt werden. Durch ein Netzwerkstrennendes Datensicherheitselement werden mögliche Zugriffe auf den INP gesteuert und reglementiert. Desweiteren werden einzelne Anwendungen, soweit dies möglich ist, in unabhängige Virtuelle Server ausgelagert um manipulierter Software keinen Zugriff auf weitere Anwendungen zu geben.
==== Einem Angreifer gelingt es, den Zugangsschlüssel zum INP durch manipulative Kommunikation mit zugangsberechtigten Menschen zu erhalten
Sicherheitsrichtlinien: 4
Nur einer kleinen Personengruppe sind die Zugangsschlüssel bekannt.
Zusätzlich wird über die Gefahren von Angriffen solcher Art aufgeklärt.
==== Ein Angreifer erlangt den Zugangsschlüssel durch das Eindringen in ein Gerät, auf dem der Schlüssel hinterlegt ist.
Sicherheitsrichtlinie: 2,3,4,5
Die Zugangskennung wird nicht auf weiteren Systemkomponenten verwendent. Hauptrisiko stellt hier der Umgang der Personen mit dem Zugangsschlüssel, dieses lässt sich durch Informieren der Personen reduzieren.
==== Ein Angreifer greift den Netzwerkverkehr an der internetseitigen Anschlussschnittstelle des INP ab.
Fällt in den Zuständigskeitsbereicht, des mit uns verbundenen Internetserviceproviders.
==== Ein Angreifer greift den Netzwerkverkehr an der kernnetzseitigen Anschlussschnittstelle des INP ab.
Fällt unter "Schutz des Kernnetzes".
== Kernnetz
Der Schutz des Fernmeldegeheimnisses ist für das Kernnetz relevant, da alle Endnutzerdatenverbindungen durch dieses laufen. Erhöhter Schutzbedarf.
=== Sicherung gegen Sabotage von Außen
Um das Fernmeldegeheimnis zu verletzen muss der Saboteur physischen Zugriff auf das Kernnetz haben um eine Wanze anzubringen, welche dann Datenströme (eventuell selektiv) ausleitet
==== Gegenmaßnamen
Sicherheitsrichtlinie: 4
Das Kernnetz befindet sich hinter mehreren physischen Schutzschichten; von außen nach innen: Ein Stadthaus, abgeschlossene Räumlichkeiten, abgeschlossene Technikschränke oder Ein Stadthaus, gemauerte Kabelschächte.
Ein unbemerkter Einbruch in das Stadthaus wird erschwert, da es ganzjährig bewohnt ist. Ebenso für Räume, Schränke und Mauerwerk.
Die Alternativmöglichkeit ist die Beschaffung sämtlicher elektronischer Zugangskarten und Schlüssel um gewaltfrei einzudringen.
Dies wird erschwert, indem die Schlüssel nur bei Vorständen liegen, und nur für konkrete Arbeitsvorgänge an authorisiertes Personal ausgegeben werden.
Der Saboteur müsste eine Wanze an ein Kabel anbringen, Entweder in der Mitte eines Kabels, wo statt eines Eindringens in die Technikschränke und Räumlichkeiten ein Eindringen in Kabelschächte notwendig wäre, oder zwischen eine Büchse und ein Kabel.
Beide Eingriffe würden jedoch in der Netzwerküberwachung aufgrund der kurzzeitigen Verbindungsunterbrechung auffallen, was eine Untersuchung des Kernnetzes, und eine Entfernung der Wanze nach sich ziehen würde.
Für eine weitere Erhöhung der Sicherheit wurde eine Transportwegverschlüsselung im gesamten Kernnetz evaluiert, aufgrund der geringen Wahrscheinlichkeit eines erfolgreichen angriffs und dem hohen technischen Aufwand jedoch verworfen.
=== Angriffe ohne physischen Zugang zu den Komponenten
==== Ein Angreifer nutzt eine Sicherheitslücke einer der im Kernetz verwendenten Komponenten aus.
Sicherheitsrichtlinien: 2, 3
Auf den Geräten des Kernnetzes, speziell den Hauptroutern, läuft eine auf die Anwendung zugeschnittene Softwareauswahl, die über Signaturen eindeutig für Sicherheitsaudits verfügbarem Quellcode zugeordnet werden kann. Durch einen großen Umfang an Software ist auch die Anzahl an möglichen Fehlerquellen und Angriffvektoren groß. Eine Gegenmaßnahme stellt die Beschränkung auf notwendige Programme dar, die stets mit aktuellen Sicherheitsaktualisierungen versorgt werden. Durch ein Netzwerkstrennendes Datensicherheitselement werden mögliche Zugriffe auf das Kernnetz und die darin enthaltenen Geräte gesteuert und reglementiert.
==== Ein Angreifer greift den Netzwerkverkehr einem Knoten des Kernnetzes ab.
Entweder muss er dazu über eine ausnutzbare Sicherheitslücke einer Komponente oder einem physikalischen Zugang zu einem Teil des Kernnetzes verfügen.
Siehe Sabotage.
== ENP
=== Sabotage von Außen
Um das Fernmeldegeheimnis zu verletzen muss der Saboteur direkten Physischen Zugriff auf den ENP erhalten. Da diese aufgrund von technischen Beschränkungen nicht verschlüsselt sind, könnte er das installierte Betriebssystem manipulieren und/oder Transportwegsverschlüsselungsschlüssel austauschen.
==== Gegenmaßname
Jeder ENP steht in den Räumlichkeiten des entsprechenden Endnutzers, also ins Besondere nicht im öffentlichen Raum. Die konkreten Sicherungen liegen somit auch im Einflussbereich des Nutzers.
Um die Auswirkungen eines potentiellen Zugriffs zu minimieren, wird die Erreichbarkeit aller ENPs permanent Überwacht und Eindringlingserkennungssysteme eingesetzt.
Außerdem werden alle eingesetzten symmetrischen, und damit auch auf den ENP gespeicherten, Transportwegsverschlüsselungsschlüssel zwischen den ENPs und dem Kernnetz regelmäßig ausgetauscht.
=== Angriffe ohne physischen Zugang zu den Komponenten
Erlangt ein Angreifer Kontrolle über einen ENP so kann er den gesamten unverschlüsselten Internetverkehr eines Nutzenden mitlesen und manipulieren. Schutzbedarf.
==== Ein Angreifer nutzt eine Sicherheitslücke in der auf dem ENP installierten Software aus.
Sicherheitsrichtlinien: 2, 3
Auf den ENP werden stets die aktuellen Sicherheitsaktualisierungen des Herstellers eingespielt. Durch ein Netzwerkstrennendes Datensicherheitselement werden mögliche Zugriffe auf den ENP gesteuert und reglementiert. Dadurch wird ein Ausnutzen von Sicherheitslücken weiter erschwert.
==== Einem Angreifer gelingt es, den Zugangsschlüssel zum ENP zu erhalten durch manipulative Kommunikation mit zugangsberechtigten Menschen zu erhalten.
Sicherheitsrichtlinien: 4
Nur einer kleinen Personengruppe sind die Zugangsschlüssel bekannt.
Zusätzlich wird über die Gefahren von Angriffen solcher Art aufgeklärt.
==== Ein Angreifer erlangt den Zugangsschlüssel durch das Eindringen in ein Gerät, auf dem der Schlüssel hinterlegt ist.
Sicherheitsrichtlinie: 2, 3, 4, 5
Die Zugangskennung wird nicht auf weiteren Systemkomponenten verwendent. Hauptrisiko stellt hier der Umgang der Personen mit dem Zugangsschlüssel, dieses lässt sich durch Informieren der Personen reduzieren.
==== Ein Angreifer greift den Netzwerkverkehr an der kernnetzseitigen Anschlussschnittstelle des INP ab.
Fällt unter "Schutz des Kernnetzes".
= Schutz Personenbezogener Daten
Der INP, das Kernnetz, die ENP und die Netzwerküberwachung verarbeiten keine Personenbezogenen Daten.
== MSFEE
Die MSFEE verarbeitet personenbezogene Daten, damit muss sie besonders vor unauthorisiertem Zugriff geschützt werden.
=== Sicherung gegen Sabotage von Innen
Ein Saboteur könnte versuchen zur zugangsberechtigten Person erklärt zu werden, und so Daten zu extrahieren.
==== Gegenmaßnamen
Sicherheitsrichtlinie: 4, 5
Das vorgeschriebene vier-Augen-Prinzip wird eingesetzt, somit könnte ein unberechtigter Zugriff durch einen einzelnen Saboteur von der weiteren zugangsberechtigten Person verhindert werden.
Des weiteren wird jeder Zugriff mit bewegungsaktivierten Überwachungskameras aufgezeichnet, so dass eine spätere Verfolgung eines Saboteurs erleichtert wird.
Unsere Sicherheitsprotokolle verbieten weiterhin die Mitnahme von elektronischen oder elektrischen Geräten in die VDS-Räume, so dass die extraktion der Daten stark erschwert wird.
=== Sicherung gegen Sabotage von Außen
Ein Saboteur könnte auch als unberechtigter versuchen in die MSFEE einzudringen.
==== Gegenmaßnamen
Sicherheitsrichtlinie: 5
Die Überwachungsdaten liegen Vollverschlüsselt vor, außerdem ist das System in seiner Standardkonfiguration stromlos, und wird nur bei Einspielung neuer Daten oder dem Abruf der Überwachungsdaten durch staatliche Organe für die Dauer des Vorgangs aktiviert.
Heiße und Kalte Angriffe werden dadurch stark erschwert. Der Raum wird schall- und funkisoliert, so dass unberechtigtes Abgreifen der Überwachungsdaten während eines authorisierten Vorganges erschwert wird.
=== Angriffe ohne physischen Zugang zu den Komponenten
Zwischen der MSFEE und dem Kernnetz oder dem Internet existiert eine Luftlücke. Angriffe ohne physischen Zugang sind somit ausgeschlossen.
= Schutz gegen Störungen
== INP
Bei Störung des INP ist die Netzwerkanbindung aller Nutzenden beeinträchtigt. Dies ist ein kritisches Szenario, das besonderer Schutzmaßnahmen bedarf.
=== Angriffe ohne physischen Zugang zu den Komponenten
==== Um den INP zu dauerhaft zu stören, abzuschalten oder fremdgestuert zu verwenden, muss ein Angreifer Zugang zu den Funktionen des Gerätes erhalten. Hier gilt dasselbe wie für Angriffe auf Fernmeldedaten.
==== Aus dem Internet kann der INP Ziel von Angriffen durch extrem zahlreiche Anfragen (AdezA) werden. Gegen diese können wir uns nur bedingt schützen. Durch redundante Anbindungen um große Bandbreite lässt der Aufwand für eine derartige Störung stark erhöhen. Gleichzeitig ist das Risiko, eines solchen Angriffs eher gering und hinterlässt über die Dauer des Angriffes hinaus keine nachhaltigen Schäden. Die Einschränkung der Verbindungsqualität wärend eines sochen Angriffsjedoch auf ein Minimum zu reduzieren, lassen sich, auch in Abspreche mit weiteren Dienstleistern, Verbindungen von bestimmten Adressbereichen unterbinden.
== Kernnetz
Da ein ein größerer Ausfall des Kernnetzes auch einen größeren Ausfall, der über es zur Verfügung gestellten Dienstleistung nach sich ziehen würde, ist ein Schutz gegen Störungen relevant.
=== Physische/Terroristische Angriffe
TODO
=== ohne physischen Zugang zu den Komponenten
==== Um das Kernnetz dauerhaft zu stören, abzuschalten oder fremdgestuert zu verwenden, muss ein Angreifer Zugang zu den Funktionen eines Gerätes des Kernnetzes erhalten. Es gilt dasselbe wie für Angriffe auf Fernmeldedaten.
==== Um eine verübergehende Störung des Kernnetzes zu erreichen wäre ein Angriff durch extrem zahlreiche Anfragen denkbar, bei dem die Geräte durch zuviele Anfragen überlastet werden und vorübergehend nicht reagieren.
Als Gegenmaßnahme verhindert das netzwerktrennende Sicherheitselement Verbindungen zu Komponenten des Kernnetz aus dem Internet und dem kundenseitigen Netz.
== ENP
Bei Störung des ENP ist die Netzwerkanbindung eines einzelnen Nutzenden beeinträchtigt. Dies ist zu vermeiden, bedeutet aber nur geringen Schutzbedarf.
=== Sicherung gegen physische/terroristische Angriffe
Um den ENP Funktionsunfähig zu machen sind viele Angriffsszenarien denkbar, vom einfachen Eindringen und gezielt Zerstören bis zu einem vollständigen Angriff, bei welchem Brandsätze und/oder Explosivstoffe zur Zerstörung des Standpunkts eingesetzt werden.
==== Gegenmaßnahme
Sicherheitsrichtlinie 6
Es wird nicht versucht die Zerstörung zu verhindern, sondern eine schnelle Wiederherstellung der Funktionalität, indem ein ständiger Vorrat an Ersatz-ENPs gehalten wird, aus dem zerstörte ENPs innerhalb eines Werktages ersetzt werden können.
=== Angriffe ohne physischen Zugang zu den Komponenten
==== Um den ENP zu dauerhaft zu stören, abzuschalten oder fremdgestuert zu verwenden, muss ein Angreifer Zugang zu den Funktionen des Gerätes erhalten. Es gilt dasselbe wie für Angriffe auf Fernmeldedaten.
==== Um eine verübergehende Störung des ENP zu erreichen wäre ein Angriff durch extrem zahlreiche Anfragen denkbar, bei dem das Gerät durch zuviele Anfragen überlastet wird und vorübergehnd nicht reagiert.
Als Gegenmaßnahme verhindert das netzwerktrennende Sicherheitselement Verbindungen zum ENP aus dem Internet und dem kundenseitigen Netz.
== Netzwerküberwachung
=== Angriffe ohne physischen Zugang zu den Komponenten
== MSFEE
Auch wenn der Betrieb einer MSFEE für den Netzbetrieb vollkommen unbedeutend ist, ist der Nichtbetrieb mit hohen Geldstrafen bewehrt, wir sind also gezwungen die MSFEE gegen Störungen zu sichern.
=== Sicherung gegen physische/terroristische Angriffe
Ein Angreifer könnte versuchen durch physische gewalt, Brand- oder Sprengsätze die MSFEE zu beschädigen oder zu zerstören.
Insbesondere die linke Szene Leipzigs, welche vom Verfassungsschutz als gefährlichste Deutschlands eingestuft wird, könnte Motivation haben sich gegen diese Vollüberwachung gewaltsam zur Wehr zu setzen.
Da die Vorratsdatenspeicherungs und Mindestspeicherfristgesetze allerdings auch breiten wiederspruch aus der gesamten Bevölkerung erfahren, ist dies wahrscheinlich nicht die einzige Gruppierung, welche eine Angriffsmotivation haben könnte.
Wir halten aus den genannten Gründen dieses Angriffsszenario für wahrscheinlich.
==== Gegenmaßnahmen
Sicherheitsrichtlinien: 6, 7
Als Gegenmaßnahme werden besonders verstärkte Türen, in sowohl den Räumen, als auch den Technikschränken und ein stilles bewegungsaktiviertes Alarmsystem eingesetzt.
Des weiteren werden die Daten 3-fach redundant gespeichert, und es werden die Technischen Geräte für eine vollständige MSFEE auf Vorrat gehalten, um zerstörte Komponenten ohne Verzögerung durch Lieferzeiten ersetzen zu können.
=== Angriffe ohne physischen Zugang zu den Komponenten
Zwischen der MSFEE und dem Kernnetz oder dem Internet existiert eine Luftlücke. Störungen ohne physischen Zugang sind somit ausgeschlossen.
= Gesamtsystemische Analyse
== Sabotage von Innen
Für eine Sabotage von Innen muss ein Saboteur in die Organisation eingeführt werden.
Dieser könnte zwei Ziele verfolgen, direkte Sabotage der operativen Systeme, oder Lähmung der Organisation.
Reudnetz w.V. ist in seiner Organisationsstruktur als Verein mit offenen Anmeldungen gegenüber der Einführung von Saboteuren besonders gefährdet.
Zur direkten Sabotage muss der Saboteur Zugang zu Zugangsdaten zu den Operativen Systemen erlangen.
Dies wird verhindert, indem diese Zugangsdaten nur einer sehr begrenzten Personengruppe zugänglich gemacht werden, diese nur erweitert wird, wenn es aufgrund des Arbeitsaufwandes unabdingbar notwendig ist und alle Zugangsdaten ausgetauscht werden, sobald eine der berechtigten Personen ausgetauscht wird.
Im April 2016 beträgt die Größe der berechtigten Personengruppe Zwei, in Zahlen 2 Personen.
Zur indirekten Sabotage durch lähmung der Organisation ist es für den Saboteur ausreichend an Organisationstreffen und Mitgliederversammlungen teilzunehmen, wozu er bereits durch eine simple Mitgliedschaft berechtigt ist.
Die Gegenmasnahme setzt an der Tatsache an, dass das Verhalten des Saboteurs sich zumindest subtil von dem eines konstruktiven Mitglieds unterscheiden muss. Sollte irgend einem Teilnehmer während einer Mitgleiderversammlung oder eines Organisationstreffens ein solches Verhalten auffallen, wird dieses einem Vorstandsmitglied gemeldet, welches dann Ermittlungen einleitet. Dieses Verfahren ist in der Geschäftsordnung geregelt.
Die Mitglieder werden basierend auf Geheimdienstdokumenten über sabotierende Verhaltensmuster aufgeklärt.
== Angriffe ohne physischen Zugang zu den Komponenten
Abschlussbemerkung
Wir sind überzeugt, durch diese Maßnahmen das verbleibenden Restrisiko auf ein akzeptables Maß zu reduzieren. Besonders hohe Anforderungen stellt wir an ein ausgeprägtes Fehlerbewusstsein aller bei uns tätigen Technikerinnen. da gerade Fehleinschätzugen und Fahrlässigkeit eines der am schwierigsten zu bewertenden Sicherheitrisiken darstellen. Durch Aufklärung bezüglich der Auftretenden Risiken und Probleme h
======================================================================
Drunter: Draft, Drüber: Done
======================================================================
Gliederung:
schutzziel -> objekt -> angriffszenario
Schutzobjekte
Internetseitiger Netzabschlusspunkt
===== Schutzziele =====
==== Schutz des Fernmeldegeheimnisses ====
Erlangt ein Angreifer Kontrolle über einen INP so kann er den gesamten unverschlüsselten Internetverkehr aller Nutzenden mitlesen und manipulieren. Schutzbedarf.
==== Schutz Personenbezogener Daten ====
Der INP verarbeitet keine personenbezogenen Daten.
==== Schutz gegen Störungen ====
Bei Störung des INP ist die Netzwerkanbindung aller Nutzenden beeinträchtigt. Dies ist ein kritisches Szenario, das besonderer Schutzmaßnahmen bedarf.
==== Schutz gegen Nutzung als Angriffsvektor ====
Erlangt ein Angreifer Kontrolle über den INP so kann er diesen verwenden, um auf andere Komponenten des Kernetzes störend oder manipulativ einzuwirken. Genauso kann er den INP als Angriffswerkzeug für weitere Ziele im Internet verwenden. Schutzbedarf.
===== Sicherung gegen Störung
Aus dem Internet kann der INP Ziel von Angriffen durch extrem zahlreiche Anfragen (AdezA (nicht DDOS?)) werden. Gegen diese können wir uns nur bedingt schützen. Durch redundante Anbindungen um große Bandbreite lässt der Aufwand für eine derartige Störung stark erhöhen. Gleichzeitig ist das Risiko, eines solchen Angriffs eher gering und hinterlässt über die Dauer des Angriffes hinaus keine nachhaltigen Schäden. Die Einschränkung der Verbindungsqualität wärend eines sochen Angriffs ist jedoch mit [] auf ein Minimum zu reduzieren.
===== Sicherung gegen Fremdkontrolle
Auf dem INP, läuft eine auf die Anwendung zugeschnittene Softwareauswahl, die über Signaturen eindeutig für Sicherheitsaudits verfügbarem Quellcode zugeordnet werden kann. Durch einen großen Umfang an Software ist auch die Anzahl an möglichen Fehlerquellen und Angriffvektoren groß. Eine Gegenmaßnahme stellt die Beschränkung auf notwendige Programme dar, die stets mit aktuellen Sicherheitsaktualisierungen versorgt werden. Durch ein Netzwerkstrennendes Datensicherheitselement werden mögliche Zugriffe auf das Kernnetz und die darin enthaltenen Geräte gesteuert und reglementiert. Desweiteren werden einzelne Anwendungen, soweit dies möglich ist, in unabhängige Virtuelle Server ausgelagert um manipulierter Software keinen Zugriff auf weitere Anwendungen zu geben.
Endkundenrouter
Kernnetz
VDS-Einrichtung
Hacker:
* Störungen des Netzwerkes
* Aneignung schützenswerter Daten
personenbezogen
Fernmeldegeheimnis
* Missbräuchliche Nutzung der Netzinfrastruktur zum Angriff weiterer Ziele (Vektor)
* Manipulation des Datenverkehrs
Naturkatastrophen:
Die Bedrohungen der Systemsicherheit durch Naturkatastrophen setzen sich ausschließlich mit den am Betriebsort des Netzwerkes realistisch auftretenden Szenarien auseinander.
* Starkregenereignisse
Alle
Alle Komponenten sind mindesten 1m über dem Boden montiert. In Räumen auf Bodenniveau sind Pumpen vorhanden, um eindringendes Wasser schnellstmöglich zu entfernen.
* gefrierender Schneeregen
Kernnetz
* Blitzschlag
Vorallem ENP, Kernnetz
* Stromausfall
Alle
* Temperaturextrema
ENP, Kernnetz
Baumaßnahmen:
* Störung durch Baumaßnahmen
###Bearbsichtigte Veränderungen am Netz durch Baumaßnahmen.
Änderungen am Netz können zu Störung einzelner Teile oder des geamten Netzes führen.
Um dem entgegenzuwirken sind alle kritischen Systemkomponenten redundant ausgeführt und werden nacheinander umgebaut. Dadurch lassen sich Ausfallzeiten reduzieren oder vermeiden.
### Unbeasichtigte Störungen durch Baumaßnahmen dritter
Da Teile unserer Infrastruktur an Orten verbaut sind, an denen auch andere Aktuere tätig werden, sind Ausfälle durch Fehler während Baumaßnahmen dieser Akteure potentielle Sicherheitsrisiken.
Alle unser Infrastuktur ist deutlich gekennzeichnet und physisch möglichst stark von anderen Strukturen separeriert. Sollte es trotzdem zu Ausfällen kommen, werden diese durch die Netzwerküberwachung erkannt und durch die redundante Ausführung der Netzwerkkomponenten kompensiert. Ein Vorrat an Geräten der Netzwerkinfrastruktur macht ein schnelles Ersetzen möglich.
Gesamtsystematische Betrachtungen
Referenzen
Abschlussbemerkung

Binary file not shown.

View file

@ -0,0 +1,22 @@
\documentclass[a4paper,reudnetzbrief,backaddress=on,foldmarks=true]{scrlttr2}
\begin{document}
\setkomavar{subject}{Beispielbrief}
\begin{letter}{Name Hier \\ Dann Adresse \\ vielleicht auch nochmal \\ 00000 Ort }
\opening{Sehr geehrte(r) Name Hier}
Hier könnte ein Brief stehen. Oder irgendwas von der Webseite geklautes:
Was für einen Anschluss bekommt Ihr?
Unser Angebot funktioniert anders als das herkömmlicher Internetprovider:
Wir haben keine übertriebenen bis-zu Angebote, stattdessen erhält jeder Teilnehmer eine relativ geringe, dafür garantierte Mindestbandbreite. Diese beträgt 1,3 Mbit/s, was komfortabel mehr als einem Video-Stream in normaler Qualität (480p) entspricht. Der Clue ist, dass ungenutzte Bandbreite Anderen zur Verfügung gestellt wird. Da nicht alle permanent datenintensive Dienste wie Videos und Updates nutzen, ist es häufig möglich, mit der vollen Bandbreite der Richtfunkstrecke zu arbeiten, welche im Moment bei ca. 70 Mbit/s liegt und in Zukunft durch Einsatz innovativer Hardware steigen wird. Alle Anschlüsse sind symmetrisch. Das bedeutet, dass ihr genauso schnell Dinge hoch- wie herunterladen könnt. Dies vereinfacht wesentlich das Anbieten eigener Inhalte!
\closing{Mit freundlichen Grüßen,}
\end{letter}
\end{document}

View file

@ -0,0 +1,89 @@
\ProvidesPackage{crimson}[%
2016/02/06 (Bob Tennent) Supports crimson fonts for all LaTeX engines. ]
\RequirePackage{ifxetex,ifluatex,textcomp}
\newif\ifcrimson@otf
\ifxetex
\crimson@otftrue
\else\ifluatex
\crimson@otftrue
\else % [pdf]LaTeX
\crimson@otffalse
\fi\fi
\newcommand*{\crimson@scale}{1}
\RequirePackage{xkeyval}
\DeclareOptionX{scaled}{\renewcommand*{\crimson@scale}{#1}}
\DeclareOptionX{scale}{\renewcommand*{\crimson@scale}{#1}}
\newif\ifcrimson@semibold \crimson@semiboldfalse
\DeclareOptionX{type1}{\crimson@otffalse}
\DeclareOptionX{semibold}{\crimson@semiboldtrue}
\DeclareOptionX{sb}{\crimson@semiboldtrue}
\DeclareOptionX{bold}{\crimson@semiboldfalse}
\ProcessOptionsX\relax
\ifcrimson@otf
\RequirePackage{fontspec}
\else
\RequirePackage{fontenc,fontaxes,mweights}
\fi
\ifcrimson@otf
\def\crimson@boldstyle{Bold}
\ifcrimson@semibold\def\crimson@boldstyle{Semibold}\fi
\else % type1
\def\bfseries@rm{b}
\ifcrimson@semibold\def\bfseries@rm{sb}\fi
\def\mdseries@rm{m}
\fi
\ifcrimson@otf
\ifxetex\XeTeXtracingfonts=1\fi
\defaultfontfeatures{
Ligatures = TeX ,
Scale = \crimson@scale,
Extension = .otf ,
}
\setmainfont
[ UprightFont = *-Roman ,
ItalicFont = *-Italic ,
BoldFont = *-\crimson@boldstyle ,
BoldItalicFont = *-\crimson@boldstyle Italic ]
{Crimson}
\newfontfamily\crimson
[ UprightFont = *-Roman ,
ItalicFont = *-Italic ,
BoldFont = *-\crimson@boldstyle ,
BoldItalicFont = *-\crimson@boldstyle Italic ]
{Crimson}
\newfontfamily\crimsonsemibold
[ UprightFont = *-Semibold ,
ItalicFont = *-SemiboldItalic ,
BoldFont = *-Semibold ,
BoldItalicFont = *-SemiboldItalic ]
{Crimson}
\else % type1
\def\crimson@family{Crimson-TLF}
\renewcommand*\rmdefault{\crimson@family}
\newcommand*\crimson{\fontfamily{\crimson@family}\selectfont}
\def\crimsonsemibold{\fontfamily{\crimson@family}\fontseries{sb}\selectfont}
\fi
% turn off defaults in case other fonts are selected:
\ifcrimson@otf
\defaultfontfeatures{}
\fi
\endinput

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

View file

@ -0,0 +1,90 @@
\ProvidesPackage{mweights}
[2016/08/15 (Bob Tennent) Support package for multiple-weight font packages. ]
\AtBeginDocument{%
% Define any undefined \mdseries@rm etc.
% Defined \mdseries@rm etc. assumed to be fully expanded!
\ifdefined\mdseries@rm\else\edef\mdseries@rm{\mddefault}\fi
\ifdefined\bfseries@rm\else\edef\bfseries@rm{\bfdefault}\fi
\ifdefined\mdseries@sf\else\edef\mdseries@sf{\mddefault}\fi
\ifdefined\bfseries@sf\else\edef\bfseries@sf{\bfdefault}\fi
\ifdefined\mdseries@tt\else\edef\mdseries@tt{\mddefault}\fi
\ifdefined\bfseries@tt\else\edef\bfseries@tt{\bfdefault}\fi
% In case any unexpanded macros present in \rmdefault, etc
\edef\rmdef@ult{\rmdefault}
\edef\sfdef@ult{\sfdefault}
\edef\ttdef@ult{\ttdefault}
\edef\bfdef@ult{\bfdefault}
\edef\mddef@ult{\mddefault}
}
\DeclareRobustCommand\bfseries{%
\not@math@alphabet\bfseries\mathbf
\ifx\f@family\rmdef@ult\fontseries\bfseries@rm
\else\ifx\f@family\sfdef@ult\fontseries\bfseries@sf
\else\ifx\f@family\ttdef@ult\fontseries\bfseries@tt
\else\fontseries\bfdefault\fi\fi\fi\selectfont}%
\DeclareRobustCommand\mdseries{%
\not@math@alphabet\mdseries\relax
\ifx\f@family\rmdef@ult\fontseries\mdseries@rm
\else\ifx\f@family\sfdef@ult\fontseries\mdseries@sf
\else\ifx\f@family\ttdef@ult\fontseries\mdseries@tt
\else\fontseries\mddefault\fi\fi\fi\selectfont}
\DeclareRobustCommand\rmfamily{%
\not@math@alphabet\rmfamily\mathrm
% change the current series before changing the family
\ifx\f@family\sfdef@ult
\ifx\f@series\mdseries@sf\fontseries\mdseries@rm
\else\ifx\f@series\bfseries@sf\fontseries\bfseries@rm
\else\ifx\f@series\mddef@ult\fontseries\mdseries@rm
\else\ifx\f@series\bfdef@ult\fontseries\bfseries@rm
\fi\fi\fi\fi
\else\ifx\f@family\ttdef@ult
\ifx\f@series\mdseries@tt\fontseries\mdseries@rm
\else\ifx\f@series\bfseries@tt\fontseries\bfseries@rm
\else\ifx\f@series\mddef@ult\fontseries\mdseries@rm
\else\ifx\f@series\bfdef@ult\fontseries\bfseries@rm
\fi\fi\fi\fi
\else\fontseries\mdseries@rm
\fi\fi\fontfamily\rmdefault\selectfont}
\DeclareRobustCommand\sffamily{%
\not@math@alphabet\sffamily\mathsf
% change the current series before changing the family
\ifx\f@family\rmdef@ult
\ifx\f@series\mdseries@rm\fontseries\mdseries@sf
\else\ifx\f@series\bfseries@rm\fontseries\bfseries@sf
\else\ifx\f@series\mddef@ult\fontseries\mdseries@sf
\else\ifx\f@series\bfdef@ult\fontseries\bfseries@sf
\fi\fi\fi\fi
\else\ifx\f@family\ttdef@ult
\ifx\f@series\mdseries@tt\fontseries\mdseries@sf
\else\ifx\f@series\bfseries@tt\fontseries\bfseries@sf
\else\ifx\f@series\mddef@ult\fontseries\mdseries@sf
\else\ifx\f@series\bfdef@ult\fontseries\bfseries@sf
\fi\fi\fi\fi
\else\fontseries\mdseries@sf
\fi\fi\fontfamily\sfdefault\selectfont}
\DeclareRobustCommand\ttfamily{%
\not@math@alphabet\ttfamily\mathtt
% change the current series before changing the family
\ifx\f@family\rmdef@ult
\ifx\f@series\mdseries@rm\fontseries\mdseries@tt
\else\ifx\f@series\bfseries@rm\fontseries\bfseries@tt
\else\ifx\f@series\mddef@ult\fontseries\mdseries@tt
\else\ifx\f@series\bfdef@ult\fontseries\bfseries@tt
\fi\fi\fi\fi
\else\ifx\f@family\sfdef@ult
\ifx\f@series\mdseries@sf\fontseries\mdseries@tt
\else\ifx\f@series\bfseries@sf\fontseries\bfseries@tt
\else\ifx\f@series\mddef@ult\fontseries\mdseries@tt
\else\ifx\f@series\bfdef@ult\fontseries\bfseries@tt
\fi\fi\fi\fi
\else\fontseries\mdseries@tt
\fi\fi\fontfamily\ttdefault\selectfont}
\endinput

View file

@ -0,0 +1,103 @@
\ProvidesFile{reudnetzbrief.lco}[letter class option]
\RequirePackage[utf8]{inputenc}
\RequirePackage{graphicx}
\RequirePackage{hyperref}
%Lokalisierung
\RequirePackage{ngerman}
\RequirePackage{fix-cm}
% (TrueType-)Schriften
\usepackage{iftex}
\ifXeTeX
\usepackage{xltxtra}
\setmainfont{Crimson-Roman}
\else
\usepackage{crimson}
\RequirePackage[T1]{fontenc}
\fi
%Farben
\usepackage{color}
\definecolor{blatt}{rgb}{0.55, 0.64, 0.23}
%Formatierung
\addtokomafont{fromname}{\color{blatt}}
\addtokomafont{fromaddress}{\scriptsize\color{blatt}}
\addtokomafont{fromrule}{\color{blatt}}
\pagestyle{headings}
\KOMAoptions{
fontsize=12pt,
paper=a4,
pagenumber=botcenter,
fromalign=left,
%Trennlinie unter dem Logo: afteraddress, false, aftername:
fromrule=false,
fromlogo,fromurl,
fromemail,
% fromfax, fromphone,
enlargefirstpage
}
\setkomavar{fromname}{Reudnetz w.V.}
\setkomavar{fromaddress}{Wurzner Straße 2 \\ 04315 Leipzig}
\setkomavar{fromlogo}{\includegraphics[height=2.5cm]{logo.png}}
\setkomavar{fromemail}[]{mail@reudnetz.org}
\setkomavar{fromurl}[]{http://reudnetz.org/}
\setkomavar{place}{Leipzig}
%Spezialheader
\setkomavar{firsthead}{%
\parbox[b]{0.5\textwidth}{
\flushright{
\usekomafont{fromname}\strut\ignorespaces
\usekomavar{fromname}%
{
\ifnum\@rulefrom=1\\[-.5\baselineskip]%
\usekomafont{fromrule}{%
\setlength{\@tempdima}{\useplength{fromrulewidth}}%
\ifdim\@tempdima=\z@
\setlength{\@tempdima}{\textwidth}%
\if@logo
\settowidth{\@tempdimb}{\usekomavar{fromlogo}}%
\addtolength{\@tempdima}{-\@tempdimb}%
\fi
\fi
\expandafter\rule\expandafter{\the\@tempdima}{%
\useplength{fromrulethickness}}}%
\fi
}
\\
}%
{\usekomafont{fromaddress}\strut\ignorespaces
\usekomavar{fromaddress}%
\if@phone\\\usekomavar*{fromphone}\usekomavar{fromphone}\fi%
\if@mobilephone
\\\usekomavar*{frommobilephone}\usekomavar{frommobilephone}%
\fi%
\if@fax\\\usekomavar*{fromfax}\usekomavar{fromfax}\fi%
\if@email\\\usekomavar*{fromemail}\usekomavar{fromemail}\fi%
\if@www\\\usekomavar*{fromurl}\usekomavar{fromurl}\fi%
\ifnum\@rulefrom=2\\[-.5\baselineskip]%
\usekomafont{fromrule}{%
\setlength{\@tempdima}{\useplength{fromrulewidth}}%
\ifdim\@tempdima=\z@
\setlength{\@tempdima}{\textwidth}%
\fi
\expandafter\rule\expandafter{\the\@tempdima}{%
\useplength{fromrulethickness}}}%
\fi
\\
}%
}%
\hspace{1mm}
\if@logo
\rlap{\usekomavar{fromlogo}}%
\fi
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 136 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 746 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 947 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 517 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 167 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 280 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 MiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 40 KiB

View file

@ -0,0 +1,33 @@
vorstellung des projektes
nennung von eckdaten
Gründe für einen solchen Anschluss:
Wir speichern nicht
Wir sind erreichbar/ansprechbar
Transparenz (Wie überbucht ist mein Anschluss, wo geht das Geld hin, etc.)
symetrische Anschlüsse
Idee: kurzer fragebogen zu was Nutzer eigentlich wollen:
einen internet vertrag der:
sofort kündbar ist
gemeinschaftlich nutzbar ist
möglichst viel bietet und wenig kostet
mit menschen abgeschlossen ist mit denen man reden kann

View file

@ -0,0 +1,35 @@
anwesende mitglieder sind
carl, paul, daniel, johannes, yannik
die beschlussfähigkeit wurde festgestellt
* bericht
- hlkom
- testnetz
- bnetza -> sicherheitskonzept
- hohe strafe
- aufklärung über sabotage
- baumaßnahmen
- keller
- kabelschacht
- dach
- degrowth projekt/nichtförderung
- 1500
- können nur an vereine mit bildungsauftrag spenden
- finanzierung
- voratsdatenspeicherung
* anschlussvertrag
- vertrag, beide müssen unterscheiden
* sabotage
* mitglieder annehmen
- ein mitgliedsvertrag (ludwig) wurde abgegeben
- einstimming angenommen
* go beschließen
- einstimmig angenommen
* bericht
- ansible

View file

@ -0,0 +1,42 @@
Die Satzung bezieht sich in folgenden Punkten auf die Geschäftsordnung:
* §4 Anforderungen, Zustellwege und Zuordnung elektronischer Dokumente
Elektronische Dokumente sind Emails, die mit GPG/PGP oder S/MIME an den korrekten Schlüssel verschlüsselt, so wie von einem der empfängerseite bekannten Schlüssel signiert sind.
* §7.1 Deligiert Entscheidungsfähigkeit weg vom Vorstand
Keine einschränkungen
* §7.5 Legt untergrenze an Stimmen für die Beschlussfähigkeit fest
7 Stimmen, oder 25% der Stimmen, was immer weniger ist.
Beschlüsse der Mitgliederversammlung werden eine Woche nach veröffentlichung des Protokolls gültig.
In dieser Frist kann den Beschlüssen durch nichtanwesende Mitglieder wiedersprochen werden.
Wenn die ursprünglichen Gegenstimmen zusammen mit den hinzugekommenen Gegenstimmen die für-Stimmen überstimmen ist der Beschluss invalid.
Dieser Prozess wird durch den Schriftführer verwaltet.
* §8.2 Kann Einschränkungen für die Vertretung des Vereins festlegen
Vorstandmitglieder sind bis zu Beträgen von 250€ vertretungeberechtigt. Über Beträge von bis zu 1000€ kann im Vorstand abgestimmt werden. Über alle größeren Beträge entscheidet die Mitgliederversammlung.
Bei Verträgen sind die durch Mindestvertragslaufzeit und Kündigungsfrist mindestens anfallenden Forderungen entscheidend.
* §8.3 Haushaltsführung und Finanzen
Der Schatzmeister überwacht die Finanzen mittels einfacher Buchführung und stellt den Nutzenden Rechnungen aus und leitet Maßnahmen bei evtl. Nichtzahlung ein.
* §11.3 Kann die Einsicht in Daten einschränken
Einsicht in Dokumente, die zum Betrieb nötige Passwörter oder Schlüssel enthalten, ist nur den Vorstandmitgliedern gestattet.
Die für die Abrechnung ermittelten Daten der Nutzenden sind nur durch den Schatzmeister, und die durch das TKG speziell berechtigte Person einzusehen.
Die für die Umsetzungen der Mindestspeicherfrist erhobenen Verbindungsdaten sind nur durch die im TKG berechtigten Personen einzusehen.
das sicherheitskonzept bezieht sich in punkto sabotageabwehr auf die geschäftsordnung.
die geschäftsführer haben neue mitgliedern über sabotage aufzuklären
- entscheidungen in gremien abschieben ("sind wir dazu entscheidungsberechtigt")
- entscheidungen ausbremsen ("lieber keine fehler machen", "vernünftig sein")
- arbeiten ausbremsen ("werkzeug vergessen/verlegt", "schlüssel vergessen/verlegt")
- material verschlie&en ("antenne unzureichend gesichert", "zu viel spiel lassen -> material zermürben", "ungeeignetes material verwenden")
mitglieder haben auf sabotierendes verhalten zu achten, und bei einem anfangsverdacht einen geschäftsführer zu benachrichtigen
die geschäftsführer haben hinweisen auf sabotage durch mitglieder von mitgliedern nachzugehen
und eventuell ein ausschlussverfahren einzuleiten
bei jeder mitgliederversamlung ist ein kleiner vortrag zu einem zusammenhängenden sachthema zur information der mitglieder abzuhalten

View file

@ -0,0 +1,31 @@
## Reudnetz w.V
### Chronologie der Bürokratie
#### Landesdirektion
Erster Anlaufpunkt ist die Landesdirektion, um einen wirtschaftlichen Verein zu Gründen. In Sachsen sitzt der Verantwortliche in Dresden, Referat 21.
Dafür muss folgendes getan werden:
* Verfassen einer Vereinssatzung
* Ausfüllen des Deckblattes[1] und argumentativ belegen, warum ein wirtschaftlicher Verein die einzige tragbare Rechtsform ist.
Nach circa 2 Monaten und für 230€ Verwaltungsgebühr erhielten wir dann die "Verleihung der Rechtsfähigkeit"
[1]https://fs.egov.sachsen.de/formserv/findform?shortname=smi_ldd_VerlRfV&formtecid=9&areashortname=142
####Gewerbeamt
Nun muss für die Tätigkeit des Vereins noch ein Gewerbe angemeldet werden. Möglich ist das im technischen Rathaus[2]. Das lief bisher so:
Abhängigkeiten sind:
* Anmeldebogen für Gewerbe ausfüllen
* Personalausweis oder Reisepass mitnehmen
* Am Besten noch alle anderen Unterlagen, da an der Glaubwürdigkeit wirtschaftlicher Vereine gern gezweifelt wird.
Das Gewerbeamt möchte gerne eine Regsternummer sehen. Dafür verweist es auf das Amtsgericht. In der dortigen Registerabteilung wurde mir dann aber erklärt,
das diese nicht zuständig ist. Stattdessen solle ich mir eine Vetreterbescheinigung von der Landesdirektion austellen lassen.
[2]http://www.leipzig.de/buergerservice-und-verwaltung/aemter-und-behoerdengaenge/behoerden-und-dienstleistungen/dienststelle/gewerberecht-3220/
####Finanzamt
####Kontoeröffnung
### Dokumente zum Verein
[Satzung](https://wiki.reudnetz.org/uploads/satzung-des-reudnetz%281%29.pdf)
[[Geschaeftsordnung]]
[[Selbstverstaendnis]]

View file

@ -0,0 +1,49 @@
## Wer sind wir und was soll das?
Das Reudnetz ist ein Verein und ein Internetprovider. Von uns kannst du einen Internetanschluss kaufen und (wenn du möchtest) Mitglied im Verein werden um
an der Entwicklung des Netzes mitzuwirken.
Wir machen das, weil wir einen Internetanschluss wollen, der
* Mitspracherecht garantiert
* ohne Jahrelange Vertragsbindung auskommt
* die Überbuchung nachvollziehbar gestaltet
* symmetrischen Up- und Downlink hat
* die Netzneutralität wahrt
* von Menschen gemacht wird, denen wir Vertrauen können.
Ob ihr uns vertraut müsst ihr selbst entscheiden:
* Wir sind überzeugt, dass die Kontrolle über Infrastruktur bei den Menschen liegen muss, die sie versorgt.
* Wir setzen uns gegen die Erhebung, Speicherung und Verwertung von Nutzer und Verbindungsdaten ein, können aber nicht ausschließen dazu gezwungen zu werden.
Noch speichern wir nichts.
* Wir wünschen uns ein Internet, das nicht von wenigen großen Diensten dominiert wird, sondern an dem Alle als Nutzende und Anbietende teilhaben.
* Wir halten unseren Stromverbrauch so niedrig wie möglich und verwenden, wo es möglich und sinnvoll ist, recycelte Technik.
* Es ist uns wichtig, das alle die es möchten, das Netz verstehen können. Sprecht uns an.
* Wir sind auf Layer 3 und sonst nirgends.
* Das Reudnetz wird Infrastukturoptimiert statt Gewinnoptimiert
* Wir verletzen die Netzneutralität nicht.
* Wir sind erreichbare Personen in eurer Nähe.
* Software muss OpenSource sein.
## Reste
inspiration:
https://criticalengineering.org/
http://backbone409.calafou.org/
https://iuf.alternatifbilisim.org/
https://www.accessnow.org/about
**schnelles günstiges internet** schön und gut aber wichtiger ist uns dass der anschluss solide ist, dass heißt das wir einen anschluss bekommen der nicht überbucht ist und es auch nicht sein wird, und dass wir genug mittel haben um projekte selbst umsetzen zu kjönnen und fördern zu können die sich mit netztssicherherheit und politischer vernetzung und organisation beschäftigen sowie damit schwellen abzubauen selbst aktiv am internet und dessen inhalt mitzugestalten.

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

View file

@ -0,0 +1,82 @@
\documentclass[a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
%\usepackage{lmodern}
%\usepackage[english]{babel}
\usepackage{graphicx}
\usepackage{hyperref}
\usepackage{fancyhdr}
%Lokalisierung
\usepackage{ngerman}
\usepackage{fix-cm}
% (TrueType-)Schriften
\usepackage{iftex}
\ifXeTeX
\usepackage{xltxtra}
\setmainfont{Crimson-Roman}
\else
\usepackage{crimson}
\usepackage[T1]{fontenc}
\fi
%Farben
\usepackage{color}
\definecolor{blatt}{rgb}{0.55, 0.64, 0.23}
\pagestyle{fancy}
%Header
\headheight=75pt
\rhead{
\parbox[b]{0.3\textwidth}{
\flushright{
{\fontfamily{crimson}\color{blatt}\selectfont\strut\ignorespaces
{\Large Reudnetz w.V.}\\
Wurzner Straße 2 \\
04315 Leipzig \\
mail@reudnetz.org\\
http://reudnetz.org\\
}
}
}
\includegraphics[height=2.5cm]{logo.png}
}
\lhead{
\parbox[b]{0.6\textwidth}{
{\LARGE\textbf{Reudnetz Gold Account!}}\\
\\
\\
\\
Mitgliedsantrag
}
}
\newcommand{\Qline}[1]{\noindent\rule{#1}{0.6pt}}
\begin{document}
\subsection*{}
Ich möchte über die Zukunft meines Internetanschluss entscheiden und in den Reudnetz w.V. eintreten.
\subsection*{Angaben zur Person}
\begin{tabular}{ l l r }
\\
\multicolumn{2}{l}{\Qline{0.6\textwidth}} & \Qline{0.3\textwidth}\\
Vorname, Name & & Geburtstag \\
\\
\multicolumn{3}{l}{\Qline{0.98\textwidth}} \\
\multicolumn{3}{l}{Adresse} \\
\\
\multicolumn{3}{l}{\Qline{0.98\textwidth}} \\
\multicolumn{3}{l}{Emailadresse} \\
\\
\Qline{0.3\textwidth} & \multicolumn{2}{r}{\Qline{0.6\textwidth}} \\
GPG-Key-ID & & Fingerprint \\
\end{tabular}
\subsection*{}
Ich habe die Satzung und die Geschäftsordnung gelesen und akzeptiert oder tue wenigstens so.\\
\\
\subsection*{}
\begin{tabular}{ l r }
\Qline{0.55\textwidth} & \Qline{0.4\textwidth}\\
Unterschrift & Datum \\
\end{tabular}
\end{document}

Binary file not shown.

Binary file not shown.

View file

@ -0,0 +1,56 @@
## Händler
### Senetic
https://www.senetic.de/
Account mit "Passwort für Webseiten" eingerichtet
###omg
https://shop.omg.de
nichts getan
### Unielektro
http://www.unielektro.de/
Noch nicht angemeldet
### Zajadacz
http://www.zajadacz.de/
Noch nichts gemacht
### Triotronik
http://www.triotronik.com
Warte auf anmeldung
Angemeldet
### König
http://www.elektrogrosshandel-koenig.de/uber-uns/
mal nrufen
### Kabeltronik
http://www.kabeltronik.de
anrufen
### Intos
https://www.intos.de
Noch nichts gemacht
### MAG
http://www.mag.de
Warte auf anmeldung.
ABGELEHNT
## Verbrauchsmaterial
#### Outdoor-Patchkabel
Diese Kabel sollten UV-Resistent und flexibel sein und einen Nagetierschutz besitzen.
* http://www.intos.de/produktuebersicht/kabel/rohware-unkonfektioniert/verlegekabel-cat.6-cat.7/70500p/inline-aussen-verlegekabel-cat.7a-s/ftp-pimf-4x2x0-58-awg23-kupfer-1200mhz-pe-mantel-schwarz-500m?ffRefKey=LFrdxnmJJ
* http://www.intos.de/produktuebersicht/kabel/rohware-unkonfektioniert/verlegekabel-cat.6-cat.7/70102f/verlegekabel-cat.7-1000mhz-s/ftp-pimf-awg23-100m-outdoor-schwarz?ffRefKey=LFrdxnmJJ
* Top und scheisse teuer: http://www.lappkabel.de/kabelfinder.html#%2Fpage%2F1235%3Fquery%3Dnull%26article_no%3D2170496%26facetSelection%3D{%22properties%22%3A[%22attribute_cable_rodent_protection_boolS%3Atrue%22%2C%22attribute_uvresistant_boolS%3Atrue%22]%2C%22product_group%22%3A[%22attribute_product_groups_stringM%3AETHERNET%20und%20LAN%22]}
* http://www.kabeltronik.de/elektronik-industrie/netzwerkkabel/cat-5e-pur-flex-utp-sc/
* https://webshop.unielektro.de/produkte/200EG000001EC000830--Datenkabel
#### Steckverbinder RJ-45
* http://www.lappkabel.de/produkte/online-kataloge-shop/datenuebertragungssyssteme-fuer-ethernet-technologie/steckverbinder-fuer-office-anwendungen/rj45-steckverbinder/steckverbinder-rj45-cat5-hirose-tm11.html?tx_dgpsolr[q]=rj45
* http://www.ebay.de/itm/Ubiquiti-Tough-Cable-Connectors-RJ45-CAT6-CAT5E-STP-Outdoor-100-pcs-TC-CON-/161741813867?hash=item25a890386b:g:YkwAAOxycD9TRQ4R
#### Outdoor- LWL:
Nagetierschutz und Längswasserfest
* http://www.mag.de/de/Fibre-Optic-Lichtwellenleiter/LWL-Aussenkabel
* 20m Kletterseil
* 4x NanoStationLoco M5
* 62,00€ http://www.bima-elektro.de/_netzwerktechnik/netzwerkkommunikation/nanostation-loco-m5-antenna-13dbi-outdoor-client-mimo-5ghz.html
* 53,41$ http://www.nv-networks.com/en/ubiquiti-nanostation-loco-m5-airmax.html
* Bei Reichelt gibt es keine Nanostations nur son Kram:
https://www.reichelt.de/WLAN-Router-Access-Point/TPLINK-CPE210/3/index.html?&ACTION=3&LA=2&ARTICLE=150844&GROUPID=5840&artnr=TPLINK+CPE210
* Und die DInger kommen hoffentlich noch: http://www.bima-elektro.de/_netzwerktechnik/netzwerkkommunikation/ubiquiti-nanobeam-m5-5ghz-16-db-airmax-cpe.html
* 4x 20m Patch Kabel

View file

@ -0,0 +1,12 @@
## AirOS configs
Normalerweise unterscheiden sich "Nanostation M5" und "Nanobeam M5" in den Konfigurationen etwas. Bisher ließen sich die Konfigurationen jedoch austauschen. Trotzdem ist stets nochmal vorsichtig zu testen.
### Accesspoint
Wir ein Router als Accesspoint konfiguriert, so läuft auch ihm kein Routing. Dafür gibt er die erlaubten Frequenzbänder vor.
### Station
Die Station steht auf dem Dach der Nutzenden und verbindet sich mit einem Accesspoint. Sie beihaltet auch das Routing für das Subnetz der Nutzenden.
### Nanobeam Station Switch
Auf dieser Station sind VLANs konfiguriert, so das sie zusammen mit einem geeigneten Switch über vier Ports verfügt.

View file

@ -0,0 +1,200 @@
aaa.1.br.devname=br0
aaa.1.devname=ath0
aaa.1.driver=madwifi
aaa.1.radius.acct.1.status=disabled
aaa.1.radius.auth.1.status=disabled
aaa.1.radius.macacl.status=disabled
aaa.1.ssid=slowpoke
aaa.1.status=enabled
aaa.1.wpa.1.pairwise=CCMP
aaa.1.wpa.key.1.mgmt=WPA-PSK
aaa.1.wpa.mode=2
aaa.1.wpa.psk=gibthiereinpasswortein
aaa.status=enabled
bridge.1.devname=br0
bridge.1.fd=1
bridge.1.port.1.devname=eth0
bridge.1.port.1.status=enabled
bridge.1.port.2.devname=ath0
bridge.1.port.2.status=enabled
bridge.1.status=enabled
bridge.1.stp.status=disabled
bridge.status=enabled
dhcp6c.status=disabled
dhcpc.1.devname=br0
dhcpc.1.fallback=192.168.1.20
dhcpc.1.fallback_netmask=255.255.255.0
dhcpc.1.status=enabled
dhcpc.status=enabled
dhcpd.status=disabled
ebtables.status=enabled
ebtables.sys.arpnat.1.devname=ath0
ebtables.sys.arpnat.1.status=enabled
ebtables.sys.arpnat.status=disabled
ebtables.sys.eap.1.devname=ath0
ebtables.sys.eap.1.status=enabled
ebtables.sys.eap.status=enabled
ebtables.sys.status=enabled
ebtables.sys.vlan.status=disabled
gui.language=en_US
httpd.https.port=443
httpd.https.status=enabled
httpd.status=enabled
netconf.1.autoip.status=disabled
netconf.1.devname=eth0
netconf.1.hwaddr.mac=
netconf.1.hwaddr.status=disabled
netconf.1.ip=0.0.0.0
netconf.1.mtu=1500
netconf.1.netmask=255.255.255.0
netconf.1.promisc=enabled
netconf.1.role=bridge_port
netconf.1.status=enabled
netconf.1.up=enabled
netconf.2.allmulti=enabled
netconf.2.autoip.status=disabled
netconf.2.devname=ath0
netconf.2.hwaddr.mac=
netconf.2.hwaddr.status=disabled
netconf.2.ip=0.0.0.0
netconf.2.mtu=1500
netconf.2.netmask=255.255.255.0
netconf.2.promisc=enabled
netconf.2.role=bridge_port
netconf.2.status=enabled
netconf.2.up=enabled
netconf.3.autoip.status=disabled
netconf.3.devname=br0
netconf.3.hwaddr.mac=
netconf.3.hwaddr.status=disabled
netconf.3.ip=0.0.0.0
netconf.3.mtu=1500
netconf.3.netmask=255.255.255.0
netconf.3.role=mlan
netconf.3.status=enabled
netconf.3.up=enabled
netconf.status=enabled
netmode=bridge
ppp.status=disabled
radio.1.ack.auto=enabled
radio.1.ackdistance=600
radio.1.acktimeout=25
radio.1.antenna.gain=16
radio.1.antenna.id=4
radio.1.cable.loss=0
radio.1.chanbw=40
radio.1.chanshift=0
radio.1.countrycode=276
radio.1.cwm.enable=0
radio.1.cwm.mode=2
radio.1.devname=ath0
radio.1.dfs.status=enabled
radio.1.forbiasauto=0
radio.1.freq=0
radio.1.ieee_mode=11naht40
radio.1.mcastrate=15
radio.1.mode=master
radio.1.obey=enabled
radio.1.polling=enabled
radio.1.pollingnoack=0
radio.1.pollingpri=
radio.1.rate.auto=enabled
radio.1.rate.mcs=15
radio.1.reg_obey=enabled
radio.1.status=enabled
radio.1.subsystemid=0xe815
radio.1.txpower=20
radio.countrycode=276
radio.rate_module=atheros
radio.status=enabled
resolv.host.1.name=wurze2_3
resolv.host.1.status=enabled
resolv.nameserver.1.ip=
resolv.nameserver.1.status=enabled
resolv.nameserver.2.ip=
resolv.nameserver.2.status=enabled
resolv.status=disabled
route.1.comment=
route.1.devname=br0
route.1.gateway=192.168.1.1
route.1.ip=0.0.0.0
route.1.netmask=0
route.1.status=disabled
route.status=enabled
snmp.community=reudnetz
snmp.contact=reudnetz
snmp.location=reudnetz
snmp.status=enabled
sshd.auth.key.1.comment=yannik@Hydrogen
sshd.auth.key.1.status=enabled
sshd.auth.key.1.type=ssh-rsa
sshd.auth.key.1.value=AAAAB3NzaC1yc2EAAAADAQABAAABAQDelf/wYfaV9MgefRzySO9cH8F9zswsYZ5i/huq73VpxQd6VJWsLxMUdaevkeA2v4QgTdweh2sWFSdZoTskmh0JvfQw4GVO0kZBVtTqrh8jf/9arMGGnkMyp7qbfZr1Ewa/SAeGU/XX4XhmFda8D38oKdhpX5FVmbOXu2cpWOz/hLLcRm4GNXGsApJfqrmUEXrRHxQCUEYG2Gi6Q3GbbSKbt0rskfMQ4O5TDSwvPsI8yJVC7dCxVSIPmXjysTfRkXSAVZOBGfiZBKeUCaEiZ20rTbhJkXOlAVVsnhf2mfLOpgx7+/g0g/tceU3RxWkSjizcdWyWYBbXroVtf22Zu6+H
sshd.auth.key.2.comment=a@echo
sshd.auth.key.2.status=enabled
sshd.auth.key.2.type=ssh-rsa
sshd.auth.key.2.value=AAAAB3NzaC1yc2EAAAADAQABAAABAQC9gm2ycpPksVSTPAHFa3FW93nIW0kLo7+U4c6yj0Ggxn0TeTvmtR/+wFwAWo6u6ftDAqkErykDkFg7/T566/Nsxxhl/Gzv82yVZvE8TeyOI282w9rOjhIWMwXYzBUtgDau8hfT57XezfCy1cJphvyEWqbf1c7FLVAQ6JItTsVXeUz0OBD3xF2lCp98UpEM8QdPaIl3hcGasyZE649z4ba1aWg6yHpPum65ZhRrFom/79/AVjAX/1U21XUkqaUQzfakbhWi2CXlty5CLrc6XNyizMfbGuktiQJ1ytE9z5+hpVIl3YjG7VIoutvfbtz3e887Ye7sR/jU4DKBaoyG7fAR
sshd.auth.key.3.comment=amanita@reudnetz.org
sshd.auth.key.3.status=enabled
sshd.auth.key.3.type=ssh-rsa
sshd.auth.key.3.value=AAAAB3NzaC1yc2EAAAADAQABAAACAQDUIZhEESnVUtjYgbxheBWMDVMU10r0PviGUhH14ar88SITx+dO5z28ACUPL6pFqni/gYW2bd1MDRUVskV+O+Z/rVAxwjokADGHXmWbUPeB1fy2t1RZ6iQ/85eLR4A4KDG/pMabhvVhM+u+TqKE6YlWwNrd9eKyeuDMm7gHcTjPetdacmdwDRzEwEYfT5I1xNFv7R0G8HzlFQbxqlYBvpuH1zOeI7MgPHR8K8a3E4AtLqxMcC+fNdJQYB+ksFVM2TrpOSCwcIEqzjtonaUL648N3fLZVgCmq5CzY8aGdBCLy/mnM/npUY9Io1SiP4g7X1Dio+iNdwzxOvw/7yOUrDxKCtTYXhOaYHWluhFtPXqJddpEsIPOuFSgdWLsDMfoYEAf8427TRWj0Eg73dNP5YImmlvbW5nkKRsibLBtMJLbamMF3hsjoKvpIcLO/vnGPPL0ZN6g759dTrdfnodW1tRr4ckPNi2254pkJg6KqnwjnqAGr/pWWmYb4t+sNHwUZCfLq/pw8X0CfarbqeNddt2sHYmGfnzVJ5oZv3fbLqB45iAR7FRpngY3lDE4ejZVMZGVzeztZKsBK3M801ZhEu49LTm5CDVs9/XtesloknNTSBk1GLVDC4oeQJ3GuRsQCOh/5NMgsYC4HgEJcyad5grzO/xre7ZcNMtCi/w8aMAJMQ==
sshd.auth.key.4.comment=inocybe@reudnetz.org
sshd.auth.key.4.status=enabled
sshd.auth.key.4.type=ssh-rsa
sshd.auth.key.4.value=AAAAB3NzaC1yc2EAAAADAQABAAACAQC7v7FvkxQ/DpCMhbqYLlxGP+YRvE2S+ofyi8O4w/0MuxFruWvmXud1UDhCyKl2YZKTuWOUhduf9ESljL+T6Oqm0tOPBZ5YBvvyV10j8uSgmlZBGdaJJjoWOvM2vCddW5WqZg19wnIfYHyPrpr48FRuKn3ZCBg9UmvwoSR46IL96bIfgzCDEkRySQ/JM2ACGXWrK3ftKvCkfFF90M4e9pXtyZyO1Dk/Wo+IGpZj3JGsLxzF3onAQ/Jueb0kBFpo36sz71iD7aj3ZehuLfFkLwiwLif07/pRob20h1vq6FeOg6JcbBDQU2TluneZ94RT+hplxjG99DD11sOXgAHWREOMsyqaAISeH8VGp4UdTw36F2i5z+gpBmrSBFaMxFm3iPI4ROu6EeKD92jq5ymADICuXn9UdcddYi+6fyhP+SuxS3KYuAWIjXi35wrHjxN5YLL56CBN2i0VeJ4AXIo4+oIIXIBy9KZYZKxsftGOm8/nnErpmFDX63Vqxd+vDY/JUUAswcWxnOdba97FKORBEnagchoCgxHK22yIbY38W1jXa3tq2XxIlAACRxLdYrF1Lp2sIZxtAkPcCC2JlhJYLwadFDYllxcn5d7npIV3y2R3aghyOKjxqPzPDnPF+7B/3zWOYSohkHvkFxNIuL20kocdcHVCukAXRCd+LdRFzWUU3w==
sshd.auth.key.5.comment=gnummig@gmail.com
sshd.auth.key.5.status=enabled
sshd.auth.key.5.type=ssh-rsa
sshd.auth.key.5.value=AAAAB3NzaC1yc2EAAAADAQABAAACAQC4W5CtqmLJj+lWzethWfBra9ogI6W30HQWCrRfccEi236lcpsX5k6O+suEoA7HwVDzcIonHMdahlrB8Z7cW8AubJ2ykhNWk/0oVN8TF6eUNS8XoridNwAE7zSOOxP7O2A1x+sGH2PuCBtVpZvgETTsothnZJH1bs2ya3pn8l/NJg2VUnj7bxcK89nMQUH6Y+m0d2faJnOJJEx6e4k25buTR6/osjJd7fd/lFS8H1qWgN3mM891yMlpW9F+be+NQfpyo6QktT+aMkRsosAqAwtsAVECvXdEDhyge2XJHPAaYREnHKN5SNJifOrB3evMDdJRUshu1jXOIEOJJueQhIPfJuriCR+WH6YmG2XZ3nkPpk/aqCaWMnXWpNrbsiTFVRsAzrvKU8RQtfnWU3PD358dcpmTAhA+5rHgYAYQiNovwQb6BvxebX6aKIrSWWj5tnrfhykRe4gWhMHQe5E2fxB1yx3H/Hxwwc3d/uIB6utrckP2vUKksjd0eXb218hGLtCJJ3WWl3sgJpVMCB5yOoXePf6q0oSmbb6oNDl3ILMhFV7tc8ezIdMmpZNIxkobA5Kfm/Oujx2tFw52FiwmR5EPJfZojeZa81iplH0f652isACijmSI/WdHGpejca/1s3P888GxH/G9Flln8vI/qQ1cFryy1+AAuFDhULdUYu50gQ==
sshd.auth.passwd=disabled
sshd.port=22
sshd.status=enabled
system.button.reset=disabled
system.cfg.version=65546
system.date.status=disabled
system.date.timestamp=
system.eirp.status=disabled
system.latitude=
system.longitude=
system.timezone=GMT
update.check.status=enabled
users.1.name=reudnetz
users.1.password=$1$pX.zGqdr$26Dgkm/.7s24EB0PBRPNO1
users.1.status=enabled
users.2.status=disabled
users.status=enabled
vlan.status=disabled
wireless.1.addmtikie=enabled
wireless.1.ap=
wireless.1.authmode=1
wireless.1.autowds=disabled
wireless.1.devname=ath0
wireless.1.hide_ssid=disabled
wireless.1.mac_acl.policy=allow
wireless.1.mac_acl.status=disabled
wireless.1.scan_list.channels=5770,5775,5780,5785,5790,5795,5800,5805,5810,5815,5820,5825,5830,5835,5840,5845,5850,5855,5860
wireless.1.scan_list.status=enabled
wireless.1.security.type=none
wireless.1.ssid=slowpoke
wireless.1.status=enabled
wireless.1.wds.1.peer=
wireless.1.wds.2.peer=
wireless.1.wds.3.peer=
wireless.1.wds.4.peer=
wireless.1.wds.5.peer=
wireless.1.wds.6.peer=
wireless.1.wds.status=enabled
wireless.hideindoor.status=disabled
wireless.status=enabled
wpasupplicant.device.1.devname=ath0
wpasupplicant.device.1.driver=madwifi
wpasupplicant.device.1.profile=WPA-PSK
wpasupplicant.device.1.status=disabled
wpasupplicant.profile.1.name=WPA-PSK
wpasupplicant.profile.1.network.1.bssid=
wpasupplicant.profile.1.network.1.eap.1.status=disabled
wpasupplicant.profile.1.network.1.key_mgmt.1.name=WPA-PSK
wpasupplicant.profile.1.network.1.pairwise.1.name=CCMP
wpasupplicant.profile.1.network.1.proto.1.name=RSN
wpasupplicant.profile.1.network.1.psk=gibthiereinpasswortein
wpasupplicant.profile.1.network.1.ssid=sichlor
wpasupplicant.status=disabled

View file

@ -0,0 +1,403 @@
aaa.1.status=disabled
radio.1.ani.status=disabled
wireless.1.sens=0
radio.1.thresh62g=
radio.1.thresh62b=
radio.1.thresh62a=
wireless.1.l2_isolation=disabled
netconf.2.allmulti=enabled
netconf.2.autoneg=enabled
radio.1.ampdu.status=enabled
radio.1.ampdu.bytes=50000
radio.1.ampdu.frames=32
wireless.1.signal_led4=68
wireless.1.signal_led3=73
wireless.1.signal_led2=76
wireless.1.signal_led1=84
wireless.1.signal_led_status=enabled
wireless.1.compression=0
wireless.1.frameburst=0
wireless.1.fastframes=0
radio.1.rts=off
wireless.1.wmmlevel=
wireless.1.wmm=enabled
aaa.1.wpa.psk=gibhiereinpasswortein
aaa.status=disabled
bridge.status=enabled
bridge.1.status=enabled
bridge.1.devname=br0
bridge.1.stp.status=disabled
bridge.1.port.1.status=enabled
bridge.1.port.1.devname=ath0
bridge.1.port.2.status=enabled
bridge.1.port.2.devname=eth0
bridge.1.comment=management bridge
dhcp6c.status=disabled
dhcp6d.status=disabled
dhcpc.status=enabled
dhcpc.1.devname=br0
dhcpc.1.fallback=192.168.10.1
dhcpc.1.fallback_netmask=255.255.255.0
dhcpc.1.status=enabled
dhcpd.status=enabled
dhcpd.1.status=disabled
dhcpd.1.dns.1.server=
dhcpd.1.dns.1.status=disabled
dhcpd.1.dns.2.server=
dhcpd.1.dns.2.status=disabled
dhcpd.1.devname=eth0
dhcpd.1.dnsproxy=enabled
dhcpd.1.end=10.6.5.254
dhcpd.1.lease_time=600
dhcpd.1.netmask=255.255.255.0
dhcpd.1.start=10.6.4.2
dhcpd.2.status=enabled
dhcpd.2.dns.1.server=
dhcpd.2.dns.1.status=enabled
dhcpd.2.dns.2.server=
dhcpd.2.dns.2.status=enabled
dhcpd.2.devname=eth0.101
dhcpd.2.dnsproxy=disabled
dhcpd.2.end=10.6.8.254
dhcpd.2.lease_time=3600
dhcpd.2.netmask=255.255.255.0
dhcpd.2.start=10.6.8.2
dhcpd.3.status=enabled
dhcpd.3.dns.1.server=
dhcpd.3.dns.1.status=enabled
dhcpd.3.dns.2.server=
dhcpd.3.dns.2.status=enabled
dhcpd.3.devname=eth0.102
dhcpd.3.dnsproxy=disabled
dhcpd.3.end=10.6.9.254
dhcpd.3.lease_time=3600
dhcpd.3.netmask=255.255.255.0
dhcpd.3.start=10.6.9.2
dhcpd.4.status=enabled
dhcpd.4.dns.1.server=
dhcpd.4.dns.1.status=enabled
dhcpd.4.dns.2.server=
dhcpd.4.dns.2.status=enabled
dhcpd.4.devname=eth0.103
dhcpd.4.dnsproxy=disabled
dhcpd.4.end=10.6.10.254
dhcpd.4.lease_time=3600
dhcpd.4.netmask=255.255.255.0
dhcpd.4.start=10.6.10.2
dhcpd.5.status=enabled
dhcpd.5.dns.1.server=
dhcpd.5.dns.1.status=enabled
dhcpd.5.dns.2.server=
dhcpd.5.dns.2.status=enabled
dhcpd.5.devname=eth0.104
dhcpd.5.dnsproxy=disabled
dhcpd.5.end=10.6.11.254
dhcpd.5.lease_time=3600
dhcpd.5.netmask=255.255.255.0
dhcpd.5.start=10.6.11.2
discovery.cdp.status=enabled
discovery.status=enabled
dyndns.status=disabled
ebtables.status=enabled
ebtables.sys.arpnat.1.devname=ath0
ebtables.sys.arpnat.1.status=enabled
ebtables.sys.arpnat.status=disabled
ebtables.sys.eap.1.devname=ath0
ebtables.sys.eap.1.status=enabled
ebtables.sys.eap.status=enabled
ebtables.sys.status=enabled
ebtables.sys.vlan.status=enabled
ebtables.sys.vlan.1.status=enabled
ebtables.sys.vlan.1.devname=eth0
ebtables.sys.vlan.1.id=101
ebtables.sys.vlan.1.comment=switchport 1
ebtables.sys.vlan.2.status=enabled
ebtables.sys.vlan.2.devname=eth0
ebtables.sys.vlan.2.id=102
ebtables.sys.vlan.2.comment=switchport 2
ebtables.sys.vlan.3.status=enabled
ebtables.sys.vlan.3.devname=eth0
ebtables.sys.vlan.3.id=103
ebtables.sys.vlan.3.comment=switchport 3
ebtables.sys.vlan.4.status=enabled
ebtables.sys.vlan.4.devname=eth0
ebtables.sys.vlan.4.id=104
ebtables.sys.vlan.4.comment=switchport 4
gui.language=en_US
gui.network.advanced.status=enabled
httpd.https.port=443
httpd.https.status=enabled
httpd.port=80
httpd.session.timeout=900
httpd.status=enabled
ip6tables.status=disabled
iptables.status=enabled
iptables.1.status=enabled
iptables.1.cmd=-A FIREWALL --src 10.6.8.0/22 --dst 192.168.42.1/32 -j ACCEPT
iptables.1.comment=allow outgoing connection to the server and the rest of the internet
iptables.2.status=enabled
iptables.2.cmd=-A FIREWALL --src 10.6.8.0/22 --dst ! 192.168.42.0/24 -j ACCEPT
iptables.2.comment=only allow traffic from correct subnet, disallow management access
iptables.3.status=enabled
iptables.3.cmd=-A FIREWALL -i br0 -j ACCEPT
iptables.3.comment=accept all incoming traffic from wlan. this ist important to avoid the management rules from ubiquiti, which disallows incoming connections to the management interface
iptables.4.status=enabled
iptables.4.cmd=-A FIREWALL -i eth0 --protocol 17 --src 0.0.0.0/0 --sport 67:68 --dport 67:68 -j ACCEPT
iptables.4.comment=allow DHCP, dhcpclients use 0.0.0.0 until they get an adress
iptables.5.status=enabled
iptables.5.cmd=-A FIREWALL -i eth0.101 --protocol 17 --src 0.0.0.0/0 --sport 67:68 --dport 67:68 -j ACCEPT
iptables.5.comment=allow dhcp
iptables.6.status=enabled
iptables.6.cmd=-A FIREWALL -i eth0.102 --protocol 17 --src 0.0.0.0/0 --sport 67:68 --dport 67:68 -j ACCEPT
iptables.6.comment=allow dhcp
iptables.7.status=enabled
iptables.7.cmd=-A FIREWALL -i eth0.103 --protocol 17 --src 0.0.0.0/0 --sport 67:68 --dport 67:68 -j ACCEPT
iptables.7.comment=allow dhcp
iptables.8.status=enabled
iptables.8.cmd=-A FIREWALL -i eth0.104 --protocol 17 --src 0.0.0.0/0 --sport 67:68 --dport 67:68 -j ACCEPT
iptables.8.comment=allow dhcp
iptables.9.status=enabled
iptables.9.cmd=-A FIREWALL -j DROP
iptables.9.comment=disallow anything else
iptables.sys.dmz.status=disabled
iptables.sys.fw.status=enabled
iptables.sys.masq.status=disabled
iptables.sys.mgmt.1.devname=br0
iptables.sys.mgmt.1.status=disabled
iptables.sys.mgmt.status=disabled
iptables.sys.portfw.status=disabled
iptables.sys.status=enabled
iptables.sys.upnpd.status=disabled
iptables.sys.upnpd.devname=
netconf.status=enabled
netconf.1.status=enabled
netconf.1.devname=br0
netconf.1.mtu=1500
netconf.1.role=wan
netconf.1.autoip.status=disabled
netconf.1.hwaddr.status=disabled
netconf.1.hwaddr.mac=
netconf.1.ip=0.0.0.0
netconf.1.netmask=255.255.255.0
netconf.1.promisc=enabled
netconf.1.up=enabled
netconf.2.status=enabled
netconf.2.devname=eth0
netconf.2.mtu=1500
netconf.2.role=bridge_port
netconf.2.autoip.status=disabled
netconf.2.hwaddr.status=disabled
netconf.2.hwaddr.mac=
netconf.2.ip=0.0.0.0
netconf.2.netmask=255.255.255.0
netconf.2.promisc=enabled
netconf.2.up=enabled
netconf.3.status=enabled
netconf.3.devname=eth0.101
netconf.3.mtu=1500
netconf.3.role=lan
netconf.3.autoip.status=disabled
netconf.3.hwaddr.status=disabled
netconf.3.hwaddr.mac=
netconf.3.ip=10.6.8.1
netconf.3.netmask=255.255.255.0
netconf.3.up=enabled
netconf.4.status=enabled
netconf.4.devname=eth0.102
netconf.4.mtu=1500
netconf.4.role=lan
netconf.4.autoip.status=disabled
netconf.4.hwaddr.status=disabled
netconf.4.hwaddr.mac=
netconf.4.ip=10.6.9.1
netconf.4.netmask=255.255.255.0
netconf.4.up=enabled
netconf.5.status=disabled
netconf.5.devname=br0
netconf.5.mtu=1500
netconf.5.role=
netconf.5.autoip.status=disabled
netconf.5.hwaddr.status=disabled
netconf.5.hwaddr.mac=
netconf.5.up=enabled
netconf.6.status=enabled
netconf.6.devname=ath0
netconf.6.mtu=1500
netconf.6.role=bridge_port
netconf.6.autoip.status=disabled
netconf.6.hwaddr.status=disabled
netconf.6.hwaddr.mac=
netconf.6.ip=0.0.0.0
netconf.6.netmask=255.255.255.0
netconf.6.up=enabled
netconf.7.status=disabled
netconf.7.devname=br0
netconf.7.mtu=1500
netconf.7.role=mlan
netconf.7.autoip.status=disabled
netconf.7.hwaddr.status=disabled
netconf.7.hwaddr.mac=
netconf.7.up=enabled
netconf.8.status=enabled
netconf.8.devname=eth0.103
netconf.8.mtu=1500
netconf.8.role=lan
netconf.8.autoip.status=disabled
netconf.8.hwaddr.status=disabled
netconf.8.hwaddr.mac=
netconf.8.ip=10.6.10.1
netconf.8.netmask=255.255.255.0
netconf.8.up=enabled
netconf.9.status=enabled
netconf.9.devname=eth0.104
netconf.9.mtu=1500
netconf.9.role=lan
netconf.9.autoip.status=disabled
netconf.9.hwaddr.status=disabled
netconf.9.hwaddr.mac=
netconf.9.ip=10.6.11.1
netconf.9.netmask=255.255.255.0
netconf.9.up=enabled
netmode=router
ntpclient.status=disabled
ppp.status=disabled
pwdog.status=disabled
radio.1.ack.auto=enabled
radio.1.ackdistance=600
radio.1.acktimeout=25
radio.1.antenna.gain=16
radio.1.antenna.id=4
radio.1.cable.loss=0
radio.1.chanbw=40
radio.1.countrycode=276
radio.1.cwm.enable=0
radio.1.cwm.mode=1
radio.1.devname=ath0
radio.1.dfs.status=enabled
radio.1.forbiasauto=0
radio.1.ieee_mode=11naht40
radio.1.mcastrate=15
radio.1.mode=managed
radio.1.obey=enabled
radio.1.polling=enabled
radio.1.pollingnoack=0
radio.1.pollingpri=
radio.1.rate.auto=enabled
radio.1.rate.mcs=15
radio.1.reg_obey=enabled
radio.1.status=enabled
radio.1.subsystemid=0xe815
radio.1.txpower=20
radio.countrycode=276
radio.rate_module=atheros
radio.status=enabled
resolv.status=disabled
resolv.host.1.name=ida39_1
resolv.host.1.status=enabled
resolv.nameserver.1.ip=
resolv.nameserver.1.status=enabled
resolv.nameserver.2.ip=
resolv.nameserver.2.status=enabled
route.status=enabled
route.1.ip=
route.1.netmask=
route.1.gateway=
route.1.comment=
route.1.status=disabled
route6.status=enabled
route6.1.ip=
route6.1.netmask=
route6.1.gateway=
route6.1.comment=
route6.1.status=enabled
snmp.community=reudnetz
snmp.contact=reudnetz
snmp.location=reudnetz
snmp.status=enabled
sshd.auth.key.1.comment=yannik@Hydrogen
sshd.auth.key.1.status=enabled
sshd.auth.key.1.type=ssh-rsa
sshd.auth.key.1.value=AAAAB3NzaC1yc2EAAAADAQABAAABAQDelf/wYfaV9MgefRzySO9cH8F9zswsYZ5i/huq73VpxQd6VJWsLxMUdaevkeA2v4QgTdweh2sWFSdZoTskmh0JvfQw4GVO0kZBVtTqrh8jf/9arMGGnkMyp7qbfZr1Ewa/SAeGU/XX4XhmFda8D38oKdhpX5FVmbOXu2cpWOz/hLLcRm4GNXGsApJfqrmUEXrRHxQCUEYG2Gi6Q3GbbSKbt0rskfMQ4O5TDSwvPsI8yJVC7dCxVSIPmXjysTfRkXSAVZOBGfiZBKeUCaEiZ20rTbhJkXOlAVVsnhf2mfLOpgx7+/g0g/tceU3RxWkSjizcdWyWYBbXroVtf22Zu6+H
sshd.auth.key.2.comment=a@echo
sshd.auth.key.2.status=enabled
sshd.auth.key.2.type=ssh-rsa
sshd.auth.key.2.value=AAAAB3NzaC1yc2EAAAADAQABAAABAQC9gm2ycpPksVSTPAHFa3FW93nIW0kLo7+U4c6yj0Ggxn0TeTvmtR/+wFwAWo6u6ftDAqkErykDkFg7/T566/Nsxxhl/Gzv82yVZvE8TeyOI282w9rOjhIWMwXYzBUtgDau8hfT57XezfCy1cJphvyEWqbf1c7FLVAQ6JItTsVXeUz0OBD3xF2lCp98UpEM8QdPaIl3hcGasyZE649z4ba1aWg6yHpPum65ZhRrFom/79/AVjAX/1U21XUkqaUQzfakbhWi2CXlty5CLrc6XNyizMfbGuktiQJ1ytE9z5+hpVIl3YjG7VIoutvfbtz3e887Ye7sR/jU4DKBaoyG7fAR
sshd.auth.key.3.comment=amanita@reudnetz.org
sshd.auth.key.3.status=enabled
sshd.auth.key.3.type=ssh-rsa
sshd.auth.key.3.value=AAAAB3NzaC1yc2EAAAADAQABAAACAQDUIZhEESnVUtjYgbxheBWMDVMU10r0PviGUhH14ar88SITx+dO5z28ACUPL6pFqni/gYW2bd1MDRUVskV+O+Z/rVAxwjokADGHXmWbUPeB1fy2t1RZ6iQ/85eLR4A4KDG/pMabhvVhM+u+TqKE6YlWwNrd9eKyeuDMm7gHcTjPetdacmdwDRzEwEYfT5I1xNFv7R0G8HzlFQbxqlYBvpuH1zOeI7MgPHR8K8a3E4AtLqxMcC+fNdJQYB+ksFVM2TrpOSCwcIEqzjtonaUL648N3fLZVgCmq5CzY8aGdBCLy/mnM/npUY9Io1SiP4g7X1Dio+iNdwzxOvw/7yOUrDxKCtTYXhOaYHWluhFtPXqJddpEsIPOuFSgdWLsDMfoYEAf8427TRWj0Eg73dNP5YImmlvbW5nkKRsibLBtMJLbamMF3hsjoKvpIcLO/vnGPPL0ZN6g759dTrdfnodW1tRr4ckPNi2254pkJg6KqnwjnqAGr/pWWmYb4t+sNHwUZCfLq/pw8X0CfarbqeNddt2sHYmGfnzVJ5oZv3fbLqB45iAR7FRpngY3lDE4ejZVMZGVzeztZKsBK3M801ZhEu49LTm5CDVs9/XtesloknNTSBk1GLVDC4oeQJ3GuRsQCOh/5NMgsYC4HgEJcyad5grzO/xre7ZcNMtCi/w8aMAJMQ==
sshd.auth.key.4.comment=inocybe@reudnetz.org
sshd.auth.key.4.status=enabled
sshd.auth.key.4.type=ssh-rsa
sshd.auth.key.4.value=AAAAB3NzaC1yc2EAAAADAQABAAACAQC7v7FvkxQ/DpCMhbqYLlxGP+YRvE2S+ofyi8O4w/0MuxFruWvmXud1UDhCyKl2YZKTuWOUhduf9ESljL+T6Oqm0tOPBZ5YBvvyV10j8uSgmlZBGdaJJjoWOvM2vCddW5WqZg19wnIfYHyPrpr48FRuKn3ZCBg9UmvwoSR46IL96bIfgzCDEkRySQ/JM2ACGXWrK3ftKvCkfFF90M4e9pXtyZyO1Dk/Wo+IGpZj3JGsLxzF3onAQ/Jueb0kBFpo36sz71iD7aj3ZehuLfFkLwiwLif07/pRob20h1vq6FeOg6JcbBDQU2TluneZ94RT+hplxjG99DD11sOXgAHWREOMsyqaAISeH8VGp4UdTw36F2i5z+gpBmrSBFaMxFm3iPI4ROu6EeKD92jq5ymADICuXn9UdcddYi+6fyhP+SuxS3KYuAWIjXi35wrHjxN5YLL56CBN2i0VeJ4AXIo4+oIIXIBy9KZYZKxsftGOm8/nnErpmFDX63Vqxd+vDY/JUUAswcWxnOdba97FKORBEnagchoCgxHK22yIbY38W1jXa3tq2XxIlAACRxLdYrF1Lp2sIZxtAkPcCC2JlhJYLwadFDYllxcn5d7npIV3y2R3aghyOKjxqPzPDnPF+7B/3zWOYSohkHvkFxNIuL20kocdcHVCukAXRCd+LdRFzWUU3w==
sshd.auth.key.5.comment=gnummig@gmail.com
sshd.auth.key.5.status=enabled
sshd.auth.key.5.type=ssh-rsa
sshd.auth.key.5.value=AAAAB3NzaC1yc2EAAAADAQABAAACAQC4W5CtqmLJj+lWzethWfBra9ogI6W30HQWCrRfccEi236lcpsX5k6O+suEoA7HwVDzcIonHMdahlrB8Z7cW8AubJ2ykhNWk/0oVN8TF6eUNS8XoridNwAE7zSOOxP7O2A1x+sGH2PuCBtVpZvgETTsothnZJH1bs2ya3pn8l/NJg2VUnj7bxcK89nMQUH6Y+m0d2faJnOJJEx6e4k25buTR6/osjJd7fd/lFS8H1qWgN3mM891yMlpW9F+be+NQfpyo6QktT+aMkRsosAqAwtsAVECvXdEDhyge2XJHPAaYREnHKN5SNJifOrB3evMDdJRUshu1jXOIEOJJueQhIPfJuriCR+WH6YmG2XZ3nkPpk/aqCaWMnXWpNrbsiTFVRsAzrvKU8RQtfnWU3PD358dcpmTAhA+5rHgYAYQiNovwQb6BvxebX6aKIrSWWj5tnrfhykRe4gWhMHQe5E2fxB1yx3H/Hxwwc3d/uIB6utrckP2vUKksjd0eXb218hGLtCJJ3WWl3sgJpVMCB5yOoXePf6q0oSmbb6oNDl3ILMhFV7tc8ezIdMmpZNIxkobA5Kfm/Oujx2tFw52FiwmR5EPJfZojeZa81iplH0f652isACijmSI/WdHGpejca/1s3P888GxH/G9Flln8vI/qQ1cFryy1+AAuFDhULdUYu50gQ==
sshd.auth.passwd=disabled
sshd.port=22
sshd.status=enabled
syslog.remote.status=disabled
syslog.remote.tcp.status=disabled
syslog.status=disabled
system.button.reset=disabled
system.cfg.version=65546
system.date.status=disabled
system.date.timestamp=
system.eirp.status=disabled
system.latitude=
system.longitude=
system.timezone=GMT
telnetd.status=disabled
tshaper.status=disabled
update.check.status=enabled
upnpd.status=disabled
upnpd.devname=
users.1.name=reudnetz
users.1.password=$1$FC5eCMsQ$/d9KTwkbqMxAOWXS9SehB0
users.1.status=enabled
users.2.status=disabled
users.status=enabled
vlan.status=enabled
vlan.1.status=enabled
vlan.1.devname=eth0
vlan.1.id=101
vlan.1.comment=switchport 1
vlan.2.status=enabled
vlan.2.devname=eth0
vlan.2.id=102
vlan.2.comment=switchport 2
vlan.3.status=enabled
vlan.3.devname=eth0
vlan.3.id=103
vlan.3.comment=switchport 3
vlan.4.status=enabled
vlan.4.devname=eth0
vlan.4.id=104
vlan.4.comment=switchport 4
wireless.1.addmtikie=enabled
wireless.1.ap=
wireless.1.authmode=1
wireless.1.devname=ath0
wireless.1.hide_ssid=disabled
wireless.1.scan_list.channels=
wireless.1.scan_list.status=disabled
wireless.1.security.type=none
wireless.1.ssid=smogsmog
wireless.1.status=enabled
wireless.1.wds.status=enabled
wireless.hideindoor.status=disabled
wireless.status=enabled
wpasupplicant.device.1.devname=ath0
wpasupplicant.device.1.driver=madwifi
wpasupplicant.device.1.profile=WPA-PSK
wpasupplicant.device.1.status=enabled
wpasupplicant.profile.1.name=WPA-PSK
wpasupplicant.profile.1.network.1.bssid=
wpasupplicant.profile.1.network.1.eap.1.status=disabled
wpasupplicant.profile.1.network.1.key_mgmt.1.name=WPA-PSK
wpasupplicant.profile.1.network.1.pairwise.1.name=CCMP
wpasupplicant.profile.1.network.1.proto.1.name=RSN
wpasupplicant.profile.1.network.1.psk=gibhiereinpasswortein
wpasupplicant.profile.1.network.1.ssid=smogsmog
wpasupplicant.status=enabled

View file

@ -0,0 +1,228 @@
aaa.1.status=disabled
aaa.1.wpa.psk=gibthiereinpasswortein
aaa.status=disabled
bridge.status=disabled
dhcp6c.status=disabled
dhcp6d.status=disabled
dhcpc.1.devname=ath0
dhcpc.1.fallback=192.168.10.1
dhcpc.1.fallback_netmask=255.255.255.0
dhcpc.1.status=enabled
dhcpc.status=enabled
dhcpd.1.devname=eth0
dhcpd.1.dns.1.server=
dhcpd.1.dns.1.status=disabled
dhcpd.1.dns.2.server=
dhcpd.1.dns.2.status=disabled
dhcpd.1.dnsproxy=enabled
dhcpd.1.end=10.6.5.254
dhcpd.1.lease_time=600
dhcpd.1.netmask=255.255.255.0
dhcpd.1.start=10.6.5.2
dhcpd.1.status=enabled
dhcpd.status=enabled
discovery.cdp.status=enabled
discovery.status=enabled
dyndns.status=disabled
ebtables.status=disabled
ebtables.sys.arpnat.status=disabled
ebtables.sys.eap.1.devname=ath0
ebtables.sys.eap.1.status=enabled
ebtables.sys.eap.status=enabled
ebtables.sys.status=disabled
ebtables.sys.vlan.status=disabled
gui.language=en_US
gui.network.advanced.status=enabled
httpd.https.port=443
httpd.https.status=enabled
httpd.port=80
httpd.session.timeout=900
httpd.status=enabled
ip6tables.status=disabled
iptables.1.cmd=-A FIREWALL -i eth0 --src 10.6.5.0/24 --dst 192.168.42.1/32 -j ACCEPT
iptables.1.comment=allow outgoing connection to the server and the rest of the internet
iptables.1.status=enabled
iptables.2.cmd=-A FIREWALL -i eth0 --src 10.6.5.0/24 --dst ! 192.168.42.0/24 -j ACCEPT
iptables.2.comment=only allow traffic from correct subnet, disallow management access
iptables.2.status=enabled
iptables.3.cmd=-A FIREWALL -i ath0 -j ACCEPT
iptables.3.comment=accept all incoming traffic from wlan. this ist important to avoid the management rules from ubiquiti, which disallows incoming connections to the management interface
iptables.3.status=enabled
iptables.4.cmd=-A FIREWALL -i eth0 --protocol 17 --src 0.0.0.0/0 --sport 67:68 --dport 67:68 -j ACCEPT
iptables.4.comment=allow DHCP, dhcpclients use 0.0.0.0 until they get an adress
iptables.4.status=enabled
iptables.5.cmd=-A FIREWALL -j LOG
iptables.5.comment=log anything else
iptables.5.status=enabled
iptables.6.cmd=-A FIREWALL -j DROP
iptables.6.comment=disallow anything else
iptables.6.status=enabled
iptables.status=enabled
iptables.sys.dmz.status=disabled
iptables.sys.fw.status=enabled
iptables.sys.masq.status=disabled
iptables.sys.mgmt.1.devname=ath0
iptables.sys.mgmt.1.status=enabled
iptables.sys.mgmt.status=enabled
iptables.sys.portfw.status=disabled
iptables.sys.status=enabled
iptables.sys.upnpd.devname=
iptables.sys.upnpd.status=disabled
netconf.1.autoip.status=disabled
netconf.1.devname=ath0
netconf.1.hwaddr.mac=
netconf.1.hwaddr.status=disabled
netconf.1.ip=0.0.0.0
netconf.1.mtu=1500
netconf.1.netmask=255.255.255.0
netconf.1.promisc=enabled
netconf.1.role=wan
netconf.1.status=enabled
netconf.1.up=enabled
netconf.2.autoip.status=disabled
netconf.2.devname=eth0
netconf.2.hwaddr.mac=
netconf.2.hwaddr.status=disabled
netconf.2.ip=10.6.5.1
netconf.2.mtu=1500
netconf.2.netmask=255.255.255.0
netconf.2.promisc=enabled
netconf.2.role=lan
netconf.2.status=enabled
netconf.2.up=enabled
netconf.3.autoip.status=disabled
netconf.3.devname=ath0
netconf.3.hwaddr.mac=
netconf.3.hwaddr.status=disabled
netconf.3.mtu=1500
netconf.3.role=mlan
netconf.3.status=disabled
netconf.3.up=enabled
netconf.status=enabled
netmode=router
ntpclient.status=disabled
ppp.status=disabled
pwdog.status=disabled
radio.1.ack.auto=enabled
radio.1.ackdistance=600
radio.1.acktimeout=25
radio.1.antenna.gain=16
radio.1.antenna.id=4
radio.1.cable.loss=0
radio.1.chanbw=40
radio.1.countrycode=276
radio.1.cwm.enable=0
radio.1.cwm.mode=1
radio.1.devname=ath0
radio.1.dfs.status=enabled
radio.1.forbiasauto=0
radio.1.ieee_mode=11naht40
radio.1.mcastrate=15
radio.1.mode=managed
radio.1.obey=enabled
radio.1.polling=enabled
radio.1.pollingnoack=0
radio.1.pollingpri=
radio.1.rate.auto=enabled
radio.1.rate.mcs=15
radio.1.reg_obey=enabled
radio.1.status=enabled
radio.1.subsystemid=0xe815
radio.1.txpower=20
radio.countrycode=276
radio.rate_module=atheros
radio.status=enabled
resolv.host.1.name=NanoBeam M5 16
resolv.host.1.status=enabled
resolv.nameserver.1.ip=
resolv.nameserver.1.status=enabled
resolv.nameserver.2.ip=
resolv.nameserver.2.status=enabled
resolv.status=disabled
route.1.comment=
route.1.gateway=
route.1.ip=
route.1.netmask=
route.1.status=disabled
route.status=enabled
route6.1.comment=
route6.1.gateway=
route6.1.ip=
route6.1.netmask=
route6.1.status=enabled
route6.status=enabled
snmp.community=reudnetz
snmp.contact=reudnetz
snmp.location=reudnetz
snmp.status=enabled
sshd.auth.key.1.comment=yannik@Hydrogen
sshd.auth.key.1.status=enabled
sshd.auth.key.1.type=ssh-rsa
sshd.auth.key.1.value=AAAAB3NzaC1yc2EAAAADAQABAAABAQDelf/wYfaV9MgefRzySO9cH8F9zswsYZ5i/huq73VpxQd6VJWsLxMUdaevkeA2v4QgTdweh2sWFSdZoTskmh0JvfQw4GVO0kZBVtTqrh8jf/9arMGGnkMyp7qbfZr1Ewa/SAeGU/XX4XhmFda8D38oKdhpX5FVmbOXu2cpWOz/hLLcRm4GNXGsApJfqrmUEXrRHxQCUEYG2Gi6Q3GbbSKbt0rskfMQ4O5TDSwvPsI8yJVC7dCxVSIPmXjysTfRkXSAVZOBGfiZBKeUCaEiZ20rTbhJkXOlAVVsnhf2mfLOpgx7+/g0g/tceU3RxWkSjizcdWyWYBbXroVtf22Zu6+H
sshd.auth.key.2.comment=a@echo
sshd.auth.key.2.status=enabled
sshd.auth.key.2.type=ssh-rsa
sshd.auth.key.2.value=AAAAB3NzaC1yc2EAAAADAQABAAABAQC9gm2ycpPksVSTPAHFa3FW93nIW0kLo7+U4c6yj0Ggxn0TeTvmtR/+wFwAWo6u6ftDAqkErykDkFg7/T566/Nsxxhl/Gzv82yVZvE8TeyOI282w9rOjhIWMwXYzBUtgDau8hfT57XezfCy1cJphvyEWqbf1c7FLVAQ6JItTsVXeUz0OBD3xF2lCp98UpEM8QdPaIl3hcGasyZE649z4ba1aWg6yHpPum65ZhRrFom/79/AVjAX/1U21XUkqaUQzfakbhWi2CXlty5CLrc6XNyizMfbGuktiQJ1ytE9z5+hpVIl3YjG7VIoutvfbtz3e887Ye7sR/jU4DKBaoyG7fAR
sshd.auth.key.3.comment=amanita@reudnetz.org
sshd.auth.key.3.status=enabled
sshd.auth.key.3.type=ssh-rsa
sshd.auth.key.3.value=AAAAB3NzaC1yc2EAAAADAQABAAACAQDUIZhEESnVUtjYgbxheBWMDVMU10r0PviGUhH14ar88SITx+dO5z28ACUPL6pFqni/gYW2bd1MDRUVskV+O+Z/rVAxwjokADGHXmWbUPeB1fy2t1RZ6iQ/85eLR4A4KDG/pMabhvVhM+u+TqKE6YlWwNrd9eKyeuDMm7gHcTjPetdacmdwDRzEwEYfT5I1xNFv7R0G8HzlFQbxqlYBvpuH1zOeI7MgPHR8K8a3E4AtLqxMcC+fNdJQYB+ksFVM2TrpOSCwcIEqzjtonaUL648N3fLZVgCmq5CzY8aGdBCLy/mnM/npUY9Io1SiP4g7X1Dio+iNdwzxOvw/7yOUrDxKCtTYXhOaYHWluhFtPXqJddpEsIPOuFSgdWLsDMfoYEAf8427TRWj0Eg73dNP5YImmlvbW5nkKRsibLBtMJLbamMF3hsjoKvpIcLO/vnGPPL0ZN6g759dTrdfnodW1tRr4ckPNi2254pkJg6KqnwjnqAGr/pWWmYb4t+sNHwUZCfLq/pw8X0CfarbqeNddt2sHYmGfnzVJ5oZv3fbLqB45iAR7FRpngY3lDE4ejZVMZGVzeztZKsBK3M801ZhEu49LTm5CDVs9/XtesloknNTSBk1GLVDC4oeQJ3GuRsQCOh/5NMgsYC4HgEJcyad5grzO/xre7ZcNMtCi/w8aMAJMQ==
sshd.auth.key.4.comment=inocybe@reudnetz.org
sshd.auth.key.4.status=enabled
sshd.auth.key.4.type=ssh-rsa
sshd.auth.key.4.value=AAAAB3NzaC1yc2EAAAADAQABAAACAQC7v7FvkxQ/DpCMhbqYLlxGP+YRvE2S+ofyi8O4w/0MuxFruWvmXud1UDhCyKl2YZKTuWOUhduf9ESljL+T6Oqm0tOPBZ5YBvvyV10j8uSgmlZBGdaJJjoWOvM2vCddW5WqZg19wnIfYHyPrpr48FRuKn3ZCBg9UmvwoSR46IL96bIfgzCDEkRySQ/JM2ACGXWrK3ftKvCkfFF90M4e9pXtyZyO1Dk/Wo+IGpZj3JGsLxzF3onAQ/Jueb0kBFpo36sz71iD7aj3ZehuLfFkLwiwLif07/pRob20h1vq6FeOg6JcbBDQU2TluneZ94RT+hplxjG99DD11sOXgAHWREOMsyqaAISeH8VGp4UdTw36F2i5z+gpBmrSBFaMxFm3iPI4ROu6EeKD92jq5ymADICuXn9UdcddYi+6fyhP+SuxS3KYuAWIjXi35wrHjxN5YLL56CBN2i0VeJ4AXIo4+oIIXIBy9KZYZKxsftGOm8/nnErpmFDX63Vqxd+vDY/JUUAswcWxnOdba97FKORBEnagchoCgxHK22yIbY38W1jXa3tq2XxIlAACRxLdYrF1Lp2sIZxtAkPcCC2JlhJYLwadFDYllxcn5d7npIV3y2R3aghyOKjxqPzPDnPF+7B/3zWOYSohkHvkFxNIuL20kocdcHVCukAXRCd+LdRFzWUU3w==
sshd.auth.key.5.comment=gnummig@gmail.com
sshd.auth.key.5.status=enabled
sshd.auth.key.5.type=ssh-rsa
sshd.auth.key.5.value=AAAAB3NzaC1yc2EAAAADAQABAAACAQC4W5CtqmLJj+lWzethWfBra9ogI6W30HQWCrRfccEi236lcpsX5k6O+suEoA7HwVDzcIonHMdahlrB8Z7cW8AubJ2ykhNWk/0oVN8TF6eUNS8XoridNwAE7zSOOxP7O2A1x+sGH2PuCBtVpZvgETTsothnZJH1bs2ya3pn8l/NJg2VUnj7bxcK89nMQUH6Y+m0d2faJnOJJEx6e4k25buTR6/osjJd7fd/lFS8H1qWgN3mM891yMlpW9F+be+NQfpyo6QktT+aMkRsosAqAwtsAVECvXdEDhyge2XJHPAaYREnHKN5SNJifOrB3evMDdJRUshu1jXOIEOJJueQhIPfJuriCR+WH6YmG2XZ3nkPpk/aqCaWMnXWpNrbsiTFVRsAzrvKU8RQtfnWU3PD358dcpmTAhA+5rHgYAYQiNovwQb6BvxebX6aKIrSWWj5tnrfhykRe4gWhMHQe5E2fxB1yx3H/Hxwwc3d/uIB6utrckP2vUKksjd0eXb218hGLtCJJ3WWl3sgJpVMCB5yOoXePf6q0oSmbb6oNDl3ILMhFV7tc8ezIdMmpZNIxkobA5Kfm/Oujx2tFw52FiwmR5EPJfZojeZa81iplH0f652isACijmSI/WdHGpejca/1s3P888GxH/G9Flln8vI/qQ1cFryy1+AAuFDhULdUYu50gQ==
sshd.auth.passwd=disabled
sshd.port=22
sshd.status=enabled
syslog.remote.status=disabled
syslog.remote.tcp.status=disabled
syslog.status=disabled
system.button.reset=disabled
system.cfg.version=65546
system.date.status=disabled
system.date.timestamp=
system.eirp.status=disabled
system.latitude=
system.longitude=
system.timezone=GMT
telnetd.status=disabled
tshaper.status=disabled
update.check.status=enabled
upnpd.devname=
upnpd.status=disabled
users.1.name=reudnetz
users.1.password=$1$FC5eCMsQ$/d9KTwkbqMxAOWXS9SehB0
users.1.status=enabled
users.2.status=disabled
users.status=enabled
vlan.status=disabled
wireless.1.addmtikie=enabled
wireless.1.ap=
wireless.1.authmode=1
wireless.1.devname=ath0
wireless.1.hide_ssid=disabled
wireless.1.scan_list.channels=
wireless.1.scan_list.status=disabled
wireless.1.security.type=none
wireless.1.ssid=slowpoke
wireless.1.status=enabled
wireless.1.wds.status=enabled
wireless.hideindoor.status=disabled
wireless.status=enabled
wpasupplicant.device.1.devname=ath0
wpasupplicant.device.1.driver=madwifi
wpasupplicant.device.1.profile=WPA-PSK
wpasupplicant.device.1.status=enabled
wpasupplicant.profile.1.name=WPA-PSK
wpasupplicant.profile.1.network.1.bssid=
wpasupplicant.profile.1.network.1.eap.1.status=disabled
wpasupplicant.profile.1.network.1.key_mgmt.1.name=WPA-PSK
wpasupplicant.profile.1.network.1.pairwise.1.name=CCMP
wpasupplicant.profile.1.network.1.proto.1.name=RSN
wpasupplicant.profile.1.network.1.psk=gibthiereinpasswortein
wpasupplicant.profile.1.network.1.ssid=slowpoke
wpasupplicant.status=enabled

View file

@ -0,0 +1,21 @@
# Router mit 4 Subnetzen in 4 VLANs
Konkret wurde ein Ubnt EdgeRouter X (SFP) konfiguriert.
Es werden zuerst 4 Interfaces definiert, eth_1 bis eth_4 (WAN an dem Router
auf eth_0). Jedes Interface bekommt eine IP Adresse entsprechend des Subnetzes.
Wichtig scheint `interface` zu sein was gleich für den DHCP Server (dnsmasq)
benutzt wird. `ifname` scheint beliebig zu zu sein.
Alles Interfaces bekommen ein eigenes VLAN, Standard ist VLAN 1 für LAN und VLAN
2 für WAN. Wir haben kein LAN sondern direkt WAN mit den einzelnen Subnetzen
verbunden. Also immer `<Port> 6t` (6t für *getaggt* an CPU).
Die LAN VLANs fangen einfach mit 101 aufwärts an (da VLAN 2 für WAN).
Jedem Interface wird dann ein DHCP Server zugeordnet, dabei wird das vorher
angegebene `ifname` hier zum `interface`
# vim options
# set tw=80

View file

@ -0,0 +1,59 @@
config dnsmasq
option domainneeded '1'
option boguspriv '1'
option filterwin2k '0'
option localise_queries '1'
option rebind_protection '1'
option rebind_localhost '1'
option local '/lan/'
option domain 'lan'
option expandhosts '1'
option nonegcache '0'
option authoritative '1'
option readethers '1'
option leasefile '/tmp/dhcp.leases'
option resolvfile '/tmp/resolv.conf.auto'
option localservice '1'
config dhcp 'lan'
option interface 'lan'
option start '100'
option limit '150'
option leasetime '12h'
option dhcpv6 'server'
option ra 'server'
config dhcp 'wan'
option interface 'wan'
option ignore '1'
config odhcpd 'odhcpd'
option maindhcp '0'
option leasefile '/tmp/hosts/odhcpd'
option leasetrigger '/usr/sbin/odhcpd-update'
config dhcp 'eth0_1'
option start '100'
option leasetime '12h'
option limit '150'
option interface 'eth0_1'
config dhcp 'eth0_2'
option start '100'
option leasetime '12h'
option limit '150'
option interface 'eth0_2'
config dhcp 'eth0_3'
option start '100'
option leasetime '12h'
option limit '150'
option interface 'eth0_3'
config dhcp 'eth0_4'
option start '100'
option leasetime '12h'
option limit '150'
option interface 'eth0_4'

View file

@ -0,0 +1,88 @@
config interface 'loopback'
option ifname 'lo'
option proto 'static'
option ipaddr '127.0.0.1'
option netmask '255.0.0.0'
config globals 'globals'
option ula_prefix 'fdb1:00b1:0ffb::/48'
config interface 'lan'
option type 'bridge'
option ifname 'eth0.1'
option proto 'static'
option ipaddr '192.168.1.1'
option netmask '255.255.255.0'
option ip6assign '60'
config device 'lan_dev'
option name 'eth0.1'
option macaddr '80:2a:a8:de:20:8a'
config interface 'wan'
option ifname 'eth0.2'
option proto 'dhcp'
config interface 'eth0_1'
option proto 'static'
option ifname 'eth0.101'
option ipaddr '10.6.19.1'
option netmask '255.255.255.0'
config interface 'eth0_2'
option proto 'static'
option ifname 'eth0.102'
option ipaddr '10.6.20.1'
option netmask '255.255.255.0'
config interface 'eth0_3'
option proto 'static'
option ifname 'eth0.103'
option ipaddr '10.6.21.1'
option netmask '255.255.255.0'
config interface 'eth0_4'
option proto 'static'
option ifname 'eth0.104'
option ipaddr '10.6.22.1'
option netmask '255.255.255.0'
config device 'wan_dev'
option name 'eth0.2'
option macaddr '80:2a:a8:de:20:8b'
config interface 'wan6'
option ifname 'eth0.2'
option proto 'dhcpv6'
config switch
option name 'switch0'
option reset '1'
option enable_vlan '1'
config switch_vlan
option device 'switch0'
option vlan '2'
option ports '0 6t'
config switch_vlan
option device 'switch0'
option vlan '101'
option ports '1 6t'
config switch_vlan
option device 'switch0'
option vlan '102'
option ports '2 6t'
config switch_vlan
option device 'switch0'
option vlan '103'
option ports '3 6t'
config switch_vlan
option device 'switch0'
option vlan '104'
option ports '4 6t'

View file

@ -0,0 +1,4 @@
## Config-files
Hier sammeln wir die verschiedenen Konfigurationen von Geräten, die wir einsetzen oder eingesetzt haben.
Dabei wird vor allem zwischen AirOS, dem proprietären Betriebssystem von Ubiquiti und LEDE/openwrt getrennt.

View file

@ -0,0 +1,50 @@
## Erstmal Generell
Die APC-CS500 ist eine USV, sie dient also dazu, bei Stromausfällen die angeschlossenen Geräte mit Strom zu versorgen.
In der Regel ist ein einzelner Bleigelakku eingabaut, es lassen sich aber (mit passenden Kabeln) beliebige Bleibatterien anschließen.
## Data-Port / Das Interface
Die USV lässt sich über den Anschluss Data-Port an einen PC anzuschließen, damit dieser den Zustand der Stromversorgung kennt. Der Port ist entgegen meines ersten Eindrucks keine Normale Ethernet-Buchse (RJ-45), sondern hat 10 Pins (RJ-50). Mit einem passenden Kabel lässt sich dieser dann mit einem USB-Anschluss verbinden. Die Kabel haben lustige Preise.
Ein Ethernet-Stecker passt aber trotzdem in die Buchse. Nur fehlen dann die beiden äußeren Pins. Solange APC keinen der äußeren Pins für USB verwendet, ist das also alles gar kein Problem. Machen sie aber (die Schweine).
### Das Pinout des Kabel:
AP9827 cable for CS500
```
RJxx end (looking AGAINST the connector):
------
| -- 1 - green - USB 3 - USB+
| -- 2 - white - USB 2 - USB-
| -- 3
_| -- 4 - black - usb 4 - GND
| | -- 5
|_| -- 6
| -- 7 - brown - shield
| -- 8
| -- 9
| -- 10 - red - usb 1 - +5V
------
USB end (looking against the connector):
-----
| | |
| X| | 1 - red - +5V
| | |
| X| | 2 - white - USB-
| | |
| X| | 3 - green - USB+
| | |
| X| | 4 - black - GND
| | |
----- shield - brown - SHIELD
```
### Die Lösung
Deshalb habe ich auf der Platine der USV Pin 10 mit Pin 6 und Pin 1 mit Pin 5 verbunden. (Die Beiden Pins sind tatsächlich ungenutzt)
Nun lässt sich ein einfacher Ethernetstecker an ein USB-Kabel patchen und die USV mit dem PC verbinden.
[[/uploads/apc-cs500_umbau.JPG|alt="Die Brücken auf der Platine"]]

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 MiB

View file

@ -0,0 +1,3 @@
## Wie benutze ich den Ordner Hardware-Info?
Hier erhält jeder Gerätetyp, der zu unserem Netz gehört einen kleinen Eintrag, in dem generelle Informationen zur Hardware gesammelt sind.
Aus den Dokueinträgen der einzelnen Geräte kann dann darauf gelinked werden.

View file

@ -0,0 +1,20 @@
## Den Switch konfigurieren
Der Switch hat eine etwas seltsame Art sich konfigurieren zu lassen. Insbesondere die VLANs sind merkwürdig.
## Vlans
vlans verwendet man, wenn man eine physikalische verbindung hat, die man aber logisch lieber so behandeln würde, als ob 2 seperate kabel/funkstrecken existieren würden.
vlans funktionieren, indem in den IP-header eine zahl von 1-4094 geschrieben wird (tag).
standardmäßig steht da 1.
## 802.1Q VLAN
### VLAN Config
Hier kann man einstellen welche vlans es überhaupt gibt.
zum ein neues vlan anlegen auf "create" klicken. jetzt die ports auswählen, an die das vlan angeschlossen werden kann. ein port kann auch zu meheren vlans gehören. Port bezeichnet hier die physikalische lan-reinsteck-möglichkeit. an port 1 hängt meist der server.
zu link type siehe port config.
die egres rule bestimmt, ob an ungetagte pakete einer angehängt werden soll, wenn sie über dieses interface aus dem switch herrausgehen. (wahrscheinlich, further research needed)
### Port Config
Link type: es gibt im endefekt 2 möglichkeiten, access und (general|trunk).
access ist für geräte, die nicht speziell vlans können, oder denen nicht wirklich vertraut werden kann die richtigen tags zu setzen. sie können nur zu einem einzigen vlan gehören, und der tag wird entfernt, wenn ein paket über das interface raus geht, und auf das vlan, zu dem der port gehört gesetzt, wenn über das interface ein paket reinkommt.
general kann zu mehreren vlans gehören. man kann (bei der vlan config) einstellen ob ungetagte pakete getagt oder einfach so durchgeleitet werden sollen. wenn man es auf TAG stellt werden ungetagte pakete auf die pvid gestell.
trunk ist wie general, nur dass immer tag eingestellt ist.
alle angaben ohne gewähr, die switch-doku ist sehr unverständlich, diese information wurde durch experimente angenähert.

View file

@ -0,0 +1,2 @@
### IP-Tables
bei den einstellungen der Firewall-rules ist uns aufgefallen, das von vorneherein eine management rule MNGT existiert, die alle Verbindungen wegschmeisst, die nicht von dem Gerät initiert wurden.

View file

@ -0,0 +1,127 @@
## Server-Sensorik
Da der Server in einem feuchten Keller steht, gegen den wir ihn mit userem Spezialgehäuse schützen (Kühlschrank), ist eine Überwachung der Umwelteinflüsse wünschenswert.
Konkret möchten wir gerne Luftfeuchte und Temperatur im Auge behalten.
### Hardware
Die Temperatur lässt sich auch aus den Sensoren im Mainboard ablesen. Zusätzlich ist ein Pro Micro mit zwei DHT22 Sensoren und einem Auslenkungssensor verbunden.
Der DHT22 liefert Werte für Temperatur und Luftfeuchte. Einer ist im Kühlschrank und einer außen am Kühlschrank befestigt. Der Auslenkungssensor protokolliert die Türöffnung.
Für den Sensor sind angegeben
Messbereich: -40 - 80 °C, 0 - 100% RH
Genauigkeit: 0.5°C, 2% RH
### Sofware
#### Pro Micro
Auf dem Pro Micro läuft ein Arduino-Sketch[1]
Dieser liefert CSV-Werte:
```
86.10, 23.10, 14.20, 34.20, 0
86.00, 23.10, 14.10, 34.20, 0
86.10, 23.10, 14.20, 34.20, 0
86.20, 23.00, 14.20, 34.20, 0
```
#### Collectd und Facette
Damit die Werte in unseren schönen Facette-Graphen auftauchen, müssen wir zuerst collectd beibringen die Werte überhaupt zu sammeln.
Dazu lässt sich entweder das Plugin "Exec" verwenden, das ein Skipt ausführt und die Rückgabewerte protokolliert oder das Plugin "tail_CSV", welches
CSV Dateien einliest, sofern es aus einer seriellen Schnittstelle lesen kann.
### Dateien
[1] Das verwendete Arduino Programm:
```
// Based on "Example testing sketch for various DHT humidity/temperature sensors"
// from ladyada, public domain
//
#include "DHT.h"
#define DHTPIN1 21 // what digital pin we're connected to
#define DHTPIN2 20
#define DHTTYPE DHT22 // DHT 22 (AM2302), AM2321
// Connect pin 1 (on the left) of the sensor to +5V
// NOTE: If using a board with 3.3V logic like an Arduino Due connect pin 1
// to 3.3V instead of 5V!
// Connect pin 2 of the sensor to whatever your DHTPIN is
// Connect pin 4 (on the right) of the sensor to GROUND
// Connect a 10K resistor from pin 2 (data) to pin 1 (power) of the sensor
// Initialize DHT sensor.
// Note that older versions of this library took an optional third parameter to
// tweak the timings for faster processors. This parameter is no longer needed
// as the current DHT reading algorithm adjusts itself to work on faster procs.
DHT dht1(DHTPIN1, DHTTYPE);
DHT dht2(DHTPIN2, DHTTYPE);
int door=0;
int swtch=0;
int count=0;
void setup() {
Serial.begin(9600);
Serial.println("Humidity inside, humidity outside, temperature inside, temperature outside, door switch");
dht1.begin();
dht2.begin();
pinMode(19,INPUT_PULLUP);
}
void loop() {
swtch= digitalRead(19);
if (door != swtch || count > 100 ){
count=0;
door=swtch;
// Wait a few seconds between measurements.
// Reading temperature or humidity takes about 250 milliseconds!
// Sensor readings may also be up to 2 seconds 'old' (its a very slow sensor)
// So keep in mind, that (maximum counts) * (delay) = (time between readouts)
delay(20);
float hin_raw = dht1.readHumidity();
float hout_raw = dht2.readHumidity();
// Read temperature as Celsius (the default)
float tin_raw = dht1.readTemperature();
float tout_raw = dht2.readTemperature();
// the DHT22 has an statistical error of 2% for humidity and 0.5°C for temperatur.
// so lets add some offset depending on our sensors, to get to comparable values
float hin = hin_raw + 3.6;
float tin = tin_raw - 0.3 ;
float hout = hout_raw ;//- 0.026;
float tout = tout_raw + 0;
// Check if any reads failed and exit early (to try again).
if (isnan(hin) || isnan(tin) || isnan(hout) || isnan(tout)) {
Serial.print("Failed to read from DHT sensor!");
Serial.print(", \t");
Serial.println(door);
return;
}
// print the values if everything works fine
Serial.print(hin);
Serial.print(", \t");
Serial.print(hout);
Serial.print(", \t");
Serial.print(tin);
Serial.print(", \t");
Serial.print(tout);
Serial.print(", \t");
Serial.println(door);
}
else{
delay(20);
count++;
}
}
```

View file

@ -0,0 +1,199 @@
## Hardware-Bug
Anscheinend haben alle Geräte der Revision XW von Ubiquiti einen Hardwarebug im Ethernetchip. Das betrifft sowohl die Nanobeam M5, als auch die Nanostation LOCO M5.
Die Nanostation M5 ist nicht betroffen, da in ihr ein Ethernetswitch verbaut ist.
Ursprünglich dachte ich der Hardwarebug wäre nur dann ein Problem, wenn wir die Geräte mit OpenWRT bespielen, da eben noch kein adaquater Workaround in OpenWRT existiert.
Mittlerweile weiß ich aber, das auch mit der orginal Firmware (AirOS) von Ubiquiti der Bug ein Problem darstellt. Sie lösen das Promblem mit einem sehr schnellen Neustart des PHY.
Aber auch hier verliert die Antenne kurz ihre Ethernetverbindung. Wirkich akzeptabel ist das nicht.
[1] https://dev.openwrt.org/ticket/19085
[2] https://community.ubnt.com/t5/Installation-Troubleshooting/Nanostation-XW-Ethernet-issue/m-p/1164752#U1164752
## Flashing with OpenWRT
It is possible to upload the image via AirOS. But after i did that, i was unable to connect with the device.
I needed to open the glued case (a hammer did the trick) and connect through the serial console.
After changing __/etc/config/network__ from
```
config interface 'lan'
option ifname 'eth0.1'
```
to
```
config interface 'lan'
option ifname 'eth0'
```
everything seems to work fine.
## Images
[[/uploads/nanobeam/open-front.JPG]]
[[/uploads/nanobeam/open-back.JPG]]
[[/uploads/nanobeam/pcb.JPG]]
## Bootlog OpenWRT
```
U-Boot 1.1.4-s776 (Nov 27 2013 - 15:58:45)
Board: Ubiquiti Networks AR9342 board (e815-86041.1122.0030)
Reset: Normal
DRAM: 64 MB
Flash: 8 MB (0xc2, 0x20, 0x17)
Net: AR8032 Detected
eth0, eth1
Radio: 0777:e815
Hit any key to stop autoboot: 0
## Booting image at 9f050000 ...
Image Name: MIPS OpenWrt Linux-3.10.49
Created: 2014-10-02 7:10:38 UTC
Image Type: MIPS Linux Kernel Image (lzma compressed)
Data Size: 1107081 Bytes = 1.1 MB
Load Address: 80060000
Entry Point: 80060000
Verifying Checksum at 0x9f050040 ...OK
Uncompressing Kernel Image ... OK
Starting kernel ...
[ 0.000000] Linux version 3.10.49 (bb@builder1) (gcc version 4.8.3 (OpenWrt/Linaro GCC 4.8-2014.04 r42625) ) #3 Wed Oct 1 14:00:51 CEST 2014
[ 0.000000] bootconsole [early0] enabled
[ 0.000000] CPU revision is: 0001974c (MIPS 74Kc)
[ 0.000000] SoC: Atheros AR9342 rev 2
[ 0.000000] Clocks: CPU:535.000MHz, DDR:400.000MHz, AHB:200.000MHz, Ref:40.000MHz
[ 0.000000] Determined physical RAM map:
[ 0.000000] memory: 04000000 @ 00000000 (usable)
[ 0.000000] Initrd not found or empty - disabling initrd
[ 0.000000] Zone ranges:
[ 0.000000] Normal [mem 0x00000000-0x03ffffff]
[ 0.000000] Movable zone start for each node
[ 0.000000] Early memory node ranges
[ 0.000000] node 0: [mem 0x00000000-0x03ffffff]
[ 0.000000] Primary instruction cache 64kB, VIPT, 4-way, linesize 32 bytes.
[ 0.000000] Primary data cache 32kB, 4-way, VIPT, cache aliases, linesize 32 bytes
[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 16256
[ 0.000000] Kernel command line: board=UBNT-NM-XW console=ttyS0,115200 mtdparts=spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,7552k(firmware),256k(cfg)ro,64k(EEPROM)ro rootfstype=squashfs,jffs2 noinitrd
[ 0.000000] PID hash table entries: 256 (order: -2, 1024 bytes)
[ 0.000000] Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
[ 0.000000] Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
[ 0.000000] Writing ErrCtl register=00000000
[ 0.000000] Readback ErrCtl register=00000000
[ 0.000000] Memory: 61076k/65536k available (2369k kernel code, 4460k reserved, 621k data, 272k init, 0k highmem)
[ 0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[ 0.000000] NR_IRQS:51
[ 0.000000] Calibrating delay loop... 266.64 BogoMIPS (lpj=1333248)
[ 0.080000] pid_max: default: 32768 minimum: 301
[ 0.080000] Mount-cache hash table entries: 512
[ 0.090000] NET: Registered protocol family 16
[ 0.100000] MIPS: machine is Ubiquiti Nanostation M XW
[ 0.310000] bio: create slab <bio-0> at 0
[ 0.320000] Switching to clocksource MIPS
[ 0.330000] NET: Registered protocol family 2
[ 0.330000] TCP established hash table entries: 512 (order: 0, 4096 bytes)
[ 0.330000] TCP bind hash table entries: 512 (order: -1, 2048 bytes)
[ 0.340000] TCP: Hash tables configured (established 512 bind 512)
[ 0.340000] TCP: reno registered
[ 0.350000] UDP hash table entries: 256 (order: 0, 4096 bytes)
[ 0.350000] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[ 0.360000] NET: Registered protocol family 1
[ 0.380000] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[ 0.390000] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[ 0.400000] msgmni has been set to 119
[ 0.400000] io scheduler noop registered
[ 0.400000] io scheduler deadline registered (default)
[ 0.410000] Serial: 8250/16550 driver, 16 ports, IRQ sharing enabled
[ 0.440000] serial8250.0: ttyS0 at MMIO 0x18020000 (irq = 11) is a 16550A
[ 0.450000] console [ttyS0] enabled, bootconsole disabled
[ 0.450000] console [ttyS0] enabled, bootconsole disabled
[ 0.460000] ath79-spi ath79-spi: master is unqueued, this is deprecated
[ 0.470000] m25p80 spi0.0: found mx25l6405d, expected m25p80
[ 0.480000] m25p80 spi0.0: mx25l6405d (8192 Kbytes)
[ 0.480000] 5 cmdlinepart partitions found on MTD device spi0.0
[ 0.490000] Creating 5 MTD partitions on "spi0.0":
[ 0.490000] 0x000000000000-0x000000040000 : "u-boot"
[ 0.500000] 0x000000040000-0x000000050000 : "u-boot-env"
[ 0.510000] 0x000000050000-0x0000007b0000 : "firmware"
[ 0.520000] 2 uimage-fw partitions found on MTD device firmware
[ 0.530000] 0x000000050000-0x00000015e4c9 : "kernel"
[ 0.530000] mtd: partition "kernel" must either start or end on erase block boundary or be smaller than an erase block -- forcing read-only
[ 0.550000] 0x00000015e4c9-0x0000007b0000 : "rootfs"
[ 0.550000] mtd: partition "rootfs" must either start or end on erase block boundary or be smaller than an erase block -- forcing read-only
[ 0.570000] mtd: device 4 (rootfs) set to be root filesystem
[ 0.570000] 1 squashfs-split partitions found on MTD device rootfs
[ 0.580000] 0x000000380000-0x0000007b0000 : "rootfs_data"
[ 0.590000] 0x0000007b0000-0x0000007f0000 : "cfg"
[ 0.590000] 0x0000007f0000-0x000000800000 : "EEPROM"
[ 0.610000] libphy: ag71xx_mdio: probed
[ 1.160000] ag71xx ag71xx.0: connected to PHY at ag71xx-mdio.0:01 [uid=004dd023, driver=Generic PHY]
[ 1.170000] eth0: Atheros AG71xx at 0xb9000000, irq 4, mode:MII
[ 1.180000] TCP: cubic registered
[ 1.180000] NET: Registered protocol family 17
[ 1.190000] Bridge firewalling registered
[ 1.190000] 8021q: 802.1Q VLAN Support v1.8
[ 1.200000] VFS: Mounted root (squashfs filesystem) readonly on device 31:4.
[ 1.210000] Freeing unused kernel memory: 272K (8034c000 - 80390000)
procd: Console is alive
procd: - watchdog -
[ 3.590000] usbcore: registered new interface driver usbfs
[ 3.590000] usbcore: registered new interface driver hub
[ 3.600000] usbcore: registered new device driver usb
[ 3.610000] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[ 3.620000] ehci-platform: EHCI generic platform driver
[ 3.630000] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
procd: - preinit -
Press the [f] key and hit [enter] to enter failsafe mode
Press the [1], [2], [3] or [4] key and hit [enter] to select the debug level
[ 6.170000] eth0: link up (100Mbps/Full duplex)
jffs2 is ready
jffs2 is ready
[ 7.260000] jffs2: notice: (310) jffs2_build_xattr_subsystem: complete building xattr subsystem, 1 of xdatum (0 unchecked, 0 orphan) and 16 of xref (0 dead, 2 orphan) found.
switching to overlay
[ 7.300000] eth0: link down
procd: - early -
procd: - watchdog -
procd: - ubus -
procd: - init -
Please press Enter to activate this console.
[ 8.740000] NET: Registered protocol family 10
[ 8.750000] nf_conntrack version 0.5.0 (958 buckets, 3832 max)
[ 8.760000] ip6_tables: (C) 2000-2006 Netfilter Core Team
[ 8.780000] Loading modules backported from Linux version master-2014-05-22-0-gf2032ea
[ 8.790000] Backport generated by backports.git backports-20140320-37-g5c33da0
[ 8.800000] ip_tables: (C) 2000-2006 Netfilter Core Team
[ 8.840000] xt_time: kernel timezone is -0000
[ 8.870000] cfg80211: Calling CRDA to update world regulatory domain
[ 8.870000] cfg80211: World regulatory domain updated:
[ 8.880000] cfg80211: DFS Master region: unset
[ 8.880000] cfg80211: (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp), (dfs_cac_time)
[ 8.890000] cfg80211: (2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A)
[ 8.900000] cfg80211: (2457000 KHz - 2482000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A)
[ 8.910000] cfg80211: (2474000 KHz - 2494000 KHz @ 20000 KHz), (N/A, 2000 mBm), (N/A)
[ 8.920000] cfg80211: (5170000 KHz - 5250000 KHz @ 160000 KHz), (N/A, 2000 mBm), (N/A)
[ 8.920000] cfg80211: (5250000 KHz - 5330000 KHz @ 160000 KHz), (N/A, 2000 mBm), (0 s)
[ 8.930000] cfg80211: (5490000 KHz - 5730000 KHz @ 160000 KHz), (N/A, 2000 mBm), (0 s)
[ 8.940000] cfg80211: (5735000 KHz - 5835000 KHz @ 80000 KHz), (N/A, 2000 mBm), (N/A)
[ 8.950000] cfg80211: (57240000 KHz - 63720000 KHz @ 2160000 KHz), (N/A, 0 mBm), (N/A)
[ 9.010000] PPP generic driver version 2.4.2
[ 9.020000] NET: Registered protocol family 24
[ 9.120000] ieee80211 phy0: Atheros AR9340 Rev:0 mem=0xb8100000, irq=47
[ 9.150000] cfg80211: Calling CRDA for country: US
[ 9.150000] cfg80211: Regulatory domain changed to country: US
[ 9.160000] cfg80211: DFS Master region: FCC
[ 9.160000] cfg80211: (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp), (dfs_cac_time)
[ 9.170000] cfg80211: (2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A, 3000 mBm), (N/A)
[ 9.180000] cfg80211: (5170000 KHz - 5250000 KHz @ 80000 KHz), (N/A, 1700 mBm), (N/A)
[ 9.190000] cfg80211: (5250000 KHz - 5330000 KHz @ 80000 KHz), (N/A, 2300 mBm), (0 s)
[ 9.200000] cfg80211: (5735000 KHz - 5835000 KHz @ 80000 KHz), (N/A, 3000 mBm), (N/A)
[ 9.200000] cfg80211: (57240000 KHz - 63720000 KHz @ 2160000 KHz), (N/A, 4000 mBm), (N/A)
procd: - init complete -
[ 17.270000] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[ 17.280000] IPv6: ADDRCONF(NETDEV_UP): eth0.1: link is not ready
[ 17.280000] device eth0.1 entered promiscuous mode
[ 17.290000] device eth0 entered promiscuous mode
[ 17.290000] eth0: link up (100Mbps/Full duplex)
[ 17.310000] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[ 17.310000] IPv6: ADDRCONF(NETDEV_CHANGE): eth0.1: link becomes ready
[ 17.320000] br-lan: port 1(eth0.1) entered forwarding state
[ 17.330000] br-lan: port 1(eth0.1) entered forwarding state
[ 19.330000] br-lan: port 1(eth0.1) entered forwarding state
```

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.1 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.1 MiB

View file

@ -0,0 +1,4 @@
## Hardwarebug
Die Nanostation M5 ist nicht betroffen, da sie einen Switch besitz, also ein anderer Ethernetchip verbaut ist.

View file

@ -0,0 +1,10 @@
#OpenWRT
Es gibt da diesen Bug von dem Daniel sprach: Bei einem großen Teil der neueren Geräte fällt nach einigen Stunden der WLAN-Chip aus.
Nur reboot kann das lösen. Dieser Bug betrifft allerdings auch die originale Firmware, bloß macht die heimlcih sowas wie einen schnellen reboot.
Siehe:
https://dev.openwrt.org/ticket/19085
Der letzte Eintrag im ticket klingt positiv, ist aber kaum 2 Tage alt.
Sollten wir also vielleicht nicht einsetzen.
ist das für uns überhaupt relevant? hardwarebugs gibt es immer wieder und überall, das os muss die dann halt verstecken, so gut es geht, und wenn die das in ihrer firmware gut geschafft haben, so dass es keinen weiteren effekt hat, dann ist das kein problem. (ihr glaubt ja garnicht wie viel hardware acpi falsch macht)

View file

@ -0,0 +1,7 @@
# Howto
Hier sammeln wir Anleitungen für wiederkehrende Aufgaben.
Evtl. fehlt noch:
* Kabel crimpen

View file

@ -0,0 +1,37 @@
# Anschluss Einrichten
## In Ansible eintragen
Ansible aktualisieren
### Subnetz und ansible_host finden
Im Ansible-Verzeichnis
```
grep subnet -r host_vars/ | awk -F : '{print $3" "$1}' | sort
```
ausführen.
Das neue Subnetz sollte auf das letzte Subnetz folgen. (Netzmaske beachten: z.B bei /22 vier Netze weiterzählen.
Die IP im Ansible Netz sollte ebenfalls nicht vergeben sein.
Gegebenen falls mit "grep" prüfen.
```
grep 192.168.42. -r host_vars/ | awk -F : '{print $3" "$1}' | sort
```
Namensschema der antennen: <straße><hausnummer>-<antenne_nr>
### Neuen Eintrag in host_vars/ erstellen
Antennentemplate kopieren und passend ausfüllen.
### Antenne in hosts eintragen
Zeile in der Datei hosts ergänzen.
### Ansible ausführen
Zum Testen der Angaben
```
ansible-playbook -CD playbooks/reload_anschluesse.yaml
```
um sie Umzusetzen:
```
ansible-playbook playbooks/reload_anschluesse.yaml
```
### Git aktualisieren und pushen
wie gehabt
### Antenne konfigurieren
siehe antenne_konfigurieren.md

View file

@ -0,0 +1,70 @@
# Antennen konfigurieren mit config-Datei
Diese Anleitung könnte obsolet sein / werden.
Besorge dir die aktuelle Config-datei
Dabei ist zwischen "station" und "accesspoint" zu unterscheiden.
(evtl kommt noch eine "relay" config)
Eine Antenne hat direkt nach dem Reset die IP-Adresse 192.168.1.20
und "ubnt" als user und als passwort.
Country Code: DE
language: english
Überlege dir mit welcher Antenne du die neue Antenne verbinden willst.
## Station
Die Antenne wird als Station eingerichtet.
Das heißt, sie steht bei den Nutzendden und bildet einen Endpunkt des Netzes.
### Antenne updaten
Tab: SYSTEM
Check for updates ( and install them )
Download firmwarefile von ubnt.com und spiele sie auf die Antenne. bei den Geräten handelt es sich um "AirMax M Series".
Aktuelle Versionen
[NanoBeam NBE-M5-16](http://dl.ubnt.com/firmwares/XW-fw/v6.0/XW.v6.0.30097.161219.1705.bin)
### Config datei einspielen
Tab: SYSTEM
Upload "station"-config.
Danach ist das Webinterface anhand der config ausgefüllt, die Einstellungen sind jedoch noch nicht ausgeführt.
Nun müssen alle Anpassungen ausgeführt werden:
### Devicename einrichten
Tab: SYSTEM
Device Name: < StraßeHausnummer_1 > falls auf dem Haus bereits eine Antenne steht statt 1 z.B. 2 verwenden.
### IP Adressen einrichten
Die Addresse, die in Ansible für das Subnetz der Nutzenden vergeben wurde muss auf der Antenne eingetragen werden.
Tab: NETWORK
LAN-IP: die erste IP im Subnetz. z.B. 10.8.8.1
FIREWALL: überall das korrekte Subnetz eintragen.
### WPA-Passphrase einrichten
Tab: WIRELESS
Security: WPA2-AES
WPA Auth: PSK
WPA KEY: schau auf dem Accesspoint nach, mit der du dich verbindest. Jede SSID bekommtihr eigenes Passwort. es wird ausschließlich auf den Antennen gespeichert.
Ändere das Passwort immer zuerst auf dem Gerät, das nicht in deiner Nähe ist.
##Accesspoint
Die Antenne wird als Accesspoint eingerichtet. Das bedeutet, das sie auf unserem Dach steht.
### Antenne updaten
Tab: SYSTEM
Check for updates ( and install them )
Download firmwarefile von ubnt.com und spiele sie auf die Antenne. bei den Geräten handelt es sich um "AirMax M Series".
### Config datei einspielen
Tab: SYSTEM
Upload "accesspoint"-config. Du findest sie im wiki in technigzeugs
Danach ist das Webinterface anhand der config ausgefüllt, die Einstellungen sind jedoch noch nicht ausgeführt.
Nun müssen alle Anpassungen ausgeführt werden:
### Devicename einrichten
Tab: SYSTEM
Device Name: < StraßeHausnummer_1 > falls auf dem Haus bereits eine Antenne steht statt 1 z.B. 2 verwenden.
### WPA-Passphrase einrichten
Tab: WIRELESS
Security: WPA2-AES
WPA Auth: PSK
WPA KEY: generiere ein neues mitdestens 23 stelliges Passwort. Trage es jedoch zuerst in der "station" ein, da du dich sonst nicht mehr verbinden kannst. Jede SSID bekommt ihr eigenes Passwort. es wird ausschließlich auf den Antennen gespeichert.
Ändere das Passwort immer zuerst auf dem Gerät, das nicht in deiner Nähe ist.

View file

@ -0,0 +1,13 @@
# Antenne mit VLAN-Config erreichen
Wenn hinter der Antenne ein Switch über VLAN mehrere Anschlüsse ermöglich, muss du dir selbst ein VLN geben, um die Antenne zu erreichen:
## Voraussetzung
Du musst die VLAN-ID und die IP-Adresse die du verwenden möchstest kennen.
Hier gilt:
VLAN-ID:101
device:enp1s0
IP: 10.6.8.42
## Einrichten
sudo ip link add link enp1s0 name enp1s0.101 type vlan id 101
sudo ip addr add 10.6.8.42/24 brd 10.6.8.255 dev enp1s0.101
sudo ip link set dev enp1s0.101 up

View file

@ -0,0 +1,52 @@
# So schließe ich neue Nutzende an
## Vorbereitung:
Klären:
* Was ist mit einem Vertrag?
* Erlaubnis des Hausbesitzers
* Stromversorgung
* Blitzschutz
* Verantwortliche
* Wie komme ich rein? Wie aufs Dach?
### nicht optional
* Antenne vorher konfigurieren
siehe 'antennen_konfigurieren'
## Was brauche ich?
* Antenne
* Kletterausrüstung
* Laptop
* Werkzeug:
Es gibt eine Werkzeugkiste im Lager mit :
* LAN-Kabel (kurz)
* LAN-Kabel (lang)
* Kommunikationsmittel
* Kabeltester
* Patchzange
* Netzwerk-Stecker
* Kabelbinder
Schau am besten nach ob das Zeug auch drin ist.
###optional
* Fernglas
* Taschenlampe
* einen Halter für die Antenne
* Schrauben
* Dübel
* Bits
* Akku-Schlagbohrer
* Stein-Bohrer
## Wo schraube ich die Antenne an?
So dass Sichtkontakt zur Antenne besteht, mit der sich Verbunden werden soll. Dabei
* nicht an Schornsteinfegerleitern und Handgriffe
* Kabel möglichst wenig auf dem Dach entlang führen
* Dazu möglicherweise eine Halterin für die Antenne anschrauben.
* Alle Dinge die mitgenommen werden am Klettergschirr sichern. Wir wollen keine unbeabsichtigten Toten und Verletzen.
Am optimalsten sind (wer hätte das gedacht) vorhandene Antennenmasten.
## Dinge die für diesen Eintrag herauszufinden sind:
* Dürfen wir in Schornsteine schrauben?

View file

@ -0,0 +1,26 @@
# Kabel über Straßen spannen
Anstatt Funkstrecken können auch Kabel verwendet werden, um die Nutzenden anzubinden.
Dazu empfielt es sich metallfreie Kabel zu verwenden, um den Problemen von Gewitter und Kurzschluss von Bahntrassen zu entgehen.
## Rechtliches
Zusammenfassung von: http://www.leipzig.de/buergerservice-und-verwaltung/aemter-und-behoerdengaenge/behoerden-und-dienstleistungen/dienstleistung/erlaubnis-fuer-sondernutzung-oeffentlicher-strassen-und-plaetze-nach-territorialer-zustaendigkeit-53/
Generell muss ein Sondernutzungsantrag zur Verlegung eines Kabels über die Straße gestellt werden.
http://www.leipzig.de/buergerservice-und-verwaltung/aemter-und-behoerdengaenge/formulare/?tx_ewerkformsmanager_pi%5Buid%5D=97&tx_ewerkformsmanager_pi%5Baction%5D=download&tx_ewerkformsmanager_pi%5Bcontroller%5D=Form
Es muss in mindestens 4,7m Höhe angebracht sein und kostet pro Monat pro überquerung der Straße
Zone1 Zone2 Zone3
1,60€ 1,20€ 0,80€
Zone1 ist das Stadtzentrum. Damit sind alle Straßen gemeint, die sich innerhalb des Promenadenrings befinden.
Zone2 endet Richtung Osten am Gerichtsweg/Ludwig-Ehrhard-Straße/Prager-Straße
Zone3 ist der Rest. Hier sind wir meistens.
siehe auch: http://www.leipzig.de/buergerservice-und-verwaltung/aemter-und-behoerdengaenge/satzungen/?tx_ewerkformsmanager_pi%5Bcontroller%5D=Statues&tx_ewerkformsmanager_pi%5Baction%5D=download&tx_ewerkformsmanager_pi%5Buid%5D=367&tx_ewerkformsmanager_pi%5Bfilename%5D=367-561cb3394b8f6.pdf&cHash=518d90dc191631bf2ac61ad13d5dd361
Wir müssen noch heruasfinden, ob die Arbeiten durch ein Unternehmen aus der Liste der für Arbeiten im öffentlichen Raum zugelassenen Unternehmen durchgeführt werden muss oder nicht.
Das Ding heißt vermutlich Präqualifikationverzeichnis.
## Technisches
Um das zu tun brauchen wir außer der Gehnehmigung, geeignetet Glasfaser und Oberleitungsrosetten oder ähnliche Wandanker. Außerdem ist zu klären, wie die Befestigung am optimalsten durchgeführt wird -> spezieller Zement, Anker, etc.
Um das Kabel in das Haus hineinzubekommen muss die Außenhaut durchbohrt werden. Die entsprechenden Brandschutzverordnungen sind in Erfahrung zu bringen.
Nach dem die Faser liegt, brauchen wir noch einen LWL-Switch und fertig ist die Verbindung.

View file

@ -0,0 +1,50 @@
# Openwrt Router für Heimnetzwerkeinrichten
Eine kurze Anleitung um einen Router (hier einen TP-Link TL-WR841N) mit OpenWRT zu flashen und im Heimnetzwerk einzurichten
## WARUM?
OpenWRT ist freie Software. Dadurch können alle die möchten, den Quellcode der Software lesen und so sicherstellen, das sie Vertrauenswürdig ist.
Außerdem lässt sich OpenWRT sehr flexibel einsetzen und gibt den Nutzenden die volle Kontrolle über das Gerät.
## Router flashen
### Das Image finden
Zuerst müssen wir die passende Firmware für das Gerät finden. Dazu können wir auf wiki.openwrt.org nach dem Gerätenamen (hier: WR841N) suchen.
Im Wikiartikel steht in der Regel welches Image wie auf den Router gespielt werden kann.
Vorsicht das Wiki ist allerdings selten aktuell. Am Besten ist es unter download.openwrt.org nochmal nach einem aktuelleren Image zu suchen. Als Orientierung kann der Pfad des veralteten Images dienen.
Das richtige Image muss "factory" im namen enthalten, da wir von der Herstellerfirmware wechseln. "sysupgrade" verwenden wir wenn auf dem Router bereits OpenWRT ist und wir es updaten wollen.
Nun habe ich die Datei ""
### Den Router anschließen
Nun musst du ein LAN-Kabel mit einem LAN-Anschluss (hier: gelb) des Routers und deinem Rechner verbinden und den Router mit Strom versorgen.
Wenn dir der Router eine Addresse gegeben hat, kannst du die IP Adresse des Routers im Browser eingeben und dich einloggen.
Die Routeradresse kannst du entweder aus den Netzwerkeistellung oder aus dem Handbuch herausfinden. Dort stehen auf die Standard-Logindaten.
Wenn du eingeloggt bist kannst du unter "Firmare upgrade" das Image auswählen und auf den Router spielen.
Damit hast du OpenWRT installiert.
### Ganz einfache Standard-Konfiguration
Nach jeder Einstellung muss du auf "Save and Apply" klicken, sonst vergisst der Router die Einstellungen beim Wechsel zwischen den Tabs wieder.
Im Tab "Network --> Interfaces" lassen wir alles wie gahabt.
DHCP ist an. Im LAN verteilt der Router IPs. Das lassen wir einfach so.
Auf dem WAN-Anschluss (hier: blau) holt sich der Router als DHCP-Client eine IP.
Anfragen aus dem LAN werden ans WAN weitergegeben. Anfragen aus dem WAN ins LAN aber verworfen.
Im Tab "Network --> Wifi" müssen wir noch das WLAN benennen, mit Passwort versehen und anschalten:
Im Abschnitt Device Confuguration
musst du gar nichts machen, kannst aber die "channels" auf auto stellen. und die Breite der Kanäle auf 40Mhz. Muss aber nicht sein.
Bei "Interface Configuration" musste du
Bei "ESSID" kannst du den Namen des Netzwerkes eintragen.
und dort dann im Tab "Wireless Security"
Encryption auf WPA2-PSK stellen und eine WLAN-Passwort in Key eintragen.
Unter "System --> System" geben wir dem Router noch einen netteren Namen als OpenWRT und klicken einmal auf "Sync with Browser" um die Uhrzeit einzustellen.
Zuletzt müssen wir noch im Abschnitt "System --> Administration" ein Passwort für den Router festlegen.
Ich persönlich schreibe das Passwort meistens gleich mit auf den Router, da ohnehin jeder der Zugang zu Router hat ihn auch Reseten kann. Wichtig ist das Passwort vorallem, um es Eindringlingen, die aus der Ferne in dein Netzwerk eindringen, etwas schwerer zu machen.
Sinnvoll ist es außerdem den SSH-Zugang auf LAN zu beschränken.
##TODO
Anleitung um unsere NTP DNS etc server ergänzen

View file

@ -0,0 +1,12 @@
### Hinweise zu den Antennen
Um zu schauen, ob die Antenne für die Nutzenden erreichbar ist macht es sinn zu schauen ob sie Leases vergibt. Die DHCP-Leases sind unter /tmp/dhcp.leases zu finden.
=======
Um zu schauen, ob die Antenne für die Nutzenden erreichbar ist macht es sinnzu schauen ob sie Leases vergibt. Die DHCP-Leases sind unter /tmp/dhcp.leases zu finden.
Falls mal kein DHCP Server erreichbar ist geben sich die Antennen eine Fallback IP. Dann sind sie unter 192.168.10.1 zu erreichen
###### Reset
AirOS lässt sich auf den Nanobeams durch 10s drücken auf den Resetbutton am PoE auf factory defaults zurücksetzen (, falls dies in der Software aktiviert).
Ansonsten lässt sich die Antenne direkt am Gerät durch Bedienen des Reset-Knopfs während des Bootvorgangs zurücksetzen.
Sollte die Antenne rot blinken ist sie im Bootloade-Modus und erwartet ein Image via TFTP. Falls der Zustand durch Stromversorgung unterbrechen nicht weggeht, ist das Image vermutlich kaputt und muss neu geflasht werden. Anleitung dazu gibt im Netz bei Ubiquiti.

View file

@ -0,0 +1,27 @@
# Per TFTP ein Image auf die Antenne flashen
Wenn die Antenne abwechselnd rot und grün blinkt befindet sie sich im Bootloader und erwartet ein TFTP Image. Falls die Firmware zerschossen ist bootet sie immer in diesen Modus. Um das Problem zu beheben geben wir ihr das erwünschte Image per TFTP.
### Image herunterladen
Das richtige Image herunterladen
https://www.ubnt.com/download/airmax-m/nanostationm/nsm5/airos-xw-board-firmware-v564
bei mir wars das XW image. Aber es gibt auch noch XM.
https://wiki.openwrt.org/toh/ubiquiti/nanostationm5
### IP-Adresse einrichten
gib dir eine statische IP aus dem 192.168.1.x subnetz
die Antenne ist dann unter 192.168.1.20 zu erreichen.
das PRbieren wir besser gleich mal aus:
```ping 192.168.1.20```
### Flashen
```
$: tftp 192.168.1.20
tftp> bin
tftp> trace
tftp> put XW.v5.6.4.28924.160331.1238.bin
Sent 1965199 bytes in 35.2 seconds
tftp> quit
```
Nun updatet die Antenne.
Danach müsste die Antenne nach 7-10 min zu erreichen sein. Nicht zwischendrin abschalten.

View file

@ -0,0 +1,51 @@
# Uplink einrichten
Früher nutzten wir zwei mehr oder weniger zuverlässige Uplinks. Aus dieser Zeit stammt diese "Anleitung".
Der Server muss so konfiguriert werden, dass eine Netzwerkschnittestelle als Uplink funktioniert.
Denkbar ist auch, je nach verfügbarkeit zwischen verschiedenen Uplinks zu wechseln
## Vorgehen und nützliche Befehle
Es bietet sich an, erstmal einen Überblink von der Ausgangssituation zu bekommen:
ip route show
ip route list
ip route del <addr> dev <dev>
## History aus dem Unstellen des Uplinks
397 ip route del 192.168.125.1 dev upstream scope link metric 1024
398 ip route shpw
399 ip route show
400 ip route del 192.168.125.0/24 dev upstream proto kernel scope link src 192.168.125.203
401 ip route show
402 systemctl stop ip_forward_service
403 systemctl stop ip_forward
404 iptables -F
405 iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
406 iptables --append FORWARD -i eth0 -j ACCEPT
407 ip route show
408 ip route list
409 ip route del default via 192.168.16.50 dev eth1
410 ip route add default via 192.168.125.1 dev upstream scope link metric 1024
411 ip route add 192.168.125.1 dev upstream scope link metric 1024
412 ip route add 192.168.125.0/24 dev upstream proto kernel scope link src 192.168.125.203
413 ip route
414 ip route add default via 192.168.125.1 dev upstream
415 ip route list
416 vim /etc/dhcp/dhcpd.conf
417 systemctl start ip_forward
418 systemctl restart systemd-networkd.service
419 ip route show
420 ip route
421 ping 8.8.8.8
422 ping 192.168.125.1
423 ping 192.168.42.23
424 ip route
425 ip route del default via 192.168.125.1 dev upstream
426 ip route add default via 192.168.16.50 dev eth1
427 ping 8.8.8.8
428 ping 192.168.42.23
429 ping 8.8.8.8
430 systemctl restart openvpn@to_paul.service
431 ls
432 ping 8.8.8.8

20
technikzeugs/scripts/ping.sh Executable file
View file

@ -0,0 +1,20 @@
#!/bin/bash
HOSTS="10.9.8.10"
COUNT=120
DOWN=0
for myHost in $HOSTS
do
count=$(ping -c $COUNT $myHost | grep 'received' | awk -F',' '{ print $2 }' | awk '{ print $1 }')
if [ $count -eq 0 ]; then
if [ $DOWN -eq 0 ]; then
echo "sol ($myHost) is down at $(date)" | mail -s "sol down" mail@reudnetz.org
DOWN=1
fi
else
if [ $DOWN -eq 1 ]; then
echo "sol ($myHost) is up again at $(date)" | mail -s "sol recovered" mail@reudnetz.org
DOWN=0
fi
fi
done

View file

@ -0,0 +1,694 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# Copyright 2012-2014 Matt Martz
# All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
__version__ = '0.3.1'
# Some global variables we use
source = None
shutdown_event = None
import os
import re
import sys
import math
import signal
import socket
import timeit
import threading
# Used for bound_interface
socket_socket = socket.socket
try:
import xml.etree.cElementTree as ET
except ImportError:
try:
import xml.etree.ElementTree as ET
except ImportError:
from xml.dom import minidom as DOM
ET = None
# Begin import game to handle Python 2 and Python 3
try:
from urllib2 import urlopen, Request, HTTPError, URLError
except ImportError:
from urllib.request import urlopen, Request, HTTPError, URLError
try:
from httplib import HTTPConnection, HTTPSConnection
except ImportError:
from http.client import HTTPConnection, HTTPSConnection
try:
from Queue import Queue
except ImportError:
from queue import Queue
try:
from urlparse import urlparse
except ImportError:
from urllib.parse import urlparse
try:
from urlparse import parse_qs
except ImportError:
try:
from urllib.parse import parse_qs
except ImportError:
from cgi import parse_qs
try:
from hashlib import md5
except ImportError:
from md5 import md5
try:
from argparse import ArgumentParser as ArgParser
except ImportError:
from optparse import OptionParser as ArgParser
try:
import builtins
except ImportError:
def print_(*args, **kwargs):
"""The new-style print function taken from
https://pypi.python.org/pypi/six/
"""
fp = kwargs.pop("file", sys.stdout)
if fp is None:
return
def write(data):
if not isinstance(data, basestring):
data = str(data)
fp.write(data)
want_unicode = False
sep = kwargs.pop("sep", None)
if sep is not None:
if isinstance(sep, unicode):
want_unicode = True
elif not isinstance(sep, str):
raise TypeError("sep must be None or a string")
end = kwargs.pop("end", None)
if end is not None:
if isinstance(end, unicode):
want_unicode = True
elif not isinstance(end, str):
raise TypeError("end must be None or a string")
if kwargs:
raise TypeError("invalid keyword arguments to print()")
if not want_unicode:
for arg in args:
if isinstance(arg, unicode):
want_unicode = True
break
if want_unicode:
newline = unicode("\n")
space = unicode(" ")
else:
newline = "\n"
space = " "
if sep is None:
sep = space
if end is None:
end = newline
for i, arg in enumerate(args):
if i:
write(sep)
write(arg)
write(end)
else:
print_ = getattr(builtins, 'print')
del builtins
def bound_socket(*args, **kwargs):
"""Bind socket to a specified source IP address"""
global source
sock = socket_socket(*args, **kwargs)
sock.bind((source, 0))
return sock
def distance(origin, destination):
"""Determine distance between 2 sets of [lat,lon] in km"""
lat1, lon1 = origin
lat2, lon2 = destination
radius = 6371 # km
dlat = math.radians(lat2 - lat1)
dlon = math.radians(lon2 - lon1)
a = (math.sin(dlat / 2) * math.sin(dlat / 2) + math.cos(math.radians(lat1))
* math.cos(math.radians(lat2)) * math.sin(dlon / 2)
* math.sin(dlon / 2))
c = 2 * math.atan2(math.sqrt(a), math.sqrt(1 - a))
d = radius * c
return d
class FileGetter(threading.Thread):
"""Thread class for retrieving a URL"""
def __init__(self, url, start):
self.url = url
self.result = None
self.starttime = start
threading.Thread.__init__(self)
def run(self):
self.result = [0]
try:
if (timeit.default_timer() - self.starttime) <= 10:
f = urlopen(self.url)
while 1 and not shutdown_event.isSet():
self.result.append(len(f.read(10240)))
if self.result[-1] == 0:
break
f.close()
except IOError:
pass
def downloadSpeed(files, quiet=False):
"""Function to launch FileGetter threads and calculate download speeds"""
start = timeit.default_timer()
def producer(q, files):
for file in files:
thread = FileGetter(file, start)
thread.start()
q.put(thread, True)
if not quiet and not shutdown_event.isSet():
sys.stdout.write('.')
sys.stdout.flush()
finished = []
def consumer(q, total_files):
while len(finished) < total_files:
thread = q.get(True)
while thread.isAlive():
thread.join(timeout=0.1)
finished.append(sum(thread.result))
del thread
q = Queue(6)
prod_thread = threading.Thread(target=producer, args=(q, files))
cons_thread = threading.Thread(target=consumer, args=(q, len(files)))
start = timeit.default_timer()
prod_thread.start()
cons_thread.start()
while prod_thread.isAlive():
prod_thread.join(timeout=0.1)
while cons_thread.isAlive():
cons_thread.join(timeout=0.1)
return (sum(finished) / (timeit.default_timer() - start))
class FilePutter(threading.Thread):
"""Thread class for putting a URL"""
def __init__(self, url, start, size):
self.url = url
chars = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ'
data = chars * (int(round(int(size) / 36.0)))
self.data = ('content1=%s' % data[0:int(size) - 9]).encode()
del data
self.result = None
self.starttime = start
threading.Thread.__init__(self)
def run(self):
try:
if ((timeit.default_timer() - self.starttime) <= 10 and
not shutdown_event.isSet()):
f = urlopen(self.url, self.data)
f.read(11)
f.close()
self.result = len(self.data)
else:
self.result = 0
except IOError:
self.result = 0
def uploadSpeed(url, sizes, quiet=False):
"""Function to launch FilePutter threads and calculate upload speeds"""
start = timeit.default_timer()
def producer(q, sizes):
for size in sizes:
thread = FilePutter(url, start, size)
thread.start()
q.put(thread, True)
if not quiet and not shutdown_event.isSet():
sys.stdout.write('.')
sys.stdout.flush()
finished = []
def consumer(q, total_sizes):
while len(finished) < total_sizes:
thread = q.get(True)
while thread.isAlive():
thread.join(timeout=0.1)
finished.append(thread.result)
del thread
q = Queue(6)
prod_thread = threading.Thread(target=producer, args=(q, sizes))
cons_thread = threading.Thread(target=consumer, args=(q, len(sizes)))
start = timeit.default_timer()
prod_thread.start()
cons_thread.start()
while prod_thread.isAlive():
prod_thread.join(timeout=0.1)
while cons_thread.isAlive():
cons_thread.join(timeout=0.1)
return (sum(finished) / (timeit.default_timer() - start))
def getAttributesByTagName(dom, tagName):
"""Retrieve an attribute from an XML document and return it in a
consistent format
Only used with xml.dom.minidom, which is likely only to be used
with python versions older than 2.5
"""
elem = dom.getElementsByTagName(tagName)[0]
return dict(list(elem.attributes.items()))
def getConfig():
"""Download the speedtest.net configuration and return only the data
we are interested in
"""
uh = urlopen('http://www.speedtest.net/speedtest-config.php')
configxml = []
while 1:
configxml.append(uh.read(10240))
if len(configxml[-1]) == 0:
break
if int(uh.code) != 200:
return None
uh.close()
try:
try:
root = ET.fromstring(''.encode().join(configxml))
config = {
'client': root.find('client').attrib,
'times': root.find('times').attrib,
'download': root.find('download').attrib,
'upload': root.find('upload').attrib}
except AttributeError:
root = DOM.parseString(''.join(configxml))
config = {
'client': getAttributesByTagName(root, 'client'),
'times': getAttributesByTagName(root, 'times'),
'download': getAttributesByTagName(root, 'download'),
'upload': getAttributesByTagName(root, 'upload')}
except SyntaxError:
print_('Failed to parse speedtest.net configuration')
sys.exit(1)
del root
del configxml
return config
def closestServers(client, all=False):
"""Determine the 5 closest speedtest.net servers based on geographic
distance
"""
uh = urlopen('http://www.speedtest.net/speedtest-servers-static.php')
serversxml = []
while 1:
serversxml.append(uh.read(10240))
if len(serversxml[-1]) == 0:
break
if int(uh.code) != 200:
return None
uh.close()
try:
try:
root = ET.fromstring(''.encode().join(serversxml))
elements = root.getiterator('server')
except AttributeError:
root = DOM.parseString(''.join(serversxml))
elements = root.getElementsByTagName('server')
except SyntaxError:
print_('Failed to parse list of speedtest.net servers')
sys.exit(1)
servers = {}
for server in elements:
try:
attrib = server.attrib
except AttributeError:
attrib = dict(list(server.attributes.items()))
d = distance([float(client['lat']), float(client['lon'])],
[float(attrib.get('lat')), float(attrib.get('lon'))])
attrib['d'] = d
if d not in servers:
servers[d] = [attrib]
else:
servers[d].append(attrib)
del root
del serversxml
del elements
closest = []
for d in sorted(servers.keys()):
for s in servers[d]:
closest.append(s)
if len(closest) == 5 and not all:
break
else:
continue
break
del servers
return closest
def getBestServer(servers):
"""Perform a speedtest.net latency request to determine which
speedtest.net server has the lowest latency
"""
results = {}
for server in servers:
cum = []
url = '%s/latency.txt' % os.path.dirname(server['url'])
urlparts = urlparse(url)
for i in range(0, 3):
try:
if urlparts[0] == 'https':
h = HTTPSConnection(urlparts[1])
else:
h = HTTPConnection(urlparts[1])
start = timeit.default_timer()
h.request("GET", urlparts[2])
r = h.getresponse()
total = (timeit.default_timer() - start)
except (HTTPError, URLError, socket.error):
cum.append(3600)
continue
text = r.read(9)
if int(r.status) == 200 and text == 'test=test'.encode():
cum.append(total)
else:
cum.append(3600)
h.close()
avg = round((sum(cum) / 6) * 1000, 3)
results[avg] = server
fastest = sorted(results.keys())[0]
best = results[fastest]
best['latency'] = fastest
return best
def ctrl_c(signum, frame):
"""Catch Ctrl-C key sequence and set a shutdown_event for our threaded
operations
"""
global shutdown_event
shutdown_event.set()
raise SystemExit('\nCancelling...')
def version():
"""Print the version"""
raise SystemExit(__version__)
def speedtest():
"""Run the full speedtest.net test"""
global shutdown_event, source
shutdown_event = threading.Event()
signal.signal(signal.SIGINT, ctrl_c)
description = (
'Command line interface for testing internet bandwidth using '
'speedtest.net.\n'
'------------------------------------------------------------'
'--------------\n'
'https://github.com/sivel/speedtest-cli')
parser = ArgParser(description=description)
# Give optparse.OptionParser an `add_argument` method for
# compatibility with argparse.ArgumentParser
try:
parser.add_argument = parser.add_option
except AttributeError:
pass
parser.add_argument('--bytes', dest='units', action='store_const',
const=('bytes', 1), default=('bits', 8),
help='Display values in bytes instead of bits. Does '
'not affect the image generated by --share')
parser.add_argument('--share', action='store_true',
help='Generate and provide a URL to the speedtest.net '
'share results image')
parser.add_argument('--simple', action='store_true',
help='Suppress verbose output, only show basic '
'information')
parser.add_argument('--list', action='store_true',
help='Display a list of speedtest.net servers '
'sorted by distance')
parser.add_argument('--server', help='Specify a server ID to test against')
parser.add_argument('--mini', help='URL of the Speedtest Mini server')
parser.add_argument('--source', help='Source IP address to bind to')
parser.add_argument('--version', action='store_true',
help='Show the version number and exit')
options = parser.parse_args()
if isinstance(options, tuple):
args = options[0]
else:
args = options
del options
# Print the version and exit
if args.version:
version()
# If specified bind to a specific IP address
if args.source:
source = args.source
socket.socket = bound_socket
if not args.simple:
print_('Retrieving speedtest.net configuration...')
try:
config = getConfig()
except URLError:
print_('Cannot retrieve speedtest configuration')
sys.exit(1)
if not args.simple:
print_('Retrieving speedtest.net server list...')
if args.list or args.server:
servers = closestServers(config['client'], True)
if args.list:
serverList = []
for server in servers:
line = ('%(id)4s) %(sponsor)s (%(name)s, %(country)s) '
'[%(d)0.2f km]' % server)
serverList.append(line)
# Python 2.7 and newer seem to be ok with the resultant encoding
# from parsing the XML, but older versions have some issues.
# This block should detect whether we need to encode or not
try:
unicode()
print_('\n'.join(serverList).encode('utf-8', 'ignore'))
except NameError:
print_('\n'.join(serverList))
except IOError:
pass
sys.exit(0)
else:
servers = closestServers(config['client'])
if not args.simple:
print_('Testing from %(isp)s (%(ip)s)...' % config['client'])
if args.server:
try:
best = getBestServer(filter(lambda x: x['id'] == args.server,
servers))
except IndexError:
print_('Invalid server ID')
sys.exit(1)
elif args.mini:
name, ext = os.path.splitext(args.mini)
if ext:
url = os.path.dirname(args.mini)
else:
url = args.mini
urlparts = urlparse(url)
try:
f = urlopen(args.mini)
except:
print_('Invalid Speedtest Mini URL')
sys.exit(1)
else:
text = f.read()
f.close()
extension = re.findall('upload_extension: "([^"]+)"', text.decode())
if not extension:
for ext in ['php', 'asp', 'aspx', 'jsp']:
try:
f = urlopen('%s/speedtest/upload.%s' % (args.mini, ext))
except:
pass
else:
data = f.read().strip()
if (f.code == 200 and
len(data.splitlines()) == 1 and
re.match('size=[0-9]', data)):
extension = [ext]
break
if not urlparts or not extension:
print_('Please provide the full URL of your Speedtest Mini server')
sys.exit(1)
servers = [{
'sponsor': 'Speedtest Mini',
'name': urlparts[1],
'd': 0,
'url': '%s/speedtest/upload.%s' % (url.rstrip('/'), extension[0]),
'latency': 0,
'id': 0
}]
try:
best = getBestServer(servers)
except:
best = servers[0]
else:
if not args.simple:
print_('Selecting best server based on latency...')
best = getBestServer(servers)
if not args.simple:
# Python 2.7 and newer seem to be ok with the resultant encoding
# from parsing the XML, but older versions have some issues.
# This block should detect whether we need to encode or not
try:
unicode()
print_(('Hosted by %(sponsor)s (%(name)s) [%(d)0.2f km]: '
'%(latency)s ms' % best).encode('utf-8', 'ignore'))
except NameError:
print_('Hosted by %(sponsor)s (%(name)s) [%(d)0.2f km]: '
'%(latency)s ms' % best)
else:
print_('Ping: %(latency)s ms' % best)
sizes = [350, 500, 750, 1000, 1500, 2000, 2500, 3000, 3500, 4000]
urls = []
for size in sizes:
for i in range(0, 4):
urls.append('%s/random%sx%s.jpg' %
(os.path.dirname(best['url']), size, size))
if not args.simple:
print_('Testing download speed', end='')
dlspeed = downloadSpeed(urls, args.simple)
if not args.simple:
print_()
print_('Download: %0.2f M%s/s' %
((dlspeed / 1000 / 1000) * args.units[1], args.units[0]))
sizesizes = [int(.25 * 1000 * 1000), int(.5 * 1000 * 1000)]
sizes = []
for size in sizesizes:
for i in range(0, 25):
sizes.append(size)
if not args.simple:
print_('Testing upload speed', end='')
ulspeed = uploadSpeed(best['url'], sizes, args.simple)
if not args.simple:
print_()
print_('Upload: %0.2f M%s/s' %
((ulspeed / 1000 / 1000) * args.units[1], args.units[0]))
if args.share and args.mini:
print_('Cannot generate a speedtest.net share results image while '
'testing against a Speedtest Mini server')
elif args.share:
dlspeedk = int(round((dlspeed / 1000) * 8, 0))
ping = int(round(best['latency'], 0))
ulspeedk = int(round((ulspeed / 1000) * 8, 0))
# Build the request to send results back to speedtest.net
# We use a list instead of a dict because the API expects parameters
# in a certain order
apiData = [
'download=%s' % dlspeedk,
'ping=%s' % ping,
'upload=%s' % ulspeedk,
'promo=',
'startmode=%s' % 'pingselect',
'recommendedserverid=%s' % best['id'],
'accuracy=%s' % 1,
'serverid=%s' % best['id'],
'hash=%s' % md5(('%s-%s-%s-%s' %
(ping, ulspeedk, dlspeedk, '297aae72'))
.encode()).hexdigest()]
req = Request('http://www.speedtest.net/api/api.php',
data='&'.join(apiData).encode())
req.add_header('Referer', 'http://c.speedtest.net/flash/speedtest.swf')
f = urlopen(req)
response = f.read()
code = f.code
f.close()
if int(code) != 200:
print_('Could not submit results to speedtest.net')
sys.exit(1)
qsargs = parse_qs(response.decode())
resultid = qsargs.get('resultid')
if not resultid or len(resultid) != 1:
print_('Could not submit results to speedtest.net')
sys.exit(1)
print_('Share results: http://www.speedtest.net/result/%s.png' %
resultid[0])
def main():
try:
speedtest()
except KeyboardInterrupt:
print_('\nCancelling...')
if __name__ == '__main__':
main()
# vim:ts=4:sw=4:expandtab

View file

@ -0,0 +1,116 @@
Auf dieser Seite wird die angepeilte Infrastruktur möglichst genau beschrieben.
## Die einfache Konfiguration
### Genereller Überblick
Anschluss beim ISP --> Der Server --> Der Switch --> PoE --> Nanostation 1 (Bridgemode) --)) Nanostation 2 (Routermode) --> PoE --> Ethernetanschluss
### Der Server
DHCP Server für das ganze Netz
### Der Switch
Unkritsch. Glasfaser auf Gigabit-Ethernet. Vermutlich macht es keinen Sinn einen PoE-Switch zu Benutzen
### Nanostation 1 (Bridge)
WLAN und LAN im sind im selben Netz. Die Station holt sich ihre IP vom DHCP-Server. Sie gibt den Traffic nur durch.
- Network Mode: Bridge
- Wireless Mode: Accesspoint
- LAN Address: DHCP
- FallbackIP: lassen wir die so? bzw. wollen wir überall die selbe Nutzen
### Nanostation 2 (Router)
Diese Nanostation funktioniert als DHCP Relay. Sie nimmt die DHCP-Requests von der Seite des Ethernetanschlusses entgegen und leitet sie direkt an den DHCP-Server weiter. So werden Braodcasts vermieden und hinter der Nanostation benimmt sich alles wie ein Subnetz ohne das ein NAT notwendig ist.
- Network Mode: Router
- Wireless Mode: Station
- LAN Address: DHCP
- FallbackIP: lassen wir die so? bzw. wollen wir überall die selbe Nutzen
- LAN: Relay
- DHCP Server IP: klar oder?
- Agent ID: kann leer bleiben oder eine Info über die Station enthalten
## etwas Komplizierter für den Anfang
Statt dem direkten Anschluss vom ISP benutzen wir VPN über einen Schlandkabelanschluss:
### Genereller Überblick
Interwobz --> VNP Server ---Schlandkabelnetz---> VPN Server --> DHCP Server --> der Rest wie oben…
### Der Server
Macht in diesem Fall VPN und DHCP. Für wenige Verbindungen reicht ein PlasteRouter aus.
## Mesh?
Wie würde ein Meshnetz optimalerweise aussehen?
# Alternativen:
1-1-zitat equi, wir verwenden momentan ne abgeschwächte form von 3.
Laut ben wird das eventuell problematisch wass die routing-performance auf der Nanostation 2 (Routermodus) angeht.
Das sollte mal gebenchtmarkt werden.
Ansonsten hat L2.5 auch noch seinen charme, aber dafür müssten wir nen bestimmtes modul in den ubiquity-kernel laden,
welches die nicht mitliefern, und welches es auch sonst nicht einfach so zu hohlen gibt, namentlich gretap, eventuell kann man das aber selbst kompilieren, oder bei denen anrufen, müsste man auch mal schauen.
* L2 / VLAN-switched Netz "1 User = 1 802.1Q VLAN"
= momentaner Westnetz-Aufbau
+ Hardware im Rest des Netzes braucht nur Ethernet-Funktionen
+ wenig Bugs in kaufbaren Geräten (z.B. Managed Switches)
+ einfach für 1 User mehrere Ports zu schalten, auch an völlig
verschiedenen Stellen im Netz
+ optimaler Trafficflow bei mehreren Ports für 1 user
+ zentralisiertes Routing einfach zu managen
+ zentralisiertes DHCP ohne relay
- VLANs müssen an vielen Stellen geconfigt werden
=> besonders scheisse wenn das Netz nicht "sternförmig" ist
- suboptimaler Trafficflow zwischen Usern (zum Router + zurück)
- Ethernet-Loops möglich, STP stinkt
- mittelmässige Debuggingfeatures auf Ethernet-Ebene
* L2.5 / IP-tunneled L2 "1 User = 1 Extended Ethernet Bridge"
= VXLAN, GREtap (in billig), VPLS (in teuer/professionell)
Ethernet-Frames werden am Netzwerkrand/User-Schnittstelle in Tunnel
eingepackt und laufen als Eth<-IP<-Eth<-IP durch den Backbone
+ Backbone kann frei auf- und umgebaut werden
+ Flexibler Backbone impliziert gute Redundanzmöglichkeiten
+ einfach für 1 User mehrere Ports zu schalten, auch an völlig
verschiedenen Stellen im Netz
+ zentralisiertes Routing an Tunnelendpunkt
+ zentralisiertes DHCP ohne relay
0 erhöhte MTU im Backbone nötig (allgemein kein Problem)
0 mittelmässiges Debugging (User kann kein traceroute im Backbone)
- bei VXLAN/GREtap suboptimaler Trafficflow wenn mehrere Ports für 1
User (zentraler Router und zurück). VPLS hat das problem nicht dank
Split-Horizon-Bridging, gibts nur (noch) nicht in Open Source.
- in kaufbaren Geräten nicht bezahlbar, höchstens Mikrotik (kann VPLS)
- für Linux-Möhren muss der Support im Kernel an sein, was bei
Ubiquiti beim Standardkernel nicht ist -_-
- kaufbare Geräte z.T. mit Bugs und Antifeatures im IP-Routing
* L3 / Routed Edge "1 Port = 1 IP-Netz"
= Routing in mehr oder weniger Reinform
+ Backbone kann frei auf- und umgebaut werden
+ Flexibler Backbone impliziert gute Redundanzmöglichkeiten
+ generell gut optimierbarer Trafficfluss
+ traceroute 4 life
- mehrere IP-Netze pro User wenn mehrere Ports
- NAT schwieriger zu managen wenns zwischen Usern applizieren soll
- dezentrales Routing, komplexes IP-Management
- DHCP entweder direkt auf Edge-Geräten oder mit Relay
- kaufbare Geräte teuer (aber noch bezahlbar)
- kaufbare Geräte z.T. mit Bugs und Antifeatures im IP-Routing
## Homenet + Babels
wie schon geschrieben habe ich etwas mit Freifunk Daniel geplaudert. Dabei auch über Redundanz der Antennen sowie OpenSource auf den Antennen selbst gesprochen.
Ein weiteres Szenario was ich durchdenken könnten:
- Wir besorgen und besage Ubnt EdgeRouter für ~100€ das Stück.
- Installieren OpenWrt und [Homenet](https://github.com/sbyx/hnetd)
* Wie gut funktioniert das? Haben wir Anwendungsfälle zu anschauen?
- Im Interface Menü lässt sich neben Static und DHCP Server nun auch Homenet auswählen
- Auf *unserer* Antennen Infastruktur wird ebenfalls [OpenWRT](https://www.youtube.com/watch?v=TgHYjfTnsI4) installiert
- Damit das gut geht nutzen wir statt Loco besser die [von Daniel empfohlenen Antennen](https://www.ligowave.com/products/dlb-5-15)
* Die Antennen finde ich auch unabhängig vom Rest interessant.
- Routing machen die Geräte dann selbst, wir bauen immer mehr Antennen überall hin und wenn mal was ausfällt sollte automatisch ein Plan B umgeroutet werden.
* Naja, ich würde tatsächlich ungern ein Netz mit potentiell ausfallenden Routen bauen. Das macht für unsere Anwendung nicht so viel Sinn. Einfache Redundanz erfüllt das bei uns ja auch.
- Laut D. lässt sich das ganze gut Debuggen, mit Netzgraphen (wie ich es verstanden habe)
- Weitere Services wie Hosting von Service X machen wir auf weiteren Servern die wir ans Netz anstecken.
- Was haltet ihr davon?
- Wie können wir solche Modelle testen? Wieviel und welche Hardware brauchen wir, wie viel Aufwand an umflashen und aufbauen ist nötig, bis wir ein Benchmark bekommen?

View file

@ -0,0 +1,107 @@
## Anwendungen
### Routing
Zwischen den beiden netzen "Reudnetz" und "Restinternet" Routen. Potentiell kommt später auch noch "Westnetz" hinzu.
### DHCP
IP-Adressen an alle interessierten Teilnehmer Verteilen, in ipv6-speek wird das dann Subnetze verteilen.
### Infrastruktur
Email, Wiki, <s>F</s>AQ, Monitoring, DNS. Alles in seperate VMs abgepackt, so dass das später auch auf andere Server verschoben werden kann.
Bitte erweitern, falls ich etwas vergessen haben sollte.
## Hardwareanforderungen
Basierend auf den Anforderungen der Anwendung hier eine Berechnung der notwendigen Hardware
### RAM
Wir sollten definitiv ECC nutzen.
* NAT
26 nat-einträge passen in 8kb ram, 128\*8kb = 1mb
wir haben 32 IPs, für jede können wir ein theoretisches maximum an 2\*\*16 ports für 3 protokolle (TCP, UDP, SCTP) mappen.
Maximale Anzahl an mappings: 32\*(2\*\*16)\*3 = 6291456
⌈(6291456/26)/128⌉ = 1891 ~ 2GB
_2GB_
* DHCP
200 Kunden, 3 Geräte pro Kunde (PC, Laptop, Handy) ≈ 600 Geräte
Laut [internet](https://osdir.com/ml/network.dhcp.isc.dhcp-server/2004-03/msg00288.html) < 30mb RAM.
* Infrastruktur
ich würde großzügig 256 mb/Service rechnen, könnte überprovisioniert werden, weil einiges nicht permanent benutzt wird.
5\*256+200 für VM-overhead (nur einmal weil die pages zwischen den vms gleich sind und geteilt werden) = 1.5GB
_1.5GB_
* Cache
Festplattenzugriffe müssen gecached werden, sonst stirbt die performance.
_1GB_
Summa Summarum sind wir also bei 2+1.5+1 = 3.5 GB, Also ist der Kauf von 8-16GB ram empfehlenswert.
### Storage
Cachehierachien sind sinnvoll, Deshalb wäre eine ssd-hdd-lösung cool, Notwendig ist eine Untersuchung von aktivem speicher vs vorgehaltenem speicher um respektiv ssd und hdd-größe zu bestimmen.
Aktiver speicher ist hier die menge an Festplattenspeicher auf den inerhalb eines "kurzen" Zeitraums, ~15 minuten, zugegriffen wird, vorgehaltener Speicher ist die Menge an Daten die auf Der Festplatte herrumliegen und irgendwann benötigt werden könnten.
* Betriebssysteme und Software
10GB/OS. 6\*10=60GB Theoretisch besteht die Möglichkeit die VMs zu deduplizieren, aber meh.
Diese Blöcke werden nur einmal, beim Start, gelesen, haben also keinen Aktiven Anteil.
_60GB_,_0GB_
* DHCP
Aus privacygründen wird die Leasefile nur im Ram gehalten
_0GB_,_0GB_
* Email
Das kann Groß werden, wenn wir es Nutzern zur verfügung stellen, aber zu dem Zeitpunkt werden wir das eh auf eine andere Maschiene auslagern. Bis dahin hat das < 10 Nutzer denen man großzügug 5GB geben kann.
10\*5 = 50GB
Emails werden einmal geschrieben, mehrfach gelesen, dann einmal gelöscht, ich würde mit weniger als 1% aktivem Anteil rechnen.
_50GB_,_1GB_
* Wiki
Wenn viele Bilder dazukommen, z.B. Panoramas kommen wir eventuell auf 10GB.
Häufig Gelesen werden dann maximal 3 seiten, wenn wir von max. 5 Großen bildern pro Seite ausgehen sind das 3\*5\*10=150MB
_10GB_,_1GB_
* <s>F</s>AQ
Alles textbasiert, das kommt nicht über 1GB.
_1GB_,_1GB_
* Monitoring
Das kann groß werden, ich würd mal 100GB veranschlagen, das sollte aber mal genauer durchgerechnet werden.
Lesen will man dann meist sätze von ner Woche oder einem Tag, selten einem Jahr, vlt. 2GB?
_100GB_,_2GB_
* DNS
<1GB
_1GB_,_1GB_
60+0+50+10+1+100+1 = 222 GB Also 2 500GB-1TB Festplatten im RAID-1
0+0+1+1+1+2+1 = 6 GB, Also Die Kleinste SSD die zu finden ist.
Eventuell ist es aufgrund des doch sehr kleinen aktiven Anteils sinnvoll auf eine SSD zu verzichten und auf den ram-cache zu vertrauen.
Billige kleine SSD:
<http://www.idealo.de/preisvergleich/OffersOfProduct/2899304_-16gb-msata-ssd-mlc-transcend.html>
*Paul* hab sowas Zuhause rumliegen
### CPU/Mobo
<https://geizhals.de/supermicro-a1srm-2558f-retail-mbd-a1srm-2558f-o-a1057354.html>
das ist gut.
## Hardware
* Mobo/CPU <https://geizhals.de/supermicro-a1srm-2558f-retail-mbd-a1srm-2558f-o-a1057354.html> 280€
* RAM <https://geizhals.de/crucial-dimm-kit-8gb-ct2kit51272bd160b-a701551.html> 90€
* HDD 2x <https://geizhals.de/seagate-constellation-es-1tb-st1000nm0011-a632284.html> 2\*60€
* Gehäuse <https://geizhals.de/inter-tech-2u-2098-sk-88887180-a1307670.html> 85€
* Netzteil <https://geizhals.de/lc-power-pro-line-lc7300-v2-3-silver-shield-300w-atx-2-3-a697598.html> 35€
**= 610€**
*Paul* warum ist das Mobo so Teuer? Und wäre es nicht besser wenn wir die CPU später noch aufrüsten könnten?
*Yannik* Unter anderem weil das ziemlich low-power und passiv gekühlt ist, CPU aufrüsten ist eher irrelevant, da die sockel sich permanent ändern. A pro pos passiv gekühlt, wir könnten statt des vorgeschlagenen Netzteils auch ein [anderes](https://geizhals.de/seasonic-ss-300m1u-300w-atx-2-31-eps12v-a819424.html) für 60€ nehmen, das bei unter 50% Last (also praktisch immer) lüfterlos ist, dann hätten wir das komplette Gerät passiv, das wäre dann zudem noch ein stück efizienter.
### Plan B?
Freifunk Daniel hat empfohlen [UBNT Edge Router](https://www.ubnt.com/edgemax/edgerouter-lite/) zu benutzen weil die minimal Strom brauchen und mit nem OpenWRT ähnlich zu konfigurieren sind wie nen "richtiger Server". Wenn wir spielereien wie Mail und Hosting eh als Subprojekt Anbieten könnten wir dafür auch einfach andere Server benuzten oder?
Die teile kosten auch [etwas](http://www.amazon.de/Ubiquiti-Networks-ERLite-3-EdgeRouter-Lite/dp/B00CSML06Q) weniger

View file

@ -0,0 +1,52 @@
Wir hatten ja schon einige Ideen für Interne Dienste. DA wir uns über so etwas erst Gadanken machen brauchen, wenn wir über ein ausreichend großes Netz verfügen, würde ich die Ideen hier mal für spätere Zeiten konservieren.
Mailman (auch mit PGP) oder "Schleuder" was eindeutig den besseren namen hat
Eastereggs
Freifunk
kostenloses Internet im Park
9.7.13 sorry für fragen, aber was ist das?? ein datum??!
XMPP-Server
Tox-Bootstrap
Webserver für die Nutzer
freenet node
Projektpaten
Wir vermitteln Menschen, die sich als Ansprechpartner um das interne Netz eines Hausprojektes kümmern
Openstreetmapinstanz, mit umap
peering mit:
guifi.net
---
Services sollten Grundsätzlich 2 Zwecke erfüllen, der Menschheit und insbesondere unseren Nutzern einen *Mehrwert* bieten, und die wahrscheinlich überflüssige upload-bandbreite, die durch unseren Symetrischen Anschlüss abfällt zu verbraten.
---
###VPN
wird tatsächlich für größere Zahl an clients recht rechenaufwändig, zudem symetrischer bandbreitenverbrauch, also eher weniger cool, zudem fraglicher Mehrwert.
###Mailserver/Mailadressen
Nützlich, kaum Rechenaufwand, kaum Bandbreitenverbrauch, aber aufwändig einzurichten, zudem müssen wir dann zuverlässig sein, email muss funktionieren.
###Webhosting
Ja
###Cache
Als optional anschaltbares dingen für größere dateien sicher sinnvoll, insbesondere in hinblick auf OS-Updates und …Videos_
###Tor-Exit-Nodes
symetrischer bandbreitenverbrauch, killt bei benutzung garantiert die genutzte ip, oder gleich den ganzen /24, weil es in allen botnetfiltern landet.
###(v)-Server vermieten
Ja, eventuell sogar so in richtung: wenn du bei uns nen anschluss hast hast du auch automatisch einen minivserver, mit dem du zeug tun kannst, wenn du willst. Das internet muss symetrischer werden, im moment ist das ne ziemliche konsummaschiene. Ungenutzte vserver verbrauchen halt auch praktisch keine Recouren. Helfen zudem upload zu verbraten.
###XMPP
is ded. < this