Willkommen ~Gast!
Registrieren || Einloggen || Hilfe/FAQ || Staff
Probleme mit der Registrierung im Forum? Melde dich unter registerEin Bild.
Autor Beitrag
000
23.07.2008, 10:47
Alcapone



Servus Leute,

ich suche schon seit gewisser Zeit einen Proxy, welcher über eine Datenbank konfigurierbar ist (idealerweise MySQL oder MSSQL) und OpenSource / Freeware ist. Das ganze soll auf einem Windows Server laufen.
Ziel ist die Einrichtung eines Servers für ein Internetcafès über den man das Netzwerk verwalten kann. Bin derzeit dabei, eine Verwaltungssoftware mit PHP zu Scripten, in der es möglich ist, Computer per Remote an und auszuschalten, Internetcontent zu filtern und Internet für einzelne PCs zu sperren / freizugeben.
Hab schon ein paar Proxys getestet, unter anderem:

- Privoxy
- WinGate
- FreeProxy 4.00

Bei jedem Proxy fehlt mir die Funktion, ihn per MySQL / PHP zu konfigurieren (Benutzer anlegen / löschen, Filter konfigurieren usw...)

Habt ihr einen guten Tip für mich?

Linuxsoftware kommt nicht in Frage, da ich mich weder mit Linux auskenne noch die Erlaubnis habe, Linux als Serversoftware einzusetzen (Firmenrichtlinie und so...)

--

"Everything, that can go wrong, will go wrong" Murphy's Law

zum Seitenanfang zum Seitenende Profil || Suche
001
23.07.2008, 11:55
hausi



Wenn du Apache+mod_proxy einsetzt, kannst du immerhin die Userverwaltung in eine DB auslagern (funktioniert afair über die normale HTTP Basic Authentication). Computer Remote ausschalten kann man mit anderer Software (z.B. telnet), anschalten per Wake on Lan. Internetcontent filtern kann mod_proxy über ProxyBlock, das allerdings nicht von einer DB geladen werden kann. Für das würde ich vorschlagen die ProxyBlock-Zeilen in eine eigene Config auszulagern, die du dann includest und per Cron Job von der DB aus generierst. Das selbe gilt für Internet blockieren / freigeben für einzelne PCs.
Edit: Apache mit mod_proxy skaliert aber nicht allzu gut und hat viele der mächtigeren Funktionen von Proxy Servern (wie z.B. Squid) nicht.

--


Dieser Beitrag wurde am 23.07.2008 um 11:56 von hausi bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche
002
23.07.2008, 12:08
Alcapone



Einschalten erledige ich via PHP script, indem ich vom PHP script aus die Magic Packets verschicke - hat bis jetzt immer ganz gut funktioniert. Ausschalten erledige ich über das senden des shutdown kommandos mit dem parameter -m an einen der Rechner.

Hm, mod_proxy kommt schon an das hin, was ich brauche... Wie groß is der geschätzte Arbeitsaufwand, mit Manual lesen + scripten? Hab die Referenz grad überflogen. Hab bis jetzt nur mit dem PHP modul gearbeitet, also in dem sinne muss ich mich erst in das arbeiten mit apache modulen einlesen.

Cronjob schreib ich selbst einen Service für Windows. Wenn ich das richtig sehe, schickt ein cronjob regelmäßig oder zu einem bestimmten zeitpunkt eine HTTP anfrage an den webserver um ein script auszuführen, das dürfte nicht besonders aufwändig zu programmieren sein.

Und versteh ich das richtig, du meinst, ich soll die config zum blocken von seiten per cronjob z.B. einmal täglich per cronjob aus der datenbank holen?

--

"Everything, that can go wrong, will go wrong" Murphy's Law


Dieser Beitrag wurde am 23.07.2008 um 12:10 von Alcapone bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche
003
23.07.2008, 13:58
hausi



@mod_proxy: Ist relativ einfach zu bedienen, aber wie bereits oben erwähnt nicht sehr mächtig und auch nicht extrem performant. Wenn du also von vielen PCs aus über den Proxy ins Internet willst, müsstest du erstmal einige Benchmarks dazu machen. mod_proxy ist auch relativ einfach zu konfigurieren, sollte also höchstens 1-2 Stunden dauern, bis du das hast, was du willst.
@cronjob: Ein cronjob ruft einfach zu einem bestimmten (regelmässigen) Zeitpunkt einen Befehl auf. Unter Windows heisst das glaubs Scheduled Task. Musst also keinen Service dafür schreiben, weils das sicher schon gibt.
Eigentlich ist aber der cronjob gar nicht unbedingt nötig, weil dein Script nach dem DB-Update auch gleich das Config File neu generieren kann. Noch besser wäre natürlich ein Apply-Button, der betätigt werden muss, damit die Änderungen übernommen werden. Dadurch kannst du deine Blacklist komplett überarbeiten und dann einmal die Config neu schreiben.
Die Idee mit dem cronjob war, dass der z.B. alle 10 Minuten alle geblockten Seiten von der DB abfragt, schaut, ob sich etwas geändert hat, die ProxyBlock-Config neu schreibt und apache zu einem reload bewegt.

--

zum Seitenanfang zum Seitenende Profil || Suche