Εγκατάσταση/παραμετροποίηση Squid

Ξεκίνησε από Δημήτρης Δαλαγιώργος, 04 Νοε 2009, 06:00:03 ΜΜ

« προηγούμενο - επόμενο »

Δημήτρης Δαλαγιώργος

Διαβάζω στη σελίδα 17 του οδηγού για την εγκατάσταση του Squid σε Ubuntu

5. Στη συνέχεια πηγαίνουμε Εφαρμογές > Βοηθήματα > Τερματικό και πληκτρολογούμε:

sudo gedit /etc/squid/squid.conf

Στο αρχείο που έχει ανοίξει συμπληρώνουμε τις εξής γραμμές:

acl sch src 10.x.y.z/24
http_access allow sch


Προφανώς sch είναι το όνομα της acl που θα επιτρέπει στα μηχανάκια του τοπικού δικτύου να βλέπουν τον έξω κόσμο.

Αυτό που δεν καταλαβαίνω είναι:
α) Τι είναι το 24; Στο squid.conf έχει και /32 και /8. Ποια η διαφορά;
β) Υποθέτω ότι όπου x.y.z θα βάλω τη διεύθυνση του server, σωστά;
Ενάντια στην ηλιθιότητα, ακόμα και οι θεοί, μάταια αγωνίζονται.
Friedrich Schiller

alkisg

α) Το /24 σημαίνει το μέγεθος (σε bit) της subnet mask του τοπικού σου δικτύου (πάντα /24 στα ελληνικά σχολεία).
255.255.255.0 => /24
255.255.0.0 => /16
255.0.0.0 => /8

Το βλέπεις κι αν γράψεις ip addr show eth0

β) Ναι

Δημήτρης Δαλαγιώργος

Για να ρυθμίσω τον Squid ως proxy για όλους τους χρήστες σε κάθε client τι πρέπει να κάνω; Ο οδηγός της Τεχνικής Στήριξης δεν περιγράφει κάποια batch διαδικασία   :-\
Ενάντια στην ηλιθιότητα, ακόμα και οι θεοί, μάταια αγωνίζονται.
Friedrich Schiller

alkisg

Για μαζική ρύθμιση των clients ώστε να χρησιμοποιούν το squid για caching, ανιχνεύοντας αυτόματα αν αυτό είναι διαθέσιμο, αρκεί να εκτελεστούν οι παρακάτω εντολές σε κάθε client:

sudo gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory --type string --set '/system/proxy/mode' 'auto'
sudo gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory --type string --set '/system/proxy/autoconfig_url' 'http://10.160.17.10/wpad.dat'


Αλλάξτε το 10.160.17.10 με τη διεύθυνση του ubuntu server.
Εφόσον μπαίνει συγκεκριμένη IP, δεν χρειάζεται η προσθήκη του wpad στο αρχείο /etc/hosts των clients.
Η παραπάνω ρύθμιση είναι υποχρεωτική, δηλαδή δεν μπορούν να την παρακάμψουν οι χρήστες. Όμως, χρειάζεται επανεκκίνηση των clients για να πιάσει.

markakis

Στην παράγραφο 2.2.3 του οδηγού του ΙΤΥ (σελ. 22) αφήνεται να εννοηθεί ότι δεν έχει σημασία σε πιο σημείο του /etc/squid/squid.conf (π.χ. στο τέλος) θα προστεθούν οι γραμμές:

Παράθεσηacl bad url_regex -i "/etc/squid/squid-block.acl"
http_access deny bad

Νομίζω ότι αυτό είναι λάθος, ή τουλάχιστο δεν δούλεψε σε 'μένα.
Υπάρχει ειδικό σημείο, με ετικέτα ACCESS CONTROLS κάτω από το οποίο πρέπει να προστεθούν οι δυο αυτές γραμμές.

Δημήτρης Δαλαγιώργος

Παράθεση από: alkisg στις 05 Νοε 2009, 09:56:51 ΠΜ
Για μαζική ρύθμιση των clients ώστε να χρησιμοποιούν το squid για caching, ανιχνεύοντας αυτόματα αν αυτό είναι διαθέσιμο, αρκεί να εκτελεστούν οι παρακάτω εντολές σε κάθε client:

sudo gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory --type string --set '/system/proxy/mode' 'auto'
sudo gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory --type string --set '/system/proxy/autoconfig_url' 'http://10.160.17.10/wpad.dat'


Αλλάξτε το 10.160.17.10 με τη διεύθυνση του ubuntu server.
Εφόσον μπαίνει συγκεκριμένη IP, δεν χρειάζεται η προσθήκη του wpad στο αρχείο /etc/hosts των clients.
Η παραπάνω ρύθμιση είναι υποχρεωτική, δηλαδή δεν μπορούν να την παρακάμψουν οι χρήστες. Όμως, χρειάζεται επανεκκίνηση των clients για να πιάσει.

Αυτό αλλάζει τις ρυθμίσεις του 'Σύστημα>Προτιμήσεις>Διαμεσολαβητής Δικτύου', σωστά; Ένας χρήστης μπορεί ν' αλλάξει proxy μέσα απ' το Firefox, ή ακόμα κι αν βάλει άλλες ρυθμίσεις δε θα έχουν ισχύ; Αν έχουν ισχύ, θα πρέπει να κλειδώσουμε και τις ρυθμίσεις του Firefox;
Ενάντια στην ηλιθιότητα, ακόμα και οι θεοί, μάταια αγωνίζονται.
Friedrich Schiller

alkisg

Yup. Μετά τα παραπάνω, ένας χρήστης δεν μπορεί να αλλάξει τις υποχρεωτικές ρυθμίσεις του gnome, αλλά μπορεί να αλλάξει τις ρυθμίσεις του firefox.
Επομένως θέλει κι ο firefox κλείδωμα: https://alkisg.mysch.gr/steki/index.php?topic=2223.msg17750#msg17750

Εννοείται ότι αντί για χειρωνακτικό editing του αρχείου ρυθμίσεων, μπορούν να δωθούν εντολές του gconftool-2 παρόμοιες με τις παραπάνω.

Yannis Siahos

Παράθεση από: markakis στις 05 Νοε 2009, 08:13:58 ΜΜ
Στην παράγραφο 2.2.3 του οδηγού του ΙΤΥ (σελ. 22) αφήνεται να εννοηθεί ότι δεν έχει σημασία σε πιο σημείο του /etc/squid/squid.conf (π.χ. στο τέλος) θα προστεθούν οι γραμμές:

Παράθεσηacl bad url_regex -i "/etc/squid/squid-block.acl"
http_access deny bad

Νομίζω ότι αυτό είναι λάθος, ή τουλάχιστο δεν δούλεψε σε 'μένα.
Υπάρχει ειδικό σημείο, με ετικέτα ACCESS CONTROLS κάτω από το οποίο πρέπει να προστεθούν οι δυο αυτές γραμμές.

Γεια χαρά

ο δαίμων του τυπογραφείου....
στη σελίδα 13 ο οδηγός ανέφερε να μπουν στο #Recommended Minimum αλλά κάτι πήγε λάθος στο copy-paste στη σελ. 22....
αλλά και πάλι θα μπορούσε να υπάρξει πρόβλημα...

Το σωστό είναι η access-list bad να γίνει deny πριν την access-list sch που γίνεται allow

δηλ.

Παράθεσηacl sch src 10.50.40.0/24
acl bad url_regex -i "/etc/squid3/squid-block.acl"
http_access deny bad
http_access allow sch

θα διορθωθεί στην επόμενη έκδοση του οδηγού που θα είναι διαθέσιμη σύντομα

Δημήτρης Δαλαγιώργος

#8
1) Υπάρχει τρόπος για per user παραμετροποίηση του Squid; Π.χ. θέλω να κόψω το facebook και το YouTube για τους μαθητές, αλλά να τα έχω ανοιχτά για τους καθηγητές. Ή, να κλείσω το YouTube για τους μαθητές της Α' και της Β' αλλά να το έχω ανοιχτό για τους χρήστες του μαθήματος των πολυμέσων.

2) Ποιο πρόγραμμα χρησιμοποιείτε για να αναλύετε τα log files του Squid; Θέλω να μπορώ να βλέπω ποια site επισκέπτονται οι μαθητές και να προχωράω στην απαραίτητη λογοκρισία μετά.
Ενάντια στην ηλιθιότητα, ακόμα και οι θεοί, μάταια αγωνίζονται.
Friedrich Schiller

Yannis Siahos

Παράθεση από: Yannis Siahos στις 06 Νοε 2009, 11:56:51 ΠΜ

....
θα διορθωθεί στην επόμενη έκδοση του οδηγού που θα είναι διαθέσιμη σύντομα


Η νέα έκδοση είναι διαθέσιμη από τον ενημερωτικό κόμβο της ΤΣ http://ts.sch.gr/ts/newsDetails.do?action=newsDetails&itemId=352057

Ελπίζω να είναι πιο κατανοητή.

Yannis Siahos

Παράθεση από: Δημήτρης Δαλαγιώργος στις 12 Νοε 2009, 11:28:59 ΠΜ
1) Υπάρχει τρόπος για per user παραμετροποίηση του Squid; Π.χ. θέλω να κόψω το facebook και το YouTube για τους μαθητές, αλλά να τα έχω ανοιχτά για τους καθηγητές. Ή, να κλείσω το YouTube για τους μαθητές της Α' και της Β' αλλά να το έχω ανοιχτό για τους χρήστες του μαθήματος των πολυμέσων.

Υπάρχει αλλά είναι πολύπλοκο... Το είχα κάνει πριν χρόνια στον Ελληνικό Στρατό..... αλλά δεν θυμάμαι λεπτομέρειες.
Πρέπει πρώτα να ενεργοποιήσεις LDAP service (ή authentication στο Active Directory) -- όχι εύκολα πράγματα δηλαδή....
και μετά να παίξεις με το squid.conf για διαφορετικά προνόμια ανά χρήστη....
Κοίτα στο http://www.cyberciti.biz/tips/linux-unix-squid-proxy-server-authentication.html

Μήπως είναι πιο εύκολο να αλλάζεις τα squid.conf ανάλογα με την τάξη που κάνεις μάθημα;
Δηλ. στα πολυμέσα θα αφαιρείς από το squid-block.acl τα youtube...

Παράθεση από: Δημήτρης Δαλαγιώργος στις 12 Νοε 2009, 11:28:59 ΠΜ
2) Ποιο πρόγραμμα χρησιμοποιείτε για να αναλύετε τα log files του Squid; Θέλω να μπορώ να βλέπω ποια site επισκέπτονται οι μαθητές και να προχωράω στην απαραίτητη λογοκρισία μετά.

Υπάρχει το Calamaris http://cord.de/tools/squid/calamaris/ (τι μου θυμίζεις στον ΕΣ...)
Υπάρχει package "calamaris" έτοιμο για ubuntu...

Yannis Siahos

.. δευτερολογώντας να προσθέσω ότι στο http://www.squid-cache.org/Scripts/ υπάρχουν διάφορα εργαλεία για επεξεργασία των logs.

Θα ήθελα να σταθώ και στο sarg που κάνει ακριβώς αυτό που θέλεις με ελάχιστο configuration σε σχέση με το Calamaris (και υπάρχει και package για ubuntu).
Δεν το έψαξα πολύ...
Περισσότερα στο http://sarg.sourceforge.net/sarg.php



pentsas

Σηγνώμη είναι άσχετο αλλά δε μπορώ να κρατηθώ άλλο.
Θα κάνω μια αριστοφανική ερώτηση:

Το COLAMARIS έχει καμιά σχέση με τον κ. ΚΑΛΑΜΑΡΙ στον Μπομπ το σφουγγαράκι;

Σημ: Μη βαράτε ρε παιδιά, μια πλάκα έκανα >:D

aren13

#13
Παράθεση από: alkisg στις 05 Νοε 2009, 09:56:51 ΠΜ
Για μαζική ρύθμιση των clients ώστε να χρησιμοποιούν το squid για caching, ανιχνεύοντας αυτόματα αν αυτό είναι διαθέσιμο, αρκεί να εκτελεστούν οι παρακάτω εντολές σε κάθε client:

sudo gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory --type string --set '/system/proxy/mode' 'auto'
sudo gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory --type string --set '/system/proxy/autoconfig_url' 'http://10.160.17.10/wpad.dat'


Αλλάξτε το 10.160.17.10 με τη διεύθυνση του ubuntu server.
Εφόσον μπαίνει συγκεκριμένη IP, δεν χρειάζεται η προσθήκη του wpad στο αρχείο /etc/hosts των clients.
Η παραπάνω ρύθμιση είναι υποχρεωτική, δηλαδή δεν μπορούν να την παρακάμψουν οι χρήστες. Όμως, χρειάζεται επανεκκίνηση των clients για να πιάσει.


Τελικά σε κάθε client ή μόνο στον server όπως λένε οι σημειώσεις σελ.24 (σημειώσεις) του νέου οδηγού για squid3
Πάντως η περίπτωση μόνο στον server κλειδώνει τον firefox ΚΑΙ του server -->σε αυτοματο εντοπισμο ρυθμισεων διαμεσολαβητη


Oι clients που έχω δημιουργήσει είναι desktop
μήπως θα έπρεπε να είχα δημιουργήσει unprivileged;

A! και κάτι άσχετο στην αρχικη οθόνη σύνδεσης των ubuntu μου εμφανίζονται όλοι οι λογασιασμοί των χρηστων και του teacher
μήπως υπάρχει τρόπος να εμφανίζεται μόνο ο teacher;

alkisg

Η σχετική σημείωση του οδηγού λέει:
Παράθεση
Σε περίπτωση ΣΕΠΕΗΥ με thin clients οι παραπάνω ρυθμίσεις πρέπει να γίνουν μόνο στον Ubuntu LTSP εξυπηρετητή.

Εσύ δεν έχεις thin clients όμως (αν δεν κάνω λάθος), άρα πρέπει να εκτελέσεις την εντολή σε όλους τους σταθμούς εργασίας.

Απ' όσο ξέρω, δεν γίνεται με εύκολο τρόπο να εμφανίζονται επιλεκτικά κάποιοι μόνο χρήστες στην αρχική οθόνη. Βέβαια αυτό δεν είναι κακό, αν υπάρχουν μόνο λογαριασμοί για τους συγκεκριμένους μαθητές που κάθονται σ' αυτόν τον Η/Υ... (και ευκολία είναι, και το να βλέπουν το όνομά τους τους δίνει ένα αίσθημα big-bro... εε... ευθύνης  ;D)