Squid στο 12.04

Ξεκίνησε από ChrsMel, 17 Σεπ 2012, 10:07:52 ΠΜ

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

ChrsMel

Παράθεση από: apanagio στις 24 Σεπ 2012, 05:45:42 ΜΜ
Απ' ό,τι βλέπω,  όντως δεν εφαρμόζεται η ρύθμιση για κάθε χρήστη.
Δεν έχει σχέση με sch-scripts πρέπει να είναι bug του ubuntu.Το ανέφερα:
https://bugs.launchpad.net/ubuntu/+source/gnome-control-center/+bug/1055525
Αν αφορά και άλλον/η κλικάρετε το "also affects me" να γίνουμε πολλοί/ες

Για το δικο μας πρόβλημα:
Για να χρησιμοποιεί ο χρήστης τον proxy πρέπει να τρέξει τις εντολές:
gsettings set org.gnome.system.proxy.socks host 'PROXY_IP'
gsettings set org.gnome.system.proxy.socks port PROXY_PORT
gsettings set org.gnome.system.proxy mode 'manual'

όπου PROXY_IP και PROXY_PORT η ip και η πόρτα του proxy αντίστοιχα

Αυτό που θέλουμε να κάνουμε είναι να τρέχουμε αυτές τις εντολές κάθε φορά που συνδέεται ένας χρήστης. Οπότε πρέπει στο ~/.profile αρχείο κάθε χρήστη να μπουν αυτές οι εντολές. (καλύτερα στο τέλος του)

Μπορείς να το κάνεις για ένα χρήστη και με ένα scriptάκι να αντιγράψεις το .profile αρχείο του, στο home όλων των υπόλοιπων χρηστών.
Αν θέλουμε οι χρήστες που θα δημιουργηθούν στο μέλλον να έχουν το ίδιο .profile αρχείο, το αντιγράφουμε στο φάκελο: /etc/skel (Υπάρχει ήδη εκεί οπότε αρκεί να συμπληρώσουμε τις γραμμές που θέλουμε)




Αυτές τις 3 εντολές στο .profile του κάθε χρήστη τις έχεις δοκιμάσει;
γιατί σε εμένα δε δουλεύουνε :

gsettings set org.gnome.system.proxy.socks host '10.22.31.10'
gsettings set org.gnome.system.proxy.socks port 3128
gsettings set org.gnome.system.proxy mode 'manual'



apanagio

#17
Τις δοκίμασα και σε εμένα δουλεύουνε.
Αλλά ο πιο εύκολος τρόπος τελικά είναι να χρησιμοποιήσουμε το /etc/profile.d/

Φτιάχνουμε ένα αρχείο με τις 3 αυτές εντολές
gsettings set org.gnome.system.proxy.http host 'PROXY_IP'
gsettings set org.gnome.system.proxy.http port PROXY_PORT
gsettings set org.gnome.system.proxy mode 'manual'

και το βάζουμε στο φάκελο /etc/profile.d/
Αν έχουμε και fat clients κάνουμε δημοσίευση του δίσκου.

Οι εντολές αυτές θα εκτελούνται για κάθε χρήστη και έτσι θα χρησιμοποιούν τον Proxy όλοι.

apapakL

#18
Οδηγός εγκατάστασης - ρύθμισης squid3 με κλείδωμα ρυθμίσεων proxy συστήματος - firefox, web και user filtering.

1. Εγκαθιστούμε το squid3

sudo apt-get install squid3


2. Στη συνέχεια φτιάχνουμε 3 αρχεία

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

Έτσι το αρχείο θα μπορούσε να περιέχει τους χρήστες
administrator
teacher
daskalos



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

sudo gedit /etc/squid3/banned_users.acl

Έτσι το αρχείο θα μπορούσε να περιέχει τους χρήστες
user01
user02
a1a01


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

sudo gedit /etc/squid3/banned_domains.acl


Έτσι το αρχείο θα μπορούσε να περιέχει τα domains

facebook
youtube
.hi5.com
myspace.com


Για να παίζουν τα whitelist_users.acl και banned_users.acl πρέπει να είναι εγκατεστημένη η υπηρεσία ident2.
sudo apt-get install ident2


3. Κατεβάζουε τα αρχεία 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

sudo cp '/monopati_pou_to_exoume_apothikeusei/ERR_SCH-SCRIPTS_BANNED_USERS'  /usr/share/squid3/errors/el


και

sudo cp '/monopati_pou_to_exoume_apothikeusei/ERR_SCH-SCRIPTS_BANNED_DOMAINS'  /usr/share/squid3/errors/el


για παράδειγμα αν τα έχετε αποθηκεύσει στο φάκελο Λήψεις του χρήστη administrator τότε οι εντολές θα είναι:

sudo cp '/home/administrator/Λήψεις/ERR_SCH-SCRIPTS_BANNED_USERS'  /usr/share/squid3/errors/el


και

sudo cp '/home/administrator/Λήψεις/ERR_SCH-SCRIPTS_BANNED_DOMAINS'  /usr/share/squid3/errors/el



4. Στη συνέχεια πρέπει να επεξεργαστούμε το squid.conf
sudo gedit /etc/squid3/squid.conf


Αλλάζουμε τη γραμμή
acl localhost src 127.0.0.1/32 ::1
σε
acl localhost src 127.0.0.0/8 ::1


Mε αυτό το τρόπο θα μπορούμε να χρησιμοπούμε το όνομα 'server' και όχι την ip του ltsp server κατά τη δήλωση του proxy και για thin και για fat, ανεξάρτητα από το αν ο LTSP μας έχει όνομα διάφορο, του hardcoded στο LTSP, server (βολικό για όσους έχουν ltsp server στο laptop τους και πάνε σε περισσότερα από δυο σχολεία). Προσοχή: Αν το μηχάνημά μας δε λέγεται server πρέπει να προσθέσουμε στο αρχείο /etc/hosts τη γραμμή

server 127.0.2.1


Αναζητούμε τη γραμμή
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

Προσοχή να μη ξεχάσουμε να βάλουμε τα νούμερα του υποδικτύου μας στη γραμμή παραπάνω που ορίζεται το υποδίκτυο του σχολείου μας. Για πολλαπλά υποδίκτυα προσθέτουμε και άλλες αντίστοιχες γραμμές ( acl schoolnet) με μόνη αλλαγή την ip του υποδικτύου.
Αποθηκεύουμε και επαναφορτώνουμε το squid3

sudo service squid3 force-reload



5. Κλείδωμα ρυθμίσεων proxy συστήματος


Μέθοδος:
sudo apt-get install dconf-tools


sudo mkdir -p /etc/dconf/profile/


sudo nano /etc/dconf/profile/user


Στο κενό αρχείο γράφουμε:

user-db:user
system-db:local


αποθηκεύουμε και κλείνουμε

Στη συνέχεια

sudo mkdir -p /etc/dconf/db/local.d/


sudo nano /etc/dconf/db/local.d/00_proxy_locksettings


και στο κενό αρχείο προσθέτουμε

[system/proxy]
mode='manual'
use-same-proxy=true

[system/proxy/http]
enabled=true
host='server'
port=3128


αποθηκεύουμε και κλείνουμε το αρχείο
και επανοφορτώνουμε τη βάση δεδομένων dconf

sudo dconf update



Στη συνέχεια

sudo mkdir /etc/dconf/db/local.d/locks


sudo nano /etc/dconf/db/local.d/locks/00_proxy_locksettings


και στο κενό αρχείο προσθέτουμε

# prevent changes to system proxy
/system/proxy/mode
/system/proxy/use-same-proxy
/system/proxy/http/enabled
/system/proxy/http/host
/system/proxy/http/port


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

sudo dconf update



Ιδιαίτερη προσοχή στις οδηγίες! Αν δεν εφαρμοστούν σωστά υπάρχει πιθανότητα να μην ξεκινήσει το
γραφικό περιβάλλον... αν συμβεί αυτό ctrl-alt-f1, συνδεθείτε με τα διαπιστευτήρια σας και σβήστε το φάκελο /etc/dconf

Προσοχή μη σβήσετε όλο το φάκελο /etc!!! Αν δεν είστε σίγουροι ζητήστε βοήθεια!

sudo rm -r /etc/dconf


και κάντε reboot

sudo shutdown -r now


6. Τέλος κλειδώνουμε τις ρυθμίσεις proxy του firefox ως εξής (πηγές: resource1, resource 2):

Φτιάχνουμε ένα αρχείο  με το όνομα mozilla.cfg στο /usr/lib/firefox

sudo gedit /usr/lib/firefox/mozilla.cfg


που περιέχει τα εξής:

//
 lockPref("network.proxy.type", 5); 

//  όπου 5 =  Χρήση ρυθμίσεων διαμεσολαβητή συστήματος


Το αποθηκεύουμε.

Δημιουργούμε ένα αρχείο  με το όνομα local-settings.js στο  /usr/lib/firefox/defaults/pref

sudo gedit /usr/lib/firefox/defaults/pref/local-settings.js


που περιέχει τα εξής:

pref("general.config.obscure_value", 0); // only needed if you do not want to obscure the content with ROT-13
 pref("general.config.filename", "mozilla.cfg");


Το αποθηκεύουμε.

Κάνουμε restart τον firefox και δοκιμάζουμε να αλλάξουμε τις ρυθμίσεις proxy...

Για να εφαρμοστεί η ρύθμιση και στους LTSP clients κάνουμε δημοσίευση εικονικού δίσκου από τα sch-scripts

Έτσι αν στο address bar ενός browser το url περιέχει μια από τις λέξεις ή τα domains του banned_domains.acl, το site κόβεται για όλους εκτός από τους χρήστες που υπάρχουν στο αρχείο whitelist_users.acl

Επί τη ευκαιρία παραθέτω συμπληρωματικά και κάποιες άλλες ρυθμίσεις κλειδώματος για τον firefox που μπορούν να φανούν χρήσιμες (μπαίνουν στο αρχείο mozilla.cfg):

////////////////////////////////////////////////////////////
// Ορισμός προτιμήσεων Firefox για όλους τους χρήστες.    //
// http://kb.mozillazine.org/Locking_preferences          //
////////////////////////////////////////////////////////////

try {
///////////////////////
// Καρτέλα «Βασικές» //
///////////////////////

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

// «Λήψεις αρχείων:»
// «[v] Προβολή του παραθύρου λήψης αρχείων στη λήψη ενός αρχείου»
//lockPref("browser.download.manager.showWhenStarting", true);
// «[ ] Κλείσιμο όταν ολοκληρωθούν όλες οι λήψεις»
//lockPref("browser.download.manager.closeWhenDone", false);
// «(*) Αποθήκευση αρχείων σε» - χρειάζονται όλα τα παρακάτω
//lockPref("browser.download.useDownloadDir", true);
//lockPref("browser.download.dir", "~/Επιφάνεια εργασίας");
//lockPref("browser.download.lastDir", "~/Επιφάνεια εργασίας");
//lockPref("browser.download.folderList", 2);
// «( ) Πάντα ερώτηση για την τοποθεσία αποθήκευσης»
//lockPref("browser.download.useDownloadDir", false);

////////////////////////
// Καρτέλα «Καρτέλες» //
////////////////////////

// Οι νέες σελίδες θα ανοίγουν σε:
// ( ) ένα νέο παράθυρο
//lockPref("browser.link.open_external", 2);
//lockPref("browser.link.open_newwindow", 2);
// (*) μια νέα καρτέλα
//lockPref("browser.link.open_external", 3);
//lockPref("browser.link.open_newwindow", 3);

// [v] Προειδοποίηση στο κλείσιμο πολλαπλών καρτελών
//lockPref("browser.tabs.warnOnClose", true);
// [v] Προειδοποίηση στο άνοιγμα πολλαπλών καρτελών που μπορεί να επιβραδύνουν τον Firefox
//lockPref("browser.tabs.warnOnOpen", true);
// [ ] Πάντα εμφάνιση της εργαλειοθήκης καρτελών
//lockPref("browser.tabs.autoHide", true);
// [ ] Άμεση εστίαση στο άνοιγμα ενός δεσμού σε μια νέα καρτέλα
//lockPref("browser.tabs.loadInBackground", true);

///////////////////////////
// Καρτέλα «Περιεχόμενο» //
///////////////////////////

// Φραγή αναδυόμενων παραθύρων
//lockPref("dom.disable_open_during_load", true);
// «Αυτόματη φόρτωση εικόνων»
//   1 = επιλεγμένο
//   2 = αποεπιλεγμένο
//lockPref("permissions.default.image", 1);

// «Ενεργοποίηση JavaScript»
//lockPref("javascript.enabled", true);
// «Για προχωρημένους...»
// Απενεργοποίηση του κουμπιού «Για προχωρημένους...»
//lockPref("pref.advanced.javascript.disable_button.advanced", true);
// [v] Μετακίνηση ή αλλαγή μεγέθους παραθύρων
//lockPref("dom.disable_window_move_resize", false);
// [ ] Ανασήκωμα ή χαμήλωμα παραθύρων
//lockPref("dom.disable_window_flip", true);
// [v] Απενεργοποίηση ή αντικατάσταση του μενού περιεχομένου
//lockPref("dom.event.contextmenu.enabled", true);
// [ ] Απόκρυψη της μπάρας κατάστασης
//lockPref("dom.disable_window_open_feature.status", true);
// [ ] Αλλαγή του κειμένου της μπάρας κατάστασης
//lockPref("dom.disable_window_status_change", true);

// «Ενεργοποίηση Java»
//lockPref("security.enable_java", true);

// «Γραμματοσειρές & Χρώματα»
// «Προεπιλεγμένη γραμματοσειρά:»
//lockPref("font.name.serif.el", "serif");
// «Μέγεθος:»
//lockPref("font.size.variable.el", "16");
// Στο κουμπί «Για προχωρημένους» έχει πάρα πολλά για να αναφερθούν εδώ,
// δείτε τα γράφοντας τη διεύθυνση about:config στο Firefox.
// Παρατίθενται μόνο δύο:
// «Προεπιλεγμένη κωδικοποίηση:»
//lockPref("intl.charset.default", "ISO-8859-7");
// «Γλώσσες»
//lockPref("intl.accept_languages", "el-gr, el, en-us. en");

/////////////////////////
// Καρτέλα «Εφαρμογές» //
/////////////////////////

// Οι ρυθμίσεις αυτής της καρτέλας αποθηκεύονται στον κατάλογο
// ~/.mozilla/firefox/user.profile/mimeTypes.rdf
// Για να εξαναγκάσετε το χρήστη να αποθηκεύει τα αρχεία στο δίσκο
// αντί να τα ανοίγει εντός του Firefox, μπορείτε να κάνετε κάτι σαν
// //lockPref("plugin.disable_full_page_plugin_for_types", "audio/x-ms-wma,application/pdf");

////////////////////////
// Καρτέλα «Απόρρητο» //
////////////////////////

// «[v] Διατήρηση του ιστορικού μου για τις τελευταίες [90] μέρες»
// Θέστε "browser.history_expire_days", 0  για να απενεργοποιήσετε τελείως το ιστορικό
//lockPref("browser.history_expire_days", 180);
//lockPref("browser.history_expire_days_min", 90);
// «Απομνημόνευση φορμών και ιστορικού μπάρας αναζήτησης
//lockPref("browser.formfill.enable", true);
// «Απομνημόνευση λήψεων»
//   0 = Απενεργοποίηση
//   2 = Ενεργοποίηση
//lockPref("browser.download.manager.retention", 2);

// «[v] Αποδοχή cookies από σελίδες»
// «[v] Αποδοχή cookies τρίτων»
//   0 = Ναι και στα δύο
//   1 = Αποδοχή cookies αλλά όχι τρίτων
//   2 = Όχι και στα δύο
//lockPref("network.cookie.cookieBehavior", 0);
// «Εξαιρέσεις...» - δυνατότητα απενεργοποίησης του κουμπιού δεξιά
//lockPref("pref.privacy.disable_button.cookie_exceptions", false);

// «Διατήρηση μέχρι:»
//   0 = να λήξουν
//   1 = ερώτηση κάθε φορά
//   2 = να κλείσει ο Firefox
//lockPref("network.cookie.lifetimePolicy", 0);

// «[ ] Πάντα εκκαθάριση των προσωπικών μου δεδομένων στο κλείσιμο του Firefox
//lockPref("privacy.sanitize.sanitizeOnShutdown", false);
// «Ρυθμίσεις...»
// «[v] Ιστορικό περιήγησης»
//lockPref("privacy.item.history", true);
// «[v] Ιστορικό λήψης αρχείων»
//lockPref("privacy.item.downloads", true);
// «[v] Αποθηκευμένες φόρμες και ιστορικό αναζήτησης»
//lockPref("privacy.item.formdata", true);
// «[v] Λανθάνουσα μνήμη»
//lockPref("privacy.item.cache", true);
// «[ ] Cookies»
//lockPref("privacy.item.cookies", false);
// TODO «[ ] Δεδομένα ιστοσελίδων για εργασία χωρίς σύνδεση»
// «[ ] Αποθηκευμένοι κωδικοί»
//lockPref("privacy.item.passwords", false);
// «[v] Συνεδρίες με σύνδεση»
//lockPref("privacy.item.sessions", true);
// «Ερώτηση πριν την εκκαθάριση προσωπικών δεδομένων»
//lockPref("privacy.sanitize.promptOnSanitize", true);

////////////////////////
// Καρτέλα «Ασφάλεια» //
////////////////////////

// «[v] Προειδοποίηση όταν οι σελίδες προσπαθούν να εγκαταστήσουν πρόσθετα»
//lockPref("xpinstall.whitelist.required", true);

// «[v] Προειδοποίηση αν η σελίδα είναι ύποπτη για κακόβουλες επιθέσεις»
//lockPref("browser.safebrowsing.malware.enabled", true);
// «[v] Προειδοποίηση για το αν η σελίδα ανήκεις στις ύποπτες για πλαστογραφία σελίδες»
//lockPref("browser.safebrowsing.enabled", true);

// «[v] Απομνημόνευση κωδικών για σελίδες»
//lockPref("signon.rememberSignons", true);
// «[ ] Χρήση ενός κύριου κωδικού»
// Δεν είναι δυνατή η επιβολή αυτής της ρύθμισης επειδή ο χρήστης
// πρέπει να εισάγει έναν κωδικό για την ενεργοποίησή της

// Απενεργοποίηση του κουμπιού «Αποθηκευμένοι κωδικοί...»
//lockPref("pref.privacy.disable_button.view_passwords", true);

// «Επιλέξτε για ποιες προειδοποιήσεις θέλετε να εμφανίζονται» -> «Ρυθμίσεις...»
// «[ ] Στην προβολή μιας κρυπτογραφημένης σελίδας.»
//lockPref("security.warn_entering_secure", false);
// «[v] Στην προβολή μιας σελίδας με χαμηλό βαθμό κρυπτογράφησης.»
//lockPref("security.warn_entering_weak", false);
// «[ ] Στη μετάβαση από μια κρυπτογραφημένη σε μια μη κρυπτογραφημένη σελίδα.»
//lockPref("security.warn_leaving_secure", false);
// «[ ] Στην υποβολή μη κρυπτογραφημένων πληροφοριών.»
//lockPref("security.warn_submit_insecure", false);
// «[v] Στην υποβολή κρυπτογραφημένης σελίδας που περιέχει και μερικές μη κρυπτογραφημένες πληροφορίες.»
//lockPref("security.warn_viewing_mixed", false);

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

// «[ ] Πάντα χρήση των πλήκτρων κίνησης δρομέα για την περιήγηση μέσα στις ιστοσελίδες»
//lockPref("accessibility.browsewithcaret", false);
// «[ ] Αναζήτηση για κείμενο μόλις ξεκινήσει η πληκτρολόγηση»
//lockPref("accessibility.typeaheadfind", false);
// «[ ] Προειδοποίηση όταν οι ιστοσελίδες προσπαθούν να ανακατευθύνουν ή να φορτώσουν ξανά τη σελίδα»
//lockPref("accessibility.blockautorefresh", false);

// «[ ] Χρήση αυτόματης κύλισης»
//lockPref("general.autoScroll", false);
// «[ ] Χρήση ομαλής κύλισης»
//lockPref("general.smoothScroll", true);
// «[v] Ορθογραφικός έλεγχος κατά την πληκτρολόγηση»
// 0 = Απενεργοποίηση
// 1 = Ενεργοποίηση
//lockPref("layout.spellcheckDefault", 1);
// «[ ] Πάντα έλεγχος στην εκκίνηση για το αν ο Firefox είναι ο προεπιλεγμένος περιηγητής»
//lockPref("browser.shell.checkDefaultBrowser", false);

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

// «Ρυθμίστε τον τρόπο με τον οποίο ο Firefox θα συνδέεται στο διαδίκτυο» -> «Ρυθμίσεις...»
// «Ρύθμιση διαμεσολαβητών για την πρόσβαση στο διαδίκτυο»
//  0 = «( ) Χωρίς διαμεσολαβητή»
//  4 = «( ) Αυτόματος εντοπισμός ρυθμίσεων διαμεσολαβητή για αυτό το δίκτυο»
//  5 = «(*) Χρήση ρυθμίσεων διαμεσολαβητή συστήματος»
//  1 = «( ) Χειροκίνητη ρύθμιση διαμεσολαβητή»
//  2 = «( ) URL αυτόματης ρύθμισης διαμεσολαβητή:»
lockPref("network.proxy.type", 5);

// «Διαμεσολαβητής HTTP:»
//lockPref("network.proxy.http", "");
// «Θύρα:»
//lockPref("network.proxy.http_port", 0);
// «Διαμεσολαβητής SSL:»
//lockPref("network.proxy.ssl", "");
// «Θύρα:»
//lockPref("network.proxy.ssl_port", 0);
// «Διαμεσολαβητής FTP:»
//lockPref("network.proxy.ftp", "");
// «Θύρα:»
//lockPref("network.proxy.ftp_port", 0);
// «Διαμεσολαβητής Gopher:»
//lockPref("network.proxy.gopher", "");
// «Θύρα:»
//lockPref("network.proxy.gopher_port", 0);
// «Διαμεσολαβητής SOCKS:»
//lockPref("network.proxy.socks", "");
// «Θύρα:»
//lockPref("network.proxy.socks_port", 0);
// «( ) Socks v4  (*) Socks v5»
// 4 = v4
// 5 = v5
//lockPref("network.proxy.socks_version", 5);
// «Χωρίς διαμεσολαβητή για:»
//lockPref("network.proxy.no_proxies_on", "localhost, 127.0.0.1");
// «URL αυτόματης ρύθμισης διαμεσολαβητή:»
//lockPref("network.proxy.autoconfig_url", "");

// «Χρήση μέχρι [50] MB χώρου για τη λανθάνουσα μνήμη» - σε Kb
//lockPref("browser.cache.disk.capacity", 50000);
// «[v] Ειδοποίηση όταν μια ιστοσελίδα αποθηκεύει δεδομένα για εργασία χωρίς σύνδεση:»
//lockPref("browser.offline-apps.notify", true);

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

// «Αυτόματος έλεγχος για ενημερώσεις για:»
// «[v] Τον Firefox»
//lockPref("app.update.enabled", true);
// «[v] Εγκατεστημένα πρόσθετα»
//lockPref("extensions.update.enabled", true);
// «[v] Μηχανές αναζήτησης»
//lockPref("browser.search.update", true);

// «Όταν βρίσκονται ενημερώσεις για το Firefox»
// «( ) Ερώτηση για το τι θέλω να κάνω»
//lockPref("app.update.auto", false);
// «(*) Να γίνεται αυτόματη λήψη και εγκατάσταση της ενημέρωσης»
// «[v] Προειδοποίηση αν αυτό απενεργοποιήσει κάποιο από τα πρόσθετα»
// 0 - Χωρίς προειδοποίηση
// 1 - Με προειδοποίηση
//lockPref("app.update.auto", true);
//lockPref("app.update.mode", 1);

////////////////////////////////////////////////////
// Καρτέλα «Για προχωρημένους» -> «Κρυπτογράφηση» //
////////////////////////////////////////////////////

// «[v] Χρήση SSL 3.0»
//lockPref("security.enable_ssl3", true);
// «[v] Χρήση TLS 1.0»
//lockPref("security.enable_tls", true);
// «Όταν ένας εξυπηρετητής απαιτεί ένα πιστοποιητικό:»
//   "Select Automatically" = «( ) Αυτόματη επιλογή ενός»
//   "Ask Every Time"       = «(*) Ερώτηση κάθε φορά»
//lockPref("security.default_personal_cert", "Ask Every Time");


// Να μη βγάζει την μπάρα "Know your rights"
lockPref("xxx.legal.rights.seen", "0.0");

// Να μη βγάζει το παράθυρο με τις νέες επεκτάσεις που προστέθηκαν
lockPref("extensions.update.notifyUser", false);

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




gidarakos

Ευχαριστούμε apapakL για τις αναλυτικές οδηγίες.
Επειδή στήνουμε έναν καινούργιο LTSP 12.04 θα δοκιμάσω άμεσα τις οδηγίες σου και θα ενημερώσω αν όλα πήγαν οκ!

Τις οδηγίες με τα gsettings που αναφέρει ο apanagio τις ακολουθούμε; Απλά δεσμεύουμε όλες τις εφαρμογές του gnome να "περνάνε" μέσα από το squid;
Είναι κάτι που θέλουμε τελικά;

apanagio

Με τις παραπάνω οδηγίες ρυθμίζονται οι firefox των client να χρησιμοποιούν τον proxy.
Αν θελετε να τον χρησιμοποιούν και άλλες εφαρμογές (πχ chromium) χρειάζεται και η ρύθμιση με τα gsettings

gidarakos

Αν έχουν δοκιμαστεί οι οδηγίες του apapakL και apanagio δε θα μπορούσαν να προστεθούν στο wiki να τις βρίσκουν εύκολα οι συνάδελφοι;

apapakL

Παράθεση από: apanagio στις 10 Οκτ 2012, 01:26:10 ΜΜ
Αλλά ο πιο εύκολος τρόπος τελικά είναι να χρησιμοποιήσουμε το /etc/profile.d/
Φτιάχνουμε ένα αρχείο με τις 3 αυτές εντολές
gsettings set org.gnome.system.proxy.socks host 'PROXY_IP'
gsettings set org.gnome.system.proxy.socks port PROXY_PORT
gsettings set org.gnome.system.proxy mode 'manual'

και το βάζουμε στο φάκελο /etc/profile.d/
Αν έχουμε και fat clients κάνουμε δημοσίευση του δίσκου.

Οι εντολές αυτές θα εκτελούνται για κάθε χρήστη και έτσι θα χρησιμοποιούν τον Proxy όλοι.

Πρέπει να δώσουμε στο αρχείο κάποιο συγκεκριμένο όνομα ή δεν έχει σημασία;

Παράθεση από: gidarakos στις 19 Οκτ 2012, 02:25:29 ΜΜ
Αν έχουν δοκιμαστεί οι οδηγίες του apapakL και apanagio δε θα μπορούσαν να προστεθούν στο wiki να τις βρίσκουν εύκολα οι συνάδελφοι;

Όντως μόλις σιγουρευτούμε οτι δουλεύουν καλό θα ήταν να μπει και στο wiki...

apanagio

Παράθεση από: apapakL στις 20 Οκτ 2012, 09:42:07 ΠΜ
Πρέπει να δώσουμε στο αρχείο κάποιο συγκεκριμένο όνομα ή δεν έχει σημασία;

Όντως μόλις σιγουρευτούμε οτι δουλεύουν καλό θα ήταν να μπει και στο wiki...

Α ναι παράληψη:
Πρέπει να έχουν κατάληξη .sh

gidarakos

apanagio για το όνομα ενός αρχείου που θα τοποθετηθεί στο /etc/profile.d/ δε μιλάμε;
Το ρωτάω γιατί απάντησες να έχουν κατάληξη .sh
Δηλαδή το όνομα του αρχείου μας είναι αδιάφορο; Αρκεί να βρίσκεται στο /etc/profile.d/ και να έχει κατάληξη .sh;

apanagio

Παράθεση από: gidarakos στις 21 Οκτ 2012, 09:46:22 ΜΜ
Δηλαδή το όνομα του αρχείου μας είναι αδιάφορο; Αρκεί να βρίσκεται στο /etc/profile.d/ και να έχει κατάληξη .sh;

Ναι, ακριβώς

gidarakos

Οι οδηγίες του apapakL μου δούλεψαν!

Τις οδηγίες του apanagio όταν τις εφάρμοσα ο chromium δε μου άνοιγε καμιά σελίδα! Καθυστερούσε πολύ κ στο τέλος το μήνυμα "Η ιστοσελίδα δεν είναι διαθέσιμη". Ιδια συμπεριφορά και για τα banned_domains.

apanagio μήπως κατά λάθος χρησιμοποίησες το .socks αντί για .http;
Αντί για .socks χρησιμοποίησα .http και δούλεψε ο proxy στον chromium.

Στη συνέχεια, δημιούργησα το ακόλουθο αρχείο
sudo gedit /etc/profile.d/gsetproxy.sh

με το ακόλουθο περιεχόμενο
gsettings set org.gnome.system.proxy.http host 'server'
gsettings set org.gnome.system.proxy.http port 3128
gsettings set org.gnome.system.proxy mode 'manual'

αλλά το αρχείο gsetproxy.sh δεν "έτρεξε" σε login χρήστη - thin client - γιατί με το dconf-editor είδα ότι δεν έχουν αλλάξει οι ρυθμίσεις.
Είναι και το θέμα να είναι mandatory οι ρυθμίσεις, δηλαδή να μην μπορούν οι χρήστες να τις αλλάζουν.

Το όνομα gsetproxy είναι αυθαίρετη επιλογή με .sh όμως στο τέλος.

apanagio

Παράθεσηapanagio μήπως κατά λάθος χρησιμοποίησες το .socks αντί για .http;
Αντί για .socks χρησιμοποίησα .http και δούλεψε ο proxy στον chromium.
Έχεις δίκιο, οι σωστές οδηγίες είναι αυτές που έστειλες.
gsettings set org.gnome.system.proxy.http host 'server'
gsettings set org.gnome.system.proxy.http port 3128
gsettings set org.gnome.system.proxy mode 'manual'

Άλλαξα και το δικό μου post μην το δει κανείς και μπερδευτεί

Παράθεσηαλλά το αρχείο gsetproxy.sh δεν "έτρεξε" σε login χρήστη - thin client - γιατί με το dconf-editor είδα ότι δεν έχουν αλλάξει οι ρυθμίσεις.
Μπορείς να βεβαιωθείς ότι δεν λειτουργούν οι ρυθμίσεις; (Ο browser τι κάνει, χρησιμοποιεί τον proxy;)
Επίσης βάλε στο αρχείο σου μια άλλη εντολή πχ
mkdir /home/[username]/testtest
και δες αν εκτελέστηκε


gidarakos

Ο χρήστης administrator τρέχει το αρχείο .sh στο φάκελο /etc/profile.d/
Δηλαδή αν αλλάξεις τις ρυθμίσεις με το dconf-editor (βγάλεις τον proxy) στο επόμενο login θα τρέξει το .sh και θα ξαναδηλωθεί ο proxy.
Άρα ο administrator κάνει χρήση proxy (Περνάει απο τον proxy o chromium). Δούλεψε και η δοκιμή με το mkdir.

Όταν κάνεις login (thin client) σαν μαθητής (π.χ. user01a1) δεν τρέχει το αρχείο .sh
Βέβαια αν ανοίξει ο απλός χρήστης το dconf-editor μπορεί να δηλώσει τον proxy (αυτή τη δυνατότητα δε θέλουμε να την έχει ο μαθητής!). Σε αυτή την περίπτωση και ο μαθητής κάνει χρήση του proxy (Περνάει απο τον proxy o chromium). Αυτή η δήλωση δε χάνεται μετά από restart.

apanagio

Σύμφωνα με τις δικές μου δοκιμές, το etc/profile (συνεπώς και τα .sh αρχεία στο /etc/profile.d) εκτελείται για όλους τους χρήστες.  Επομένως οι ρυθμίσεις τίθενται για όλους τους χρήστες (σε thin και fat).

Για το ότι οι μαθητές μπορούν να τις παρακάμψουν έχεις δίκιο.
H σωστή λύση είναι να θέσουμε τη ρύθμιση στο dconf και να χρησιμοποιήσουμε locks για να ειναι υποχρεωτική η ρύθμιση.
Έστειλε ο Άλκης ένα link
Παράθεση από: alkisg στις 24 Σεπ 2012, 10:33:29 ΜΜ
@apanagio: Για mandatory dconf/gsettings, ένα how-to είναι εδώ:
https://lists.ubuntu.com/archives/edubuntu-users/2012-August/007069.html

περισσότερες λεπτομέριες έχει εδώ:
https://live.gnome.org/dconf/SystemAdministrators