Managen der Onlinezeiten. Es wird für die einzelnen User eine tägliche Internetzeit vergeben.
Dieses OPT ist aus einer Kopie des OPT_ONCO von Michael Mattes entstanden. Ich habe es meinen Bedürfnissen angepaßt. Bei ONCO wird für einen festgelegt Zeitraum den Anwendern die Internetnutzung erlaubt. Mein Interesse lag daran, für die Anwender eine tägliche Internetzeit festzulegen unabhängig davon, wann die Internetnutzung erfolgt.
Mail den Autor
:
Volker_Krause@gmx.net
Ich übernehme keinerlei Verantwortung für
eventuelle Schäden, die durch dieses Skript verursacht werden
könnten. Die Benutzung erfolgt ausdrücklich auf eigene
Verantwortung.
installiert und in der base.txt/isdn.txt müssen aktiviert sein:
der mini-httpd für Web Interface Ausgabe, die Logs können auch mittels Editor der Wahl betrachtet und weiter ausgewertet werden
das opt_extratools (enthält benötigten grep e.c.) muss installiert sein
das opt_easycron muss installiert sein
Imond muß aktiviert sein (ab Version 0.1.0 pre)
nicht installiert sein darf das OPT_PROXY, da die Zeitsteuerungen nicht mit Proxy funktioniert
Man entpacke das Archiv und kopiere alles in das
Fli4L-Basisverzeichnis
-Editieren der ouma.txt in /config
OPT_OUMA='yes' ( 'yes oder 'no' ) Package aktivieren
OUMA_STARTTIME='60' Internetzeit , die bei Neustart für alle zeitgesteuerten IP vergeben wird
OUMA_BLOCK_UDP='yes' auch UDP Pakete blocken? (sperrt die meisten Spiele)
OUMA_BLOCK_ICMP='yes' auch ICMP (Ping) Pakete blocken?
OUMA_NEVERBLOCK_N='0' wieviele IPs niemals sperren?
OUMA_NEVERBLOCK_1='192.168.6.2' 1. IP, die nicht gesperrt werden kann
OUMA_NEVERBLOCK_2='192.168.6.3' 2. IP, die nicht gesperrt werden kann
OUMA_TIMECTL_N='1' Anzahl der Zeitsteuerungen
OUMA_TIMECTL_1_IP='192.168.6.4' 1. IP, die zeitabhaengig gesteuert werden soll
OUMA_TIMECTL_1_START='01 04 * * *' Wann soll die Onlinezeit neu vergeben werden (cron-Syntax)
OUMA_TIMECTL_1_TIME='90' Onlinezeit, die der User täglich bekommt (täglich bei mir, cron Syntax läßt natürlich beliebige Zeitsteuerungen zu). Will man dem Client seine Onlinezeit ab einem bestimmten Zeitpunkt wegnehmen, kann man das durch Vergabe einer Zeit von 1 bei einer zweiten Zeitsteuerung zu dieser IP.
OUMA_OPT_FPING='yes' Optional - Feststellen des Rechnerzustands. Das habe ich aus ONCO beibehalten, ich hatte aber das Gefühl, daß es zu Problemen mit OPT_HANGUP kommen kann. Deshalb sollte die DELAY-Zeit unbedingt größer wie die hangup-zeit gewählt werden.
OUMA_FPING_HOSTUPDATE_DELAY='5' # Hosts nach x Minuten
automatisch updaten (siehe oben !)
Nun noch eine neues opt.tgz erstellen oder den Router per Imonc updaten, und schon kann man loslegen.
Wenn man die Dateien per ftp hochgeladen hat muss man noch darauf achten, dass das CGI ausführbar ist. Am einfachsten führt man dazu ein
chmod 777 /usr/local/htdocs/*.cgi
an der Router-Konsole oder per telnet/ssh aus.
On boot werden die Onlinezeit der zeitabhängigen IP auf die
STARTTIME gesetzt, die CRON-Prozesse für die zeitabhängige
Onlinezeitvergabe gestartet und der Main-Prozeß zur
Zeitsteuerung gestartet
Minütlich wird kontrolliert, welcher User das Internet gerade
nutzt und dessen Zeit heruntergezählt. Bei Null wird dieser
gesperrt und erst durch Zeitsteuerung oder Mini-Httpd wieder
freigegeben.
Durch die Vielfältigkeit von CRON ist eine nazu unbegrenzt vielfältige Zeitsteuerung möglich. Durch mehrfache Zeitsteuerung der selben IP kann man den Client zu beliebigen Zeiten Internetnutzung erlauben oder die Erlaubnis wegnehmen.
Berechtigungsprüfung über ouma/manage.
Es wird folgendes angezeigt:
Rechnerstatus an/aus (nur bei OUMA_OPT_PING)
Internet (Rechner ist im Internet an/aus)
Internetstatus (ja/nein/nuch verfügbare Onlinezeit)
Zeiten (30min,1,2,4 Stunden ) zum individuellen vergeben
Aktualisieren (nur bei OUMA_OPT_PING), -> Rechnerstatus wird neu ermittelt
alle sperren
alle freigeben
Berechtigungsprüfung über ouma/list.
Es wird folgendes angezeigt:
Status aller Hosts, die z.Zt. im LAN hängen.
Rechnerstatus an/aus (nur bei OUMA_OPT_PING)
Internet (Rechner ist im Internet an/aus)
Restzeit (ja/nein/nuch verfügbare Onlinezeit)
Wo finde ich die Auswertungen, wenn
ich keinen Httpd einsetze ?
Gar nicht.
Funktioniert Ouma auch bei DSL ?
Da
ich kein DSL nutze, weiß ich das nicht.
Ab Version 1.0.0
:Nach einer Änderung die mir Frank Neitzel empfohlen hat,
sollte DSL jetzt funktionieren
Brauche ich IMOND unbedingt ?
Nein,
aber dann tritt das Problem auf, das je Onlineverbindung der Client
eine Minute zuviel abgezogen bekommt.
Kann ich
die Internetzeitzuweisungen zur Laufzeit ändern:
Dafür
habe ich ein eigenes OPT_UpCron geschrieben, wo man die Cron-Tabelle
ändern kann. Die Änderungen gehen aber bei Neustart
verloren.
Wie
erfährt ein User, wieviel Onlinezeit er noch hat ?
Dafür
gibt es jetzt den Menüpunkt User-Time im MiniHttpd
mit eigenem Berechtigungseintrag ouma/list
0.0.1pre April 2003 - erstes local lauffähiges Opt nach kopieren von ONCO
0.0.2pre April 2003 - Anpassung an den fli-Standard
0.1.0pre Mai 2003 - Es wird jetzt zusätzlich beim Countdown geprüft, ob noch eine Onlineverbindung besteht. Problem war, das noch runtergezählt wurde, wenn keine Verbindung mehr besteht, aber ipchains noch was findet. Es wurde also immer 1 Minute zuviel abgezogen je Verbindung.
1.0.0 Mai 2003 DSL sollte jetzt funktionieren
1.0.1 Mai 2003 Freischalten der Hosts funktioniert jetzt auch
1.1.0 Juni 2003 Neuer MiniHttpd-Menüpunkt User-Liste
Bisher noch keine Ideen
Bisher auch noch nichts
Bug-Reports bitte an u.a. eMail-Adresse richten, dafür bin ich offen und dankbar.
MfG,
Volker Krause
mailto:Volker_Krause@gmx.net