Το Στέκι των Πληροφορικών

Γενικά => Τεχνική υποστήριξη => Linux => Μήνυμα ξεκίνησε από: tallis στις 01 Φεβ 2011, 05:44:47 ΜΜ

Τίτλος: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: tallis στις 01 Φεβ 2011, 05:44:47 ΜΜ
Υπάρχει η δυνατότητα να φιλτράρω τις σελίδες που δίνει ο proxy (ενδεχομένως squid  + dansguardian) χρησιμοποιώντας διαφορετικά policies για τον κάθε χρήστη; π.χ. οι καθηγητές να μπορούν να μπαίνουν σε κάποιες σελίδες που οι μαθητές δεν επιτρέπετε να μπουν .. ;
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: apapakL στις 01 Φεβ 2011, 09:12:30 ΜΜ
Η δυνατότητα υπάρχει χρησιμοποιώντας squid3. Χρησιμοποιώ αυτή τη μέθοδο εδώ και αρκετό καιρό σε δυο ltsp εργαστήρια (είμαι σε δυο σχολεία).

Κώδικας [Επιλογή]
sudo apt-get install squid3

στη συνέχεια φτιάξε 3 αρχεία

/etc/squid3/whitelist_users.acl --> εδώ βάζεις τα ονόματα των χρηστών που επιτρέπεται ελεύθερη περιήγηση, πχ teacher (έναν χρήστη ανά γραμμή)

Κώδικας [Επιλογή]
teacher
daskalos
#user01


/etc/squid3/banned_users.acl --->  εδώ βάζεις τα ονόματα των χρηστών που δεν επιτρέπεται καθόλου περιήγηση, πχ a1a01 (έναν χρήστη ανά γραμμή)

Κώδικας [Επιλογή]
a1a01
a1a02
#a1a03


/etc/squid3/banned_domains.acl ---> εδώ βάζεις domains που θέλεις να απαγορεύσεις τη πρόσβαση με έναν από τους επόμενους τρόπους, πχ facebook ή facebook.com ή .facebook.com.

Κώδικας [Επιλογή]
facebook
youtube
.hi5.com
myspace.com


Αν στο address bar ενός browser το url περιέχει μια από τις παραπάνω λέξεις, το site κόβεται για όλους εκτός από τους whitelist users.

Σε αυτά τα αρχεία μπορείς να σχολιάσεις με το σύμβολο # στην αρχή της γραμμής

για να φτιάξεις τα αρχεία για παράδειγμα το /etc/squid3/whitelist_users.acl δώσε σε ένα τερματικό
Κώδικας [Επιλογή]
gksu gedit /etc/squid3/whitelist_users.acl

στη συνέχεια κατέβασε τα αρχεία ERR_SCH-SCRIPTS_BANNED_DOMAINS --> (http://wiki.ubuntu-gr.org/sch-scripts/squid?action=AttachFile&do=get&target=ERR_SCH-SCRIPTS_BANNED_DOMAINS (http://wiki.ubuntu-gr.org/sch-scripts/squid?action=AttachFile&do=get&target=ERR_SCH-SCRIPTS_BANNED_DOMAINS)) και ERR_SCH-SCRIPTS_BANNED_USERS --> (http://wiki.ubuntu-gr.org/sch-scripts/squid?action=AttachFile&do=get&target=ERR_SCH-SCRIPTS_BANNED_USERS)

αντέγραψέ τα στο /usr/share/squid3/errors/el

στη συνέχεια επεξεργάσου το αρχείο /etc/squid3/squid.conf

Κώδικας [Επιλογή]
gksu gedit  /etc/squid3/squid.conf

πήγαινε στη γραμμή 641 (με ctrl+i και γράφεις το νούμερο της γραμμής).

Κάτω από τη γραμμή

Κώδικας [Επιλογή]
# INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS

προσθέτεις τα επόμενα

Κώδικας [Επιλογή]
#SCH-SCRIPTS begin
        error_directory /usr/share/squid3/errors/el   
        acl schoolnet src 10.x.y.0/24 #όπου x, y τα αντίστοιχα νούμερα του υποδικτύου σου
        acl banned_domains url_regex -i "/etc/squid3/banned_domains.acl"
        acl banned_users ident "/etc/squid3/banned_users.acl"
        acl whitelist_users ident "/etc/squid3/whitelist_users.acl"
        deny_info ERR_SCH-SCRIPTS_BANNED_DOMAINS banned_domains
        deny_info ERR_SCH-SCRIPTS_BANNED_USERS banned_users
        http_access allow whitelist_users
        http_access deny banned_users       
        http_access deny banned_domains
        http_access allow localhost 
        http_access allow schoolnet
        http_access deny all
#SCH-SCRIPTS end


Μετά επαναφορτώνουμε το squid3
Κώδικας [Επιλογή]
sudo service squid3 force-reload

Για να παίζουν τα whitelists και banned users στους fat clients πρέπει να είναι εγκατεστημένη η υπηρεσία ident2 στον εικονικό δίσκο. Αν χρησιμοποιείς τα sch-scripts άνοιξε μια κονσόλα στον εικονικό δίσκο και έλεγξέ το.

Κώδικας [Επιλογή]
apt-get install ident2

Λογικά θα σου πει ότι το χει.
Επειδή υπάρχει ένα bug στο ltsp του Ubuntu και δεν έχει γίνει σωστά το registration της ident2 ώστε να ξεκινάει με την εκκίνηση των fat clients κάνε το εξής (στην κονσόλα του εικονικού δίσκου)

Κώδικας [Επιλογή]
update-rc.d -f openbsd-inetd remove
Κώδικας [Επιλογή]
update-rc.d openbsd-inetd defaults 20

Στη συνέχεια και ενώ είσαι ακόμα στην κονσόλα του εικονικού δίσκου των fat clients εκτέλεσε τα παρακάτω έτσι ώστε να γίνει υποχρεωτική η χρήση του proxy

Κώδικας [Επιλογή]
gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory --type string --set '/system/proxy/mode' 'manual'
Κώδικας [Επιλογή]
gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory --type bool --set '/system/http_proxy/use_http_proxy' true
Κώδικας [Επιλογή]
gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory --type string --set '/system/http_proxy/host' 'server'
Κώδικας [Επιλογή]
gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory --type int --set '/system/http_proxy/port' 3128

Το κλειδί '/system/http_proxy/host' το ορίζουμε σαν 'server' γιατί οι fat αλλά και οι thin ξέρουν τον ltsp εξυπηρετητή με το συγκεκριμένο όνομα (το 'server' είναι hardcoded στον κώδικα του ltsp) ανεξαρτήτως ονόματος που μπορεί να έχεις δώσει στον ltsp εξυπηρετητή. θα μπορούσες να βάλεις και την ip του εξυπηρετητή αλλά σε περίπτωση που ο εξυπηρετητής αλλάζει ip (πχ συνάδελφος που αλλάζει σχολεία με ltsp εξυπηρετητή το προσωπικό του laptop) ή έχει πολλαπλές κάρτες δικτύου με διαφορετικές ip (π.χ. για να λειτουργεί σε περισσότερα από ένα υποδίκτυα) θα είχες πρόβλημα.

Αν θέλεις κλειδώνεις τις ρυθμίσεις του firefox για όλους τους χρήστες έτσι ώστε να χρησιμοποιούν της ρυθμίσεις proxy του συστήματος χωρίς να έχει ο χρήστης τη δυνατότητα να την αλλάξει... Ούτε ο admin του συστήματος θα μπορεί να την αλλάξει  ;D αλλά δεν πειράζει γιατί θα είναι στους whitelist_users.

Για να το κάνεις αυτό δημιουργείς το αρχείο /etc/firefox/pref/users.js

Κώδικας [Επιλογή]
gedit /etc/firefox/pref/users.js

γράφεις τα παρακάτω και αποθηκεύεις (κλειδώνει και δυο τρεις άλλες ρυθμίσεις...)

Κώδικας [Επιλογή]
try {
///////////////////////
// Καρτέλα «Βασικές» //
///////////////////////

// «Στην εκκίνηση του Firefox:»
//   0 = «Προβολή μιας κενής σελίδας»
//  *1 = «Προβολή της αρχικής μου σελίδας»
//   3 = «Προβολή των παραθύρων και των καρτελών που υπήρχαν την τελευταία φορά»
lockPref("browser.startup.page", 1);
// «Τοποθεσία:»
lockPref("browser.startup.homepage", "www.google.gr");

/////////////////////////////////////////////
// Καρτέλα «Για προχωρημένους» -> «Δίκτυο» //
/////////////////////////////////////////////

// «Ρυθμίστε τον τρόπο με τον οποίο ο Firefox θα συνδέεται στο διαδίκτυο» -> «Ρυθμίσεις...»
// «Ρύθμιση διαμεσολαβητών για την πρόσβαση στο διαδίκτυο»
//  0 = «( ) Χωρίς διαμεσολαβητή»
//  4 = «( ) Αυτόματος εντοπισμός ρυθμίσεων διαμεσολαβητή για αυτό το δίκτυο»
//  5 = «(*) Χρήση ρυθμίσεων διαμεσολαβητή συστήματος»
//  1 = «( ) Χειροκίνητη ρύθμιση διαμεσολαβητή»
//  2 = «( ) URL αυτόματης ρύθμισης διαμεσολαβητή:»
lockPref("network.proxy.type", 5);
// Να μη βγάζει την μπάρα "Know your rights"
lockPref("xxx.legal.rights.seen", "0.0");
// Να μη βγάζει το παράθυρο με τις νέες επεκτάσεις που προστέθηκαν
lockPref("extensions.update.notifyUser", false);

}
catch(e) {
  displayError("lockedPref", e);
}



αφού τελειώσεις όλα αυτά βγαίνεις από την κονσόλα του εικονικού δίσκου

Κώδικας [Επιλογή]
exit

και κάνεις συμπίεση εικονικού δίσκου από τα sch-scripts

Έπειτα κάνεις το ίδιο για τους thin clients. Εκτελείς στο κανονικό τερματικό του server τα παρακάτω:

Κώδικας [Επιλογή]
sudo gconftool-2 --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory --type string --set '/system/proxy/mode' 'manual'
Κώδικας [Επιλογή]
sudo gconftool-2 --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory --type bool --set '/system/http_proxy/use_http_proxy' true
Κώδικας [Επιλογή]
sudo gconftool-2 --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory --type string --set '/system/http_proxy/host' 'localhost'
Κώδικας [Επιλογή]
sudo gconftool-2 --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory --type int --set '/system/http_proxy/port' 3128

Το κλειδί '/system/http_proxy/host' το ορίζουμε σαν 'localhost' για να καλύπτει όλες τις περιπτώσεις των ανεξαρτήτως ονόματος που μπορεί να έχεις δώσει στον ltsp εξυπηρετητή. θα μπορούσες να βάλεις και την ip του εξυπηρετητή αλλά σε περίπτωση που ο εξυπηρετητής αλλάζει ip (πχ συνάδελφος που αλλάζει σχολεία με ltsp εξυπηρετητή το προσωπικό του laptop) ή έχει πολλαπλές κάρτες δικτύου με διαφορετικές ip (π.χ. για να λειτουργεί σε περισσότερα από ένα υποδίκτυα) θα είχες πρόβλημα.

Προτείνεται για τους fat 'server' και για τους thin 'localhost' για να μην έχεις πρόβλημα με πιθανή αλλαγή ip του ltsp εξυπηρετητή ή όνομα ltsp-εξυπηρετητή διάφορο του server  πχ. περίπτωση συναδέλφου που πάει σε δυο σχολεία και  ltsp εξυπηρετητή το προσωπικό του laptop το οποίο πιθανώς να μην ονομάζεται 'server'.

Θα μπορούσε κανείς να ορίσει τη τιμή σε 'server' και για τους thin clients. Σε αυτή τη περίπτωση και αν o ltsp-εξυπηρετητής δε λέγεται 'server', για να βγαίνει και o ίδιος μέσω του proxy θα πρέπει να δηλωθεί στο /etc/hosts η τιμή

Κώδικας [Επιλογή]
127.0.2.1 server

Edit 18-03-2011: Επίσης θα πρέπει να αλλαχτεί στο squid.conf το εξής:

Κώδικας [Επιλογή]
acl localhost src 127.0.0.1/32

με

Κώδικας [Επιλογή]
acl localhost src 127.0.0.0/8

Αν θέλεις κλειδώνεις τις ρυθμίσεις του firefox για όλους τους χρήστες έτσι ώστε να χρησιμοποιούν της ρυθμίσεις proxy του συστήματος χωρίς να έχει ο χρήστης τη δυνατότητα να την αλλάξει (με τον ίδιο τρόπο όπως παραπάνω αλλά εκτός εικονικού δίσκου)... Ούτε ο admin του συστήματος θα μπορεί να την αλλάξει  ;D αλλά δεν πειράζει γιατί θα είναι στους whitelist_users.

O chrome τις χρησιμοποιεί ούτως ή άλλος

Κάθε φορά που κάνεις αλλάγές στα αρχεία ρυθμίσεων του squid (squid.conf, whitelist_users.acl κτλ.) να επαναφορτώνεις τις ρυθμίσεις:

Κώδικας [Επιλογή]
sudo service squid3 force-reload

Ελπίζω να βοήθησα

Υ.Γ: πηγή για τη ρύθμιση του squid3 http://wiki.ubuntu-gr.org/sch-scripts/squid-advanced (http://wiki.ubuntu-gr.org/sch-scripts/squid-advanced)
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: tallis στις 01 Φεβ 2011, 09:49:20 ΜΜ
ευχαριστώ, θα το δοκιμάσω αύριο...
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: apapakL στις 02 Φεβ 2011, 01:36:56 ΠΜ
Επισυνάπτω και ένα scriptάκι το οποίο διευκολύνει την επεξεργασία των αρχείων whitelist, banned_users, banned_domains και squid.conf.
Κάθε φορά που επεξεργάζεστε κάποιο από τα παραπάνω αρχεία χρησιμοποιώντας το script, μόλις το κλείσετε (το αποθηκεύσετε ή δεν τ' αποθηκεύσετε) εκτελείται και η εντολή επαναφόρτωσης ρυθμίσεων του squid  ;). Κάθε μετατροπή - βελτίωση - επέκταση ευπρόσδεκτη. 

Υ.Γ. Μην ξεχάσετε να το κάνετε πρώτα εκτελέσιμο
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: apanagio στις 02 Φεβ 2011, 05:34:53 ΜΜ
Υπάρχει και το script για "αυτόματη" εγκατάσταση:
https://alkisg.mysch.gr/steki/index.php?topic=3383.0

@apapakl:
Αν έχεις χρόνο μπορείς να γράψεις τις ρυθμίσεις του firefox στο wiki;
Επίσης ξέρεις αν η λύση που προτείνεις χαλάει με ενδεχόμενη αναβάθμιση του firefox;
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: apapakL στις 02 Φεβ 2011, 09:31:07 ΜΜ
Δε νομίζω εφ' όσον το αρχείο /etc/firefox/pref/users.js δεν υπάρχει και το δημιουργείς εσύ... Κάτι που δεν αναφέρθηκε είναι ότι για να κόψουμε και τις https συνδέσεις είναι να κάνουμε υποχρεωτική την χρήση proxy και για το ssl. Απλά για ευκολία δηλώνουμε ότι ο proxy πρέπει να είναι ίδιος για όλα τα πρωτόκολλα. Μπορεί να γίνει μέσω του επεξεργαστή ρυθμίσεων:

για τους fat clients από τα sch-scripts ανοίγουμε κονσόλα στον εικονικό δίσκο και δίνουμε:

Κώδικας [Επιλογή]
gconf-editor

πάμε Αρχείο ---> Νέο υποχρεωτικό παράθυρο. Στη συνέχεια πάμε στο κλειδί /system/http_proxy. Κάνουμε δεξί κλικ στο δεξί τμήμα του παραθύρου και πατάμε Νέο κλειδί. Δίνουμε Όνομα:use_same_proxy, Τύπος: Λογικό (Boolean), Τιμή: Αληθές

κλείνουμε τα παράθυρα και κάνουμε συμπίεση εικονικού δίσκου

Το ίδιο κάνουμε και για τους thin clients. Σε κανονικό τερματικό δίνουμε

Κώδικας [Επιλογή]
sudo gconf-editor

και ακολουθούμε τις παραπάνω οδηγίες.

Σας επισυνάπτω σχετικές εικόνες για το πως είναι τα σχετικά κλειδιά στον εικονικό μου δίσκο (fat clients)
Στους thin-clients (στο server δηλαδή) όπου server  πρέπει να έχει localhost
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: apapakL στις 02 Φεβ 2011, 10:57:22 ΜΜ
Παράθεση
Αν έχεις χρόνο μπορείς να γράψεις τις ρυθμίσεις του firefox στο wiki;

Ναι θα τις γράψω αυριο μεθαύριο...
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: tallis στις 05 Φεβ 2011, 06:22:52 ΜΜ
Τελικά το υλοποίησα με squid + dansguardian , υποστηρίζει και ident οπότε μπορείς να κάνεις πολύ ωραία φίλτρα για κάθε χρήστη.

Το
gedit /etc/firefox/pref/users.js

με το οποίο κλειδώνεις τον proxy στον firefox λειτουργεί πάρα πολύ ωραία.

Δυστυχώς όμως οι υπόλοιπες οδηγείες δεν κλειδώνουν και το chromium, απλά βάζουν τον proxy σαν default.
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: apapakL στις 05 Φεβ 2011, 10:02:40 ΜΜ
Παράθεση από: tallis στις 05 Φεβ 2011, 06:22:52 ΜΜ
Δυστυχώς όμως οι υπόλοιπες οδηγείες δεν κλειδώνουν και το chromium, απλά βάζουν τον proxy σαν default.
Ναι αλλά ο chromium, αν δεν κάνω λάθος, δεν έχει δικές του ρυθμίσεις proxy χρησιμοποιεί αυτές του συστήματος. Οπότε αν κλειδώσεις αυτή κλειδώνεις και τις ρυθμίσεις του chromium. Μπορεί ο χρήστης να τις προσπελάσει, να φαίνεται ότι μπορεί να τις αλλάξει αλλά στο τέλος δεν θα γίνει εκ νέου ρύθμιση... 
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: tallis στις 05 Φεβ 2011, 10:35:43 ΜΜ
apapaki ... Έχεις δίκιο, δεν το είχα ελέγξει.
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: tallis στις 08 Φεβ 2011, 12:20:47 ΜΜ
Στους FAT clients δεν λειτουργεί σωστά η αναγνώριση χρηστών μέσου ident, δεν αναγνωρίζει καθόλου τον χρήστη, παραθέτω τις γραμμές απο το logfile στις δύο πρώτες περιπτώσεις λειτουργεί σωστά, στην τελευταία όχι.

2011.2.5   17:14:48   10.20.25.7(epal-server.local)   apostolos   -   GET   0   text/html   -   0

2011.2.5   17:36:46   10.20.25.7(epal-server.local)   dokimos1   students   GET   0   -   -   0

2011.2.8   11:26:14   192.168.0.197   -   -   GET   1207   text/html   -   0
ltsp197.local teachers -


, υπάρχει κανένας τρόπος να το λύσω αυτό;
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: apanagio στις 08 Φεβ 2011, 08:35:20 ΜΜ
Δες αυτό το thread.

https://alkisg.mysch.gr/steki/index.php?topic=3499.msg35844#msg35844
μάλλον είναι γνωστό bug
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: apapakL στις 08 Φεβ 2011, 09:04:45 ΜΜ
Παράθεση από: apapakl στις 01 Φεβ 2011, 09:12:30 ΜΜ
Κώδικας [Επιλογή]

update-rc.d -f openbsd-inetd remove
update-rc.d openbsd-inetd defaults 20

Το αναφέρω και στην αρχική μου απάντηση...
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: tallis στις 09 Φεβ 2011, 10:47:24 ΠΜ
Λειτούργησε κανονικά....
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: tallis στις 09 Φεβ 2011, 03:25:29 ΜΜ
Το πρόβλημα με το ident λύθηκε.

Καθώς όμως ο server εξυπηρετεί διαφορετικά δίκτυα ... ( το 10.x.y.z στο eth1 και το 192.168.0.χ στο eth2) έχω το εξής πρόβλημα

βάζοντας το

sudo gconftool-2 --config-source xml:readwrite: etc gconf gconf.xml.mandatory --type string --set ' system http_proxy host' 'epal-server'

στους FAT κανείς δεν έχει πρόσβαση στον proxy του server
(οταν κάνω ping epal-server μου απαντάει το 127.0.1.1)

όταν το αλλάζω σε

sudo gconftool-2 --config-source xml:readwrite: etc gconf gconf.xml.mandatory --type string --set ' system http_proxy host' '10.x.y.7'

(που είναι η ip του server)

συνδέονται στον proxy οι FAT που βρίσκονται στο eth1

καμία ιδέα;

παρατήρηση ... οι thin λειτουργούν παντού κανονικά με host = "epal-server"
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: apapakL στις 09 Φεβ 2011, 08:24:25 ΜΜ
άλλαξε το

' system http_proxy host' 'epal-server' σε ' system http_proxy host' 'server'

Οι fat και οι thin ξέρουν τον ltsp εξυπηρετητή σαν server ανεξαρτήτως του ονόματος που θα δώσεις (είναι hardcoded στον κώδικα του ltsp).

Προτείνεται για τους fat 'server' και για τους thin 'localhost' για να μην έχεις πρόβλημα με πιθανή αλλαγή ip του ltsp εξυπηρετητή ή όνομα ltsp-εξυπηρετητή διάφορο του server  πχ. περίπτωση συναδέλφου που πάει σε δυο σχολεία και  ltsp εξυπηρετητή το προσωπικό του laptop το οποίο πιθανώς να μην ονομάζεται 'server'.

Επίσης πρέπει να βάλεις και στο /etc/hosts του  ltsp εξυπηρετητή (εφόσον δεν ονομάζεται server) το εξής

Κώδικας [Επιλογή]
127.0.2.1 server

για να βγαίνει και ο ίδιος ο εξυπηρετητής αν δεν έχει όνομα server μέσω του proxy.
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: tallis στις 10 Φεβ 2011, 10:09:45 ΠΜ
άλλαξα το όνομα του LTSP-server σε 'server' και λειτούργησε.

;D
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: gidarakos στις 17 Μαρ 2011, 09:32:05 ΠΜ
Αν δηλώσω στον firefox proxy «localhost» ο squid3 παίζει σωστά (και για banned_domain).
Όμως αν δηλώσω «server», σε όλες τις σελίδες παίρνω μήνυμα «ERROR The requested URL could not be retrieved. Απαγορεύεται η Πρόσβαση.» εκτός από τις banned_domain σελίδες που μου εμφανίζεται κανονικά το μήνυμα «...έχει απαγορευτεί από τον καθηγητή».
Στο hosts υπάρχει το «127.0.1.1 server». Δοκίμασα και 127.0.2.1 αλλά τίποτα.
Ενώ με την εγκατάσταση του server δημιουργείτε εγγραφή «127.0.1.1 server» εσείς γιατί προτείνετε «127.0.2.1 server»;

Ευχαριστώ για το χρόνο σας.

Υ.Γ. Ο server δεν έχει static ip. Τις δοκιμές τις κάνω από το server αν και από thin είχε την ίδια συμπεριφορά (αναμενόμενο).
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: tallis στις 17 Μαρ 2011, 09:43:45 ΠΜ
Καλημέρα

Μάλλον δεν έχεις επιτρέψει την πρόσβαση στο squid απο το συγκεκριμένο δίκτυο.

Στο squid.conf έχεις βάλει
Κώδικας [Επιλογή]

acl localnet src 10.x.y.0/24

(οπου x.y.z το δίκτυο του σχολείου σου)
και μετά
Κώδικας [Επιλογή]

http_access allow localnet

?
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: gidarakos στις 17 Μαρ 2011, 10:02:37 ΠΜ
Υπάρχουν αυτές οι εγγραφές!
Αν βάλω proxy localhost όλα παίζουν σωστά (και οι thin).
Με το όνομα server τι γίνεται!
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: alkisg στις 17 Μαρ 2011, 10:14:54 ΠΜ
Δεν έχω δει καθόλου μα καθόλου το θέμα squid, αλλά λογικά κάπου θα έχει κάπου τέτοιες οδηγίες:
Κώδικας [Επιλογή]

acl localhost src 127.0.0.1/32 ::1
acl to_localhost dst 127.0.0.0/8 0.0.0.0/32 ::1
...
http_access allow localhost


...οι οποίες δεν περιλαμβάνουν το server, αν αυτός είναι 127.0.1.1.
Οπότε ίσως η πρώτη γραμμή πρέπει να αλλάξει σε:
Κώδικας [Επιλογή]

acl localhost src 127.0.0.0/8 ::1

ή εναλλακτικά, αν το επιτρέπει η σύνταξη, να προστεθεί μόνο το dns name "server" στην acl "localhost".
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: apapakL στις 17 Μαρ 2011, 10:30:23 ΠΜ
Παράθεση από: gidarakos στις 17 Μαρ 2011, 09:32:05 ΠΜ
Ενώ με την εγκατάσταση του server δημιουργείτε εγγραφή «127.0.1.1 server» εσείς γιατί προτείνετε «127.0.2.1 server»;

Το προτείνουμε μόνο στη περίπτωση που ο ltsp εξυπυρετητής δεν λέγεται server
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: apapakL στις 17 Μαρ 2011, 10:34:37 ΠΜ
αν θέλεις τρέξε τη παρακάτω εντολή
Κώδικας [Επιλογή]
cat /etc/squid3/squid.conf | egrep -v "^s*(#|$)"

και πόσταρε το αποτέλεσμα για να δούμε το squid.conf σου
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: gidarakos στις 17 Μαρ 2011, 12:38:41 ΜΜ
Κώδικας [Επιλογή]
teacher@server:~$ cat /etc/squid3/squid.conf | egrep -v "^s*(#|$)"
acl manager proto cache_object
acl localhost src 127.0.0.1/32
acl to_localhost dst 127.0.0.0/8 0.0.0.0/32
acl SSL_ports port 443
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl CONNECT method CONNECT
http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
        error_directory /usr/share/squid3/errors/el   
acl schoolnet src 10.84.75.0/24
        acl banned_domains url_regex -i "/etc/squid3/banned_domains.acl"
        deny_info ERR_SCH-SCRIPTS_BANNED_DOMAINS banned_domains
        http_access deny banned_domains
        http_access allow localhost
        http_access allow schoolnet
        http_access deny all
http_access allow localhost
http_access deny all
icp_access deny all
htcp_access deny all
http_port 3128
hierarchy_stoplist cgi-bin ?
access_log /var/log/squid3/access.log squid
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern (cgi-bin|\?) 0 0% 0
refresh_pattern . 0 20% 4320
icp_port 3130
dns_nameservers 194.63.239.164 194.63.237.4 194.63.238.4
coredump_dir /var/spool/squid3
teacher@server:~$
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: apapakL στις 17 Μαρ 2011, 01:30:57 ΜΜ
Άλλαξε τη γραμμή

Κώδικας [Επιλογή]
acl localhost src 127.0.0.1/32

σε

Κώδικας [Επιλογή]
acl localhost src 127.0.0.1/32 127.0.1.1/32
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: apapakL στις 17 Μαρ 2011, 01:38:32 ΜΜ
Να και το squid.conf σου με τη παραπάνω προσθήκη χωρίς σχόλια, χωρίς κάποιες διπλές directives
Κώδικας [Επιλογή]
acl manager proto cache_object
acl localhost src 127.0.0.1/32 127.0.1.1/32
acl to_localhost dst 127.0.0.0/8 0.0.0.0/32
acl SSL_ports port 443
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl CONNECT method CONNECT
http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access deny to_localhost
        error_directory /usr/share/squid3/errors/el   
acl schoolnet src 10.84.75.0/24
        acl banned_domains url_regex -i "/etc/squid3/banned_domains.acl"
        deny_info ERR_SCH-SCRIPTS_BANNED_DOMAINS banned_domains
        http_access deny banned_domains
        http_access allow localhost
        http_access allow schoolnet
        http_access deny all
icp_access deny all
htcp_access deny all
http_port 3128
hierarchy_stoplist cgi-bin ?
access_log /var/log/squid3/access.log squid
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern (cgi-bin|\?) 0 0% 0
refresh_pattern . 0 20% 4320
icp_port 3130
dns_nameservers 194.63.239.164 194.63.237.4 194.63.238.4
coredump_dir /var/spool/squid3


Υ.Γ. Αν το χρησιμοποιήσεις, για παν ενδεχόμενο πάρε back up το παλιό!!
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: gidarakos στις 17 Μαρ 2011, 01:50:30 ΜΜ
Δούλεψε!  :) Σε ευχαριστώ!

Άρα αυτό είναι κάτι που πρέπει να προσθέτουμε σε μία εγκατάσταση squid3;
Στις οδηγίες αν δεν κάνω λάθος δεν είδα κάτι τέτοιο..
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: apapakL στις 17 Μαρ 2011, 02:07:34 ΜΜ
Να σου πω την αλήθεια εμένα το configuration σου (με proxy στο firefox server) για τους thin δούλευε αλλά στο server όχι.

Οι οδηγίες που αναφέρονται στο συγκεκριμένο post περιλαμβάνουν και φιλτράρισμα ανά χρήστη, αλλά επειδή ο διαχειριστής του συστήματος είναι στους whitelist users, και το σχετικό directive προηγείται από τα υπόλοιπα, δεν εμφανιζόταν πρόβλημα αφού συνδέομαι στο server με χρήστη που ανήκει στους whitelist_users...
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: apapakL στις 17 Μαρ 2011, 03:27:53 ΜΜ
Παράθεση από: apapakl στις 17 Μαρ 2011, 02:07:34 ΜΜ
Να σου πω την αλήθεια εμένα το configuration σου (με proxy στο firefox server) για τους thin δούλευε αλλά στο server όχι.


fat client ήταν τελικά. Sorry! Τώρα που το σκέφτομαι το πρόβλημα το είχα δει και γι αυτό πρότεινα  για ltsp server και thin να χρησιμοποιείται localhost ενώ στους fat server. Επιπρόσθετα γλυτώνουμε από προβλήματα όπως αλλαγές ip λόγω μεταφοράς σε άλλα υποδίκτυα πχ laptop ltsp server, ή όνομα εξυπηρετητή διαφορετικό του hardcoded στο κώδικα του ltsp "server".

Επίσης δουλεύει και με αυτό που πρότεινε ο alkisg
Αντικατάσταση του

Κώδικας [Επιλογή]
acl localhost src 127.0.0.1/32

με

Κώδικας [Επιλογή]
acl localhost src 127.0.0.0/8

Οπότε ή κάνουμε την παραπάνω αλλαγή στο squid.conf και χρησιμοποιούμε παντού server ή χρησιμοποιούμε localhost για proxy στους thin και τον ίδιο τον ltsp server και server για proxy στους fat clients.
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: gidarakos στις 17 Μαρ 2011, 08:54:15 ΜΜ
Οι mandatory ρυθμίσεις για thin τι νόημα έχουν αν δεν κλειδώσεις τις ρυθμίσεις του firefox;
Θέλω να πω ότι αν μας ενδιαφέρει ο proxy να είναι υποχρεωτικός μόνο για τον firefox χρειάζονται;
Οι mandatory ρυθμίσεις είναι γενικά για gnome εφαρμογές που «βγαίνουν» στο internet για να χρησιμοποιούν υποχρεωτικά τον proxy;
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: apapakL στις 18 Μαρ 2011, 01:34:40 ΠΜ
Οι mandatory ρυθμίσεις για τον proxy γίνονται έτσι ώστε να μη μπορεί κανείς απλός χρήστης να τις αλλάξει. Έτσι κλειδώνοντας τις ρυθμίσεις δικτύου του firefox στο να χρησιμοποιεί τον proxy του συστήματος, εξασφαλίζεται ότι θα χρησιμοποιείται πάντοτε ο proxy άρα και το φιλτράρισμα ή ότι άλλο τον έχεις βάλει να κάνει. Η μέθοδος κλειδώματος του firefox αναφέρεται στο 2ο post αυτού του θέματος.

Ο chromium ακολουθεί τις ρυθμίσεις του συστήματος και δεν έχει ρυθμίσεις όπως ο firefox (τουλάχιστον στο gui του  ::))... Οπότε δε χρειάζεται να κλειδώσουμε (προς το παρόν  ::)) κάτι...

Για άλλους browsers δεν το έχω ψάξει για την ώρα... Άρα αν μείνουμε σε firefox και chromium (που είναι και καλύτερος για thin clients - sorry πύρινη αλεπού) είμαστε καλυμμένοι.

Οι mandatory λοιπόν ρυθμίσεις στα κλειδιά του gnome κλειδώνουν τη συμπεριφορά των στοιχείων στα οποία αναφέρονται έτσι ώστε να μη μπορεί να αλλάξει από τους χρήστες του.
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: gidarakos στις 18 Μαρ 2011, 08:46:46 ΜΜ
Με είχαν μπερδέψει οι mandatory ρυθμίσεις γιατί ενώ τις εφάρμοζα (sudo ...) ο firefox με τις ρυθμίσεις που είχε (Ρυθμίσεις σύνδεσης>Χρήση ρυθμίσεων διαμεσολαβητή συστήματος) τις αγνοούσε.
Μόνο όταν δήλωνα τον proxy στον firefox με «Χειροκίνητη ρύθμιση διαμεσολαβητή» δούλευε.
Όταν αποφάσισα να κάνω επανεκκίνηση τον LTSP (λογικά τότε εφαρμόστηκαν οι mandatory) δούλεψαν όλα σωστά! Δηλαδή με ρύθμιση «Χρήση ρυθμίσεων διαμεσολαβητή συστήματος» έπαιξε ο proxy και ο firefox έκοβε τα domains του banned_domains.

Άρα θέλει επανεκκίνηση το gnome για να παίξουν οι mandatory ή κάτι κάνω λάθος;
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: alkisg στις 18 Μαρ 2011, 09:13:24 ΜΜ
Παράθεση από: gidarakos στις 18 Μαρ 2011, 08:46:46 ΜΜ
Άρα θέλει επανεκκίνηση το gnome για να παίξουν οι mandatory ή κάτι κάνω λάθος;

Οι mandatory (συνήθως) διαβάζονται/εφαρμόζονται όταν ο χρήστης κάνει login.
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: apapakL στις 18 Μαρ 2011, 11:42:18 ΜΜ
Άρα μόλις κάνεις αλλαγές κάνε logout και μετά πάλι login...
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: gidarakos στις 21 Μαρ 2011, 11:18:41 ΠΜ
1. Εφόσον σε στήσιμο ltsp+thin δηλώνουμε mandatory localhost χρειάζονται οι ακόλουθες δηλώσεις στο squid.conf;
Κώδικας [Επιλογή]
acl schoolnet src 10.x.y.0/24 #όπου x, y τα αντίστοιχα νούμερα του υποδικτύου σου
http_access allow schoolnet

Δεν αρκεί η παρακάτώ που ήδη υπάρχει η οποία παίζει σε όλα τα network id;
Κώδικας [Επιλογή]
http_access allow localhost

2. Έχω παρατηρήσει ότι αλλού βλέπουμε την εντολή
Κώδικας [Επιλογή]
sudo service squid3 force-reload
και αλλού
Κώδικας [Επιλογή]
sudo invoke-rc.d squid3 force-reload
Παίρνουμε το ίδιο αποτέλεσμα, αλλά είναι το ίδιο;
Παρατήρησα επίσης ότι είναι διαφορετικό αν όπου "force-reload" βάλουμε "restart".

3. Το ίδιο θα ρωτήσω για τον dnsmasq..
Κώδικας [Επιλογή]
sudo invoke-rc.d dnsmasq restart
όπου "invoke-rc.d" μπορούμε να βάλουμε "service" και όπου "force-reload" να βάλουμε "restart";
Με όλους τους συνδιασμούς έχουμε το ίδιο αποτέλεσμα, αλλά είναι το ίδιο;
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: apapakL στις 21 Μαρ 2011, 01:25:06 ΜΜ
1. Η οδηγία http_access allow localhost επιτρέπει το browsing από τον ίδιο το localhost. Άρα οι thin που λειτουργούν εντός του localhost δηλαδή του ltsp-εξυπηρετητή, θα βγαίνουν μέσω του proxy με το τρόπο που λες. Δε θα μπορείς όμως να χρησιμοποιήσεις τον proxy και για άλλα μηχανήματα του δικτύου ή fat clients.

2. Το force-reload αναγκάζει τον squid3 να ξαναδιαβάσει το squid.conf χωρίς να χρειάζεται επανεκκίνηση

3. Το θέμα είναι αρκετά τεχνικό και δεν το ξέρω καλά. Πρέπει να έχει να κάνει με τις υπηρεσίες που μπορεί να είναι απενεργοποιημένες, ενεργοποιημένες να ξεκινούν σε κάποιο run-level, να είναι upstart jobs, να ξεκινούν ανάλογα με το αν διαπιστωθεί κάποιο συμβάν πχ αν βάλουμε το καλώδιο στη κάρτα δικτύου ο network-manager εκκινεί όλες τις διαδικασίες δικτύωσης.... Σε γενικές γραμμές από το Ubuntu 9.10 και μετά χρησιμοποιούμε το service. Παλαιότερα χρησιμοποιούσαμε το
invoke-rc.d και το /etc/init.d/<ονομα υπηρεσίας>
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: gidarakos στις 22 Μαρ 2011, 02:11:18 ΜΜ
Στις ρυμθίσεις που αναφέρονται σε αυτό το θέμα καλό δεν είναι να ενεργοποιούμε και την cache του squid μια που μιλάμε για ltsp-thin άρα επιβάρυνση του δικτύου;
Νομίζω από default η εντολή (μόνο αυτή δε χρειάζεται για να ενεργοποιηθεί η cache;)
Κώδικας [Επιλογή]
cache_dir ufs /var/spool/squid3 15000 16 256
που αναφέρεται στον οδηγό της ts.sch.gr, είναι με σχόλιο (#)!
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: apapakL στις 22 Μαρ 2011, 03:11:58 ΜΜ
H cache είναι ενεργοποιημένη αλλά by default έχει μικρό μέγεθος
Με την εντολή που περιγράφεις δεν την ενεργοποιείς αλλά της αλλάζεις το μέγεθος.
Καλό είναι το μέγεθος ειδικά αν χρησιμοποιείς το proxy ώστε να cachaρεις updates από standalone λινουξ ή windows ( :() μηχανάκια
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: gidarakos στις 22 Μαρ 2011, 08:53:13 ΜΜ
Παράθεση από: apapakl στις 22 Μαρ 2011, 03:11:58 ΜΜ
H cache είναι ενεργοποιημένη
Γι' αυτό υπάρχει κάποιο TAG μέσα στο squid.conf ή είναι εξ' ορισμού;
Παράθεση από: apapakl στις 22 Μαρ 2011, 03:11:58 ΜΜ
αλλά by default έχει μικρό μέγεθος
Το μικρό αυτό μέγεθος περιγράφετε από αυτό (δηλαδή 100MB);
Κώδικας [Επιλογή]

#Default:
# cache_dir ufs /var/spool/squid3 100 16 256
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: apapakL στις 22 Μαρ 2011, 09:58:11 ΜΜ
Ακριβώς!
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: gidarakos στις 23 Μαρ 2011, 08:37:23 ΠΜ
Δηλαδή αν δε θέλεις να κάνει cache o proxy το μόνο που πρέπει να κάνεις είναι να τη μηδενίσεις στο squid.conf;
Κώδικας [Επιλογή]
cache_dir ufs /var/spool/squid3 0 16 256
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: apapakL στις 23 Μαρ 2011, 10:14:24 ΠΜ
Εξαρτάται από την έκδοση του squid που χρησιμοποιείς.

Για περισσότερες πληροφορίες
http://wiki.squid-cache.org/SquidFaq/ConfiguringSquid#Can_I_make_Squid_proxy_only.2C_without_caching_anything.3F (http://wiki.squid-cache.org/SquidFaq/ConfiguringSquid#Can_I_make_Squid_proxy_only.2C_without_caching_anything.3F)
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: gidarakos στις 28 Μαρ 2011, 12:53:23 ΜΜ
1. Για να ακυρώσουμε τις mandatory ρυθμίσεις τι εντολές χρειάζονται;
2. Για να ακυρώσουμε τα κλειδώματα του firefox ο σωστός τρόπος είναι να σβήσουμε το users.js;

Υ.Γ. Για LTSP+thin ρωτάω.
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: apapakL στις 28 Μαρ 2011, 01:56:21 ΜΜ
1.
Κώδικας [Επιλογή]
sudo gconf-editor

Πας αρχείο --> Νέο υποχρεωτικό παράθυρο και από κει σβήνεις τα υποχρεωτικά κλειδιά που έχεις ορίσει

Για να δεις την αλλαγή χρειάζεται logout και πάλι login

2. Μπορείς είτε να σβήσεις ή να μετονομάσεις το εν λόγω αρχείο ή να σχολιάσεις τις γραμμές που σε ενδιαφέρουν
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: gidarakos στις 28 Μαρ 2011, 02:59:10 ΜΜ
Μέσα από το gconf-editor είναι γνωστό και από τις οδηγίες (ts.sch.gr). Sorry! Δικό μου το λάθος που δεν το ανέφερα.

Ήθελα να ρωτήσω αν μπορούμε με αντίστοιχες εντολές (ίσως gconftool-2 ...) να καταργήσουμε τις mandatory για τον proxy (όχι μέσω gconf-editor).
Τίτλος: Απ: Φιλτράρισμα σελίδων απο thin - fat client - server
Αποστολή από: apapakL στις 28 Μαρ 2011, 11:14:22 ΜΜ
Για παράδειγμα:

Κώδικας [Επιλογή]
sudo gconftool-2 --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory --unset '/system/http_proxy/use_http_proxy'

Μπορείς να δεις κάμποσα και με

Κώδικας [Επιλογή]
man gconftool-2