PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Firefox Config read-only



Flummi
16.11.10, 18:44
Hallo,

ich möchte folgendes erreichen: Firefox soll Proxy-Einstellungen bekommen und diese sollen dann für die User nicht mehr veränderbar sein. Ein `chmod 400 prefs.js` im Firefox-Verzeichnis hat nichts gebracht. Die User können dann immer noch in der laufenden Firefox-Instanz allerlei Einstellungen vornehmen, sie werden lediglich beim nächsten Mal vergessen. Was ich aber will ist, dass die Einstellungen gar nicht erst verändert werden können.

Der Grund ist, Einsatz in einer Schule. Jeder Schüler muss über den Schul-Proxy ins Internet, um den Inhalt zu filtern.

Transparent Proxy zu machen hab ich mir auch schon überlegt, mir wäre es aber sehr recht, wenn sich das so auch lösen ließe. Der Internet-Explorer kann das nämlich, da kann zentral gesteuert werden, was verstellbar ist, und was nicht.

mfG,
Flummi.

rudelgurke
16.11.10, 19:14
Hmm - und was hindert dich daran den Eigentümer zu ändern und den Usern nur Leserechte zu geben ?

Oder aber per extended attributes / ACL's

Flummi
16.11.10, 19:17
Den Eigentümer ändern und dem User nur Leserechte zu geben ändert leider nichts daran, dass die Eisntellungen in der laufenden Instanz geändert werden können. Speichern kann der User die Einstellungen zwar nicht, ist ja nur lesend, aber ändern kann er sie.

HirschHeisseIch
16.11.10, 19:40
Ich würd da an den einzelnen Clients gar nix mehr umstellen.

Einfach im Netzwerk den Traffic nach außen nur über den Proxy erlauben. Wenn der Schüler dann was anderes einstellt, kommt er eben gar nicht mehr raus...

Flummi
16.11.10, 19:47
Danke für die Meldungen bis jetzt.

@HirschHeisseIch:

Das heißt per iptables auf dem Proxy-Server alles auf die Proxy-Adresse umleiten? Das wäre dann ja praktisch ein transparent Proxy.

Das wäre eine Möglichkeit, hat aber folgendes Problem, wofür ich vielleicht den Aufbau etwas genauer erklären muss.

Es gibt zwei Proxies, einer lauscht auf 3131 und einer auf 3128.

Verbindet man sich mit 3131, dann wird der Traffic durch Dansguardian (ein Contentfilter) geschleust und dann über 3128 in die Außenwelt.

Schüler müssen sich mit 3131 verbinden, Lehrer können direkt über 3128 hinaus und müssen somit nicht durch Dansguardian (der sperrt z.B. Facebook).

Wenn es wirklich keine andere Möglichkeit gibt, dann muss man das vielleicht über eine geheime Browsererkennung machen, die nur die Lehrer wissen, damit der Dansguardian alles von ihnen durchlässt.

John W
16.11.10, 20:06
Wenn es wirklich keine andere Möglichkeit gibt, dann muss man das vielleicht über eine geheime Browsererkennung machen, die nur die Lehrer wissen, damit der Dansguardian alles von ihnen durchlässt.
Na denn viel Spaß mit Schülern wie mir... :ugly:

Das sperren der Proxy-Einstellungen im Firefox lässt sich afaik immer irgendwie umgehen.
Und wenn der Benutzer sich halt einen anderen Browser holt - wer will das verhindern?
Portable gibt es mittlerweile nicht mehr nur für Windows - für Linux gibt es das auch (http://stadt-bremerhaven.de/portable-firefox-fuer-linux) und auf den Macs bei uns in der Schule hab ich auch einen Firefox im Profil liegen, der deutlich aktueller ist als der Installierte...

HirschHeisseIch
16.11.10, 20:21
Würd das vielleicht eher durch nen IP/Mac-Filter regeln. Dafür müssen natürlich die IPs und/oder MACs der Lehrer-PCs bekannt sein. ;)

Aber Aushebeln lässt sich am End natürlich (fast) alles.
"Damals" in der Schule war auch nur http(s) nach außen erlaubt.
SSH-Tunnel durch nen http-Tunnel hats aber möglich gemacht. ;)

Flummi
16.11.10, 20:28
@John:

So Schüler wie du, die daran vorbeikommen bekommen in meinem Informatikunterricht so und so dafür eine bessere Note ;)

@Hirsch:

IP/MAC-Filter geht auch nicht, da es keine Rechner gibt, die nur für Lehrer oder nur für Schüler sind. Theoretisch muss sich ein Lehrer bei jedem PC einloggen können und von dort aus alles machen können.


Ich werde wahrscheinlich das mit der Browserkennung machen. Per Skript wird in jede Firefox-Config der Lehrer als Browserkennung "langerStringdenkeinererrät" eingetragen und jeder das nicht hat, muss durch den Filter. Das zu umgehen wird auch für gewifte Schüler eher schwer, denk ich. Der müsste schon den Traffic eines Lehrers mitschneiden und bei der mysteriösen Browserkennung den Hund begraben sehen. Dafür gibts so und so dann gute Noten ;)

Danke auf jeden Fall für das Brainstorming.

rudelgurke
16.11.10, 21:38
Dann schieb den filternden Proxy transparent rein und den ungefilterten Proxy nur per Auth. Raus geht's dann nur transparent oder per Auth Proxy - dann ist es zumindest nicht ganz so einfach irgendein Portable zu installieren und damit alles zu umgehen.

pferdefreund
17.11.10, 09:17
Portable geht aber doch nur, wenn man den Zugriff auf externe Medien erlaubt - läßt sich doch einfach
mit entsprechenden rmmod ... für externe medien in nem Startscript oder modules.blacklist erreichen.
Ansonsten halt den Browser aus den Sourcen erstellen und die Konfigurationsmenues als dummy-FUnktionen
einbinden. Ist zwar aufwendig - aber was ein Nutzer nicht aufrufen kann, kann er auch nicht ändern.
Genauso kann man auch dann in den Sourcen die download-funktion sperren (speichern-Menue totlegen) und
dann kann auch kein mobiler Browser aus dem Netz geladen werden.
Der Quelltext ist für mich immer die Basis.

John W
17.11.10, 11:49
Runterladen kannst du auch ohne Speichern-Menü... Im Zweifelsfall holt man sich die Datei halt aus dem Cache.

pferdefreund
17.11.10, 13:25
und wenn der browser mit einer anderen, dem User erst mal unbekannten Benutzerkennung läuft, ist
und der eigentliche Benutzer hier keinen zugriff hat ? - Ich weiß - ist gefrickel aber Sicherheit hat halt
ihren Preis. Dazu muss dann ps entsorgt werden, ebenso top und htop und wie sie alle heißen und was den
cashe bei downloads angeht - der wird ja wohl nicht geschrieben, wenn die Funktion speichern oder speichern unter per Quelltext abgeschaltet ist. Der Browser entpackt usw sicherlich nix im voraus.

rudelgurke
17.11.10, 15:28
Obwohl da sicherlich der Aufwand den Nutzen übersteigt. Wenn man nur sucht, mit Perl ist schnell ein FTP Client gebastelt.
Will man dass alles "totlegen" wird man wohl nie fertig.

Hier helfen vielleicht auch klare Nutzungsregelungen - entsprechendes Auditing vorausgesetzt kann man auch nachvollziehen wer was wie gemacht hat und entsprechend reagieren. Bringt vielleicht mehr als die Zeit damit zu vertrödeln das System möglichst abzudichten - irgendeinen Weg wird der geneigte Schüler ohnehin finden, wenn er nur will.

John W
17.11.10, 15:47
Wer mir ps stehlen will, wird erschossen! Da kann der Lehrer noch so fluchen, da frickel ich mir halt ein ps über /proc, cat, grep und co zusammen -> Es geht einfach nicht. Es gibt immer einen Umweg, mit dem man ans Ziel kommt.

Roger Wilco
17.11.10, 16:00
ich möchte folgendes erreichen: Firefox soll Proxy-Einstellungen bekommen und diese sollen dann für die User nicht mehr veränderbar sein.
Du suchst eine Art Kiosk-Modus für Firefox.

Siehe http://wiki.ubuntuusers.de/Firefox/Surfstation und https://addons.mozilla.org/de/firefox/addon/1659/

Flummi
17.11.10, 16:25
Danke für die Antworten. Ich denke, dass Benutzerauthentifikation wahrscheinlich das geringste Übel ist, auch wenn man dafür einiges an den vorhandenen iptables und der Proxy-Config ändern werden muss...

Wenn ich per iptables für Forwards nur den Proxy-Port erlaube, dann kann man so viele Portable-Apps installieren wie man will, man muss durch den Proxy :)

FM_81
18.11.10, 06:38
Wäre für Firefox nicht /usr/share/xulrunner-X.Y/greprefs/all.js der bessere Ansatz?
Ungeachtet dessen, was hier schon weiter oben geschrieben steht ...

MfG, FM_81