Wir (die Technologie, mit der ich und ich selbst arbeiten) leben in einer abgelegenen Stadt im Norden, in der der Internetzugang ein Luxus ist und die Bandbreite recht begrenzt ist. Hier sind Überkosten von einigen Hundert bis zu einigen Tausend Dollar pro Monat keine Seltenheit. Ich selbst erhebe regelmäßige monatliche Gebühren nur durch meine regelmäßige Internetnutzung zu Hause (ich darf 10G für 60 CAD!).
Im Rahmen meiner Arbeit habe ich mich mit mehreren Hotels befasst, die dies spüren. Ich weiß, dass ich etwas finden kann, um dieses Problem zu lösen, aber ich bin relativ neu in der Systemadministration und möchte nicht, dass meine Träume die Realität überwinden.
Ich gebe diese Ideen an Sie weiter, diejenigen mit viel mehr Erfahrung als ich, in der Hoffnung, dass Sie einige Ihrer Gedanken und Bedenken teilen.
Dieses System muss kostengünstig sein, ja, die Gebühren sind hier hoch, aber das Vertrauen in die Technologie ist das niedrigste, das ich je gesehen habe.
- Muss in der Lage sein, dem Kunden zu helfen, seine Nutzung zu reduzieren (Tintenfisch)
- Erlauben Sie eine begrenzte Menge an kostenlosem Internet (Durchsatz und Gesamtnutzung), da dies häufig eine Franchise-Richtlinie ist.
- Ermöglichen Sie einem Benutzer, seine Bandbreitennutzung zu verfolgen
- Ermöglichen Sie (optional) eine höhere Geschwindigkeit und / oder Nutzung gegen eine zusätzliche Gebühr. Diese Gebühr ist an der Rezeption an der Kasse erhältlich und erfordert nicht die Verwendung von PayPal oder Kreditkarte.
- Leider haben einige Franchise-Unternehmen lächerliche Richtlinien, die die Verwendung eines
Remote-Dienstes eines Drittanbieters zur Authentifizierung von Gästen in Ihrem Netzwerk erfordern . Dies bedeutet, dass WPA nicht verfügbar ist und dass ich mich vor der Internetnutzung nicht authentifiziere, das wird ihre Aufgabe sein. Ich benötige jedoch die FÄHIGKEIT, um eine Authentifizierung für den Internetzugang durchzuführen, wenn ein Hotel nicht über diese Richtlinie verfügt. Ich muss weiterhin die Bandbreite verfolgen (standardmäßig unter einem Gastkonto) und die gleiche Einschränkung bereitstellen. Der Gast benötigt jedoch häufig einen vollständigen "unbegrenzten" Zugriff, was die Existenz und nicht den Durchsatz betrifft. - Bieten Sie Firewall-Funktionen für Hotels, die nichts haben, Office- und Gastnetzwerk-Trennung (einige dieser Leute betreiben ihr Büro im Gastnetzwerk, ohne Verschlüsselung und mit einfachen Nutzungsbedingungen!).
- Verhindern Sie, dass Gäste sich mit anderen Gästen verbinden, bieten Sie jedoch eine Möglichkeit, dies zu ermöglichen. IE. Jeder Gast stellt eine Verbindung zu einer Seite her und lässt den anderen Gast zu. Dies schreibt eine iptables-Regel (mit Python-Netfilter) und ermöglicht beispielsweise zwei Räumen, ein Spiel zu spielen.
Meine Gedanken zur Umsetzung. Eine anständige Box (wir nennen sie jetzt Router) mit viel RAM und 3 Netzwerkkarten:
- Internet
- Büro
- Gäste (APs + In Room Ethernet)
Router-Firewall-Regeln
- Der Gast kann nur mit dem Router sprechen, über den er an den gewünschten Ort weitergeleitet wird, einschließlich der Internetdienste.
- Office kann verwendet werden, um Office mit dem Internet zu verbinden, wenn keine vorhandene Lösung vorhanden ist. Andernfalls funktioniert es einfach für eine über das Netzwerk zugängliche Webschnittstelle (webmin + python-webmin?).
Router-Software:
- OpenVZ bietet Virtualisierung für einige Dienste, denen ich nicht wirklich vertraue. Tintenfisch, FreeRADIUS und Apache. Der einzige Service, der den Gästen direkt zugänglich ist, ist Apache.
- Apache hat mod_wsgi und django, weil ich mit django schnell schreiben kann und meine Bedürfnisse gering sind. Es hat möglicherweise auch den FreeRADIUS-Mod, aber es scheint einige Einschränkungen zu geben.
- Firewall-Regeln werden auf dem Router mit iptables behandelt.
- Webmin (oder möglicherweise eine benutzerdefinierte Django-App) bietet eine abstrahierte Kontrolle über alle Funktionen, auf die die Mitarbeiter möglicherweise zugreifen müssen.
- Python, wenn Sie nicht erraten haben, dass es die Sprache ist, in der ich mich am wohlsten fühle, und ich benutze sie für fast alles.
Und schließlich, wurde dies getan, ist es ein übermäßig umfangreiches Projekt, das es nicht wert ist, von einem Mann übernommen zu werden, und / oder gibt es einige Werkzeuge, die mir fehlen und die mein Leben erleichtern könnten?
Für die Aufzeichnung bin ich ziemlich gut mit Python, aber nicht sehr vertraut mit vielen anderen Sprachen (ich kann mich durch PHP kämpfen, es ist dort ein kosmetisches Problem). Ich bin auch ein begeisterter Linux-Benutzer und mit Konfigurationsdateien und Befehlszeilen vertraut.
Vielen Dank für Ihre Zeit, ich freue mich darauf, Ihre Antworten zu lesen.
Bearbeiten: Ich entschuldige mich, wenn dies kein Q & A in dem Sinne ist, wie einige es erwartet hatten. Ich suche nur nach Ideen und um sicherzustellen, dass ich nicht versuche, etwas zu tun, was getan wurde. Ich betrachte pfSense jetzt als einen möglichen Start für das, was ich brauche.
Antworten:
Nachdem ich mir jetzt das pfSense-Projekt angesehen habe, denke ich, dass es mit ein paar Konfigurationen viel von dem bieten wird, was ich brauche. Es unterstützt Captive Portal und tut dies mit Radius-Servern, kann mit Squid für transparentes Proxy eingerichtet werden und scheint eine Menge Kontrolle über den Datenverkehr zu haben. Ich bin immer noch offen für weitere Ideen, die helfen könnten. Vielen Dank!
quelle
Zufällige Gedanken:
Beginnen Sie zunächst mit einem Netzwerkdiagramm. Mach dir keine Sorgen, Visio zu starten; Zeichnen Sie einfach eine auf Papier. Wenn Sie herausgefunden haben, wo Sie anfangen sollen, stellen Sie hier einige spezifische Fragen erneut. Dieser Beitrag ist viel zu dicht. Wenn Sie es mundgerecht machen, erhalten Sie bessere und nachdenklichere Antworten, die sich mit bestimmten Fragen befassen.
"Verhindern Sie, dass Gäste eine Verbindung zu anderen Gästen herstellen ..." Sie können dies an der Firewall nicht tun, da sich alle im selben internen LAN befinden. Sie müssen dies am Switch tun, sodass Sie einen verwalteten (intelligenten) Switch benötigen.
Python ist die ideale Sprache für so etwas. Mach dir keine Sorgen, dass du PHP nicht kennst. PHP ist nicht die richtige Sprache. PHP ist nie die richtige Sprache. Für alles.
Sie werden Ihre iptables-Regeln nicht von Hand pflegen wollen, es sei denn, Sie sind masochistisch. Versuchen Sie stattdessen , Shorewall zu verwenden. Es ist einfach eine dünne Konfigurationsebene über iptables, die die Verwaltung erheblich vereinfacht.
quelle
Es gibt vorgefertigte Installationen, um die Art von Service bereitzustellen, über die Sie sprechen. Normalerweise ein Mini-itx-System, dessen Betriebssystem bereits auf Compact Flash eingerichtet ist. Oft haben Sie die Möglichkeit zwischen freiem Zugriff und einem Zahlungssystem, das über APs hinweg an vielen verschiedenen Standorten funktioniert. Ich gehe davon aus, dass Sie aus Kanada kommen, aber ich kenne nur konkrete Beispiele für Großbritannien.
quelle
Ein Mikrotik-Hotspot erledigt alles, was Sie aufgelistet haben. Sie sollten in der Lage sein, jeden Standort mit einem 450G oder ähnlichem zu betreiben.
quelle