Αποστολέας Θέμα: Squid στο 12.04  (Αναγνώστηκε 11075 φορές)

alkisg

  • Τεχνικός / καθαρίστρια
  • *****
  • Μηνύματα: 4879
    • alkisg@im.sch.gr
    • Ο Διερμηνευτής της ΓΛΩΣΣΑΣ
Απ: Squid στο 12.04
« Απάντηση #15 στις: 24 Σεπ 2012, 10:33:29 μμ »
@apanagio: Για mandatory dconf/gsettings, ένα how-to είναι εδώ:
https://lists.ubuntu.com/archives/edubuntu-users/2012-August/007069.html

ChrsMel

  • Βετεράνος
  • ****
  • Μηνύματα: 76
Απ: Squid στο 12.04
« Απάντηση #16 στις: 09 Οκτ 2012, 10:13:37 πμ »
Απ' ό,τι βλέπω,  όντως δεν εφαρμόζεται η ρύθμιση για κάθε χρήστη.
Δεν έχει σχέση με 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

  • ΟΔΕ
  • *
  • Μηνύματα: 163
Απ: Squid στο 12.04
« Απάντηση #17 στις: 10 Οκτ 2012, 01:26:10 μμ »
Τις δοκίμασα και σε εμένα δουλεύουνε.
Αλλά ο πιο εύκολος τρόπος τελικά είναι να χρησιμοποιήσουμε το /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 όλοι.
« Τελευταία τροποποίηση: 23 Οκτ 2012, 08:31:23 πμ από apanagio »

apapakL

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 365
    • ΕΛ/ΛΑΚ και εκπαίδευση
Απ: Squid στο 12.04: Κλείδωμα ρυθμίσεων proxy για firefox
« Απάντηση #18 στις: 18 Οκτ 2012, 09:03:35 μμ »
Οδηγός εγκατάστασης - ρύθμισης 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);
}


« Τελευταία τροποποίηση: 23 Νοέ 2013, 02:51:53 πμ από apapakL »

gidarakos

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 331
    • http://www.gidarakos.com/
Απ: Squid στο 12.04
« Απάντηση #19 στις: 19 Οκτ 2012, 10:02:34 πμ »
Ευχαριστούμε apapakL για τις αναλυτικές οδηγίες.
Επειδή στήνουμε έναν καινούργιο LTSP 12.04 θα δοκιμάσω άμεσα τις οδηγίες σου και θα ενημερώσω αν όλα πήγαν οκ!

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

apanagio

  • ΟΔΕ
  • *
  • Μηνύματα: 163
Απ: Squid στο 12.04
« Απάντηση #20 στις: 19 Οκτ 2012, 02:12:10 μμ »
Με τις παραπάνω οδηγίες ρυθμίζονται οι firefox των client να χρησιμοποιούν τον proxy.
Αν θελετε να τον χρησιμοποιούν και άλλες εφαρμογές (πχ chromium) χρειάζεται και η ρύθμιση με τα gsettings

gidarakos

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 331
    • http://www.gidarakos.com/
Απ: Squid στο 12.04
« Απάντηση #21 στις: 19 Οκτ 2012, 02:25:29 μμ »
Αν έχουν δοκιμαστεί οι οδηγίες του apapakL και apanagio δε θα μπορούσαν να προστεθούν στο wiki να τις βρίσκουν εύκολα οι συνάδελφοι;

apapakL

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 365
    • ΕΛ/ΛΑΚ και εκπαίδευση
Απ: Squid στο 12.04
« Απάντηση #22 στις: 20 Οκτ 2012, 09:42:07 πμ »
Αλλά ο πιο εύκολος τρόπος τελικά είναι να χρησιμοποιήσουμε το /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 όλοι.

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

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

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

apanagio

  • ΟΔΕ
  • *
  • Μηνύματα: 163
Απ: Squid στο 12.04
« Απάντηση #23 στις: 21 Οκτ 2012, 09:09:50 μμ »
Πρέπει να δώσουμε στο αρχείο κάποιο συγκεκριμένο όνομα ή δεν έχει σημασία;

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

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

gidarakos

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 331
    • http://www.gidarakos.com/
Απ: Squid στο 12.04
« Απάντηση #24 στις: 21 Οκτ 2012, 09:46:22 μμ »
apanagio για το όνομα ενός αρχείου που θα τοποθετηθεί στο /etc/profile.d/ δε μιλάμε;
Το ρωτάω γιατί απάντησες να έχουν κατάληξη .sh
Δηλαδή το όνομα του αρχείου μας είναι αδιάφορο; Αρκεί να βρίσκεται στο /etc/profile.d/ και να έχει κατάληξη .sh;

apanagio

  • ΟΔΕ
  • *
  • Μηνύματα: 163
Απ: Squid στο 12.04
« Απάντηση #25 στις: 22 Οκτ 2012, 08:28:32 πμ »
Δηλαδή το όνομα του αρχείου μας είναι αδιάφορο; Αρκεί να βρίσκεται στο /etc/profile.d/ και να έχει κατάληξη .sh;

Ναι, ακριβώς

gidarakos

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 331
    • http://www.gidarakos.com/
Απ: Squid στο 12.04
« Απάντηση #26 στις: 22 Οκτ 2012, 04:15:54 μμ »
Οι οδηγίες του 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

  • ΟΔΕ
  • *
  • Μηνύματα: 163
Απ: Squid στο 12.04
« Απάντηση #27 στις: 23 Οκτ 2012, 08:42:57 πμ »
Παράθεση
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

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 331
    • http://www.gidarakos.com/
Απ: Squid στο 12.04
« Απάντηση #28 στις: 23 Οκτ 2012, 11:44:18 πμ »
Ο χρήστης 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

  • ΟΔΕ
  • *
  • Μηνύματα: 163
Απ: Squid στο 12.04
« Απάντηση #29 στις: 24 Οκτ 2012, 10:33:08 πμ »
Σύμφωνα με τις δικές μου δοκιμές, το etc/profile (συνεπώς και τα .sh αρχεία στο /etc/profile.d) εκτελείται για όλους τους χρήστες.  Επομένως οι ρυθμίσεις τίθενται για όλους τους χρήστες (σε thin και fat).

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

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