Διαχείριση σχολικού εργαστηρίου/Δίκτυο
Χρήσιμη λειτουργικότητα που θα μπορούσε να παρέχει ένα τοπικό δίκτυο
[επεξεργασία]Στήσιμο διακομιστή διαμεσολάβησης squid
[επεξεργασία]Γενικά
[επεξεργασία]Ο Squid είναι ένας http proxy server. Λειτουργεί δηλαδή σαν διαχειριστής μιας ενδιάμεσης αποθήκης των ιστοσελίδων που αιτούμαστε.Μπορεί όμως να λειτουργήσει και σαν ένα φίλτρο . Ένας proxy μπορεί να χρησιμεύσει και για βελτίωση της απόδοσης του διαδικτύου αλλά και για απογόρευση πρόσβασης σε ιστοτόπους μη εκπαιδευτικού περιεχομένου
Και οι δύο λειτουργίες είναι χρήσιμες σε ένα σχολικό περιβάλλον.
Εγκατάσταση & ρύθμιση
[επεξεργασία]Η εγκατάσταση γίνεται εύκολα είτε από το apt είτε από μια γραφική διεπαφή του ,όπως synaptic ή το ubuntu software center. Το πρώτο μέλημά μας είναι να το ρυθμίσουμε ώστε να ξεκινάει αυτόματα με τη εκκίνηση του εξυπηρετητή του εργαστηρίου μας.
Αρχικά όμως ας εκκινήσουμε τον squid χωρίς να πειράξουμε το αρχείο και τις προκαθορισμένες του ρυθμίσεις: $ sudo /etc/init.d/squid start
Σε ubuntu/xubuntu μπορούμε να χρησιμοποιήσουμε και την: $ sudo service squid start
Ελέγχουμε με την εντολή htop να δούμε αν εκκινήθηκε ο squid.
Για να ελέγξουμε τη λειτουργία του ρυθμίζουμε τον firefox σε ένα άλλο ΗΥ του τοπικού δικτύου να έχει proxy τον δικό μας και φορτώνουμε μια ιστοσελίδα. Αν δεν εμφανιστεί είναι ένδειξη ότι ο squid την μπλόκαρε. Ας ξεκινήσουμε λοιπόν ρυθμίζωντας τον squid από το αρχείο ρυθμίσεων /etc/squid/squid.conf ώστε να μην μπλοκάρει κανένα όνομα περιοχής(domain) :
Μεταφερόμαστε στη ενότητα για το tag acl και αφαιρούμε ,αν υπάρχει, το σχόλιο από την παρακάτω γραμμή (στην περίπτωση μου 192.168.2.0 είναι το τοπικό δίκτυο). acl localnet src 192.168.2.0/16 # RFC1918 possible internal network. Η προσθέτουμε μια γραμμή που να ταιριάζει στο υποδίκτυο μας.
Και στην επόμενη ενότητα ρυθμίσεων για το tag http_access αφαιρούμε το σχόλιο από την ρύθμιση: http_access allow localnet
Τώρα λογικά αν επανεκκινήσουμε τον squid θα εμφανίζονται όλοι οι ιστότοποι από ΗΥ του δικτύου μας. Ας αρχίσουμε λοιπόν να προσθέτουμε κάποιους περιορισμούς. Στις ίδιες ενότητες προσθέτουμε:
acl banned_domains url_regex -i "/etc/squid/banned_domains.acl" http_access deny banned_domains
Παράλληλα δημιουργούμε το αρχείο /etc/squid/banned_domains.acl στο οποίο προσθέτουμε λέξεις από domains που θέλουμε να φιλτραριστούν.
Επίσης αλλάζουμε τη σελίδα λάθους με τις παρακάτω προσθήκες:
error_directory /usr/share/squid3/errors/el // στην αντίστοιχη ενότητα του squid.conf deny_info ERR_SCH-SCRIPTS_BANNED_DOMAINS banned_domains // στην αντίστοιχη ενότητα του squid.conf
Και παράλληλα κάνουμε λήψη μιας πρώτης και ενδεικτικής ιστοσελίδας λάθους από το εγχειρίδιο εδώ.
Αρχείο ρυθμίσεων
[επεξεργασία]Το βασικό αρχείο ρυθμίσεων είναι το /etc/squid/squid.conf το οποίο περιέχει εκατοντάδες ρυθμίσεις αλλά εμείς θα επικεντρωθούμε πρώτα στις ρυθμίσεις ελέγχου της πρόσβασης . acl name type (string|"filename") [string2] [string3] ["filename2"]
Οι βασικές ρυθμίσεις : http_port (η προκαθορισμένη τιμή είναι 3128
Πειράματα σε δίκτυο εικονικών μηχανών
[επεξεργασία]Μπορούμε πειραματικά να στήσουμε ένα μινι δίκτυο με δυο εικονικές μηχανές που συνδέονται σε ένα εικονικό bridge. Πχ δημιούργησα μια εικονική μηχανή σε virtual box και έναν κλώνο της και τα ρύθμισα σε λειτουργία bridge mode.
Περιφερόμενα προφιλ χρηστών (roaming user profiles)
[επεξεργασία]Χρήση λογισμικού ελέγχου της τάξης
[επεξεργασία]Στήσιμο ελαφρών πελατών ( Linux_Terminal_Server_Project )
[επεξεργασία]Web proxy
[επεξεργασία]που θα εξασφαλίζει την τήρηση της πολιτικής επιτρεπτής χρήσης του διαδικτύου.
chat server
[επεξεργασία]εξυπηρετητής άμμεσης επικοινωνίας
[επεξεργασία]jabber
Δικτυακά παιχνίδια
[επεξεργασία]tetris
[επεξεργασία]Σκάκι
[επεξεργασία]Διαμοιρασμός πόρων
[επεξεργασία]Εξυπηρετητής αρχείων
[επεξεργασία]Επίδειξη Βιντεοσύσκεψης
[επεξεργασία]Δημιουργία τοπικού αποθετηρίου
[επεξεργασία]Οι σύγχρονες διανομές απαιτούν συνέχομενη σύνδεση στο διαδίκτυο για ανανέωση , αναβάθμιση , επιδιόρθωση σφαλμάτων των πακέτων τους. Για ένα τοπικό δίκτυο να πρέπει να μεταφορτωθεί τό ίδιο σύνολο πακέτων επί Χ φορές (όσοι και οι ΗΥ) αποτελεί μια σπατάλη χρόνου. Η διαδίκασια αυτή μπορεί να επιταχυνθεί με την χρήση ενός ενός τοπικού αποθετηρίου στον κεντρικό υπολογιστή του τοπικού δικτύο από τον οποίο θα λαμβάνουν οι πελάτες ΗΥ τα πακέτα. Στις διανομές linux που βασίζονται στον apt διαχειριστή πακέτων (debian,ubuntu) μπορούμε να χρησιμοποιήσουμε το πρόγραμμα apt-cacher. Μια εναλλακτική που έχει web-interface για στατιστικά και είναι ποιό γρήγορη είναι και το apt-cacher-ng που δεν το εξετάζουμε εδω.
Εγκατάσταση και ενεργοποίηση apt-cacher
[επεξεργασία]Από την πλευρά του διακομιστή
[επεξεργασία]1) Κάνουμε την εγκατάσταση του πακέτου apt-cacher είτε από γραμμή εντολών με το apt-get είτε από GUI εργαλείο όπως synaptic ή ubuntu software center. Πχ από γραμμή εντολών:
* sudo apt-get install apt-cacher
2. Για να ενεργοποιήσουμε το apt-cacher πρέπει να κάνουμε την παρακάτω αλλαγή :
* Στο αρχείο /etc/default/apt-cacher αλλάζουμε τη ρύθμιση autostart σε 1
Κατόπιν επανεκκινώντας των υπολογιστή θα διαπιστώσουμε ότι εκτελείτε πλεον ο apt-cacher. Ανοίγουμε το διαχειριστή πακέτων ,κάνουμε ανανέωση της βάσης και εγκαθιστούμε τα πακέτα που θέλουμε στους πελάτες. Κατόπιν συνεχίζουμε με τη ρύθμιση των πελατών.
Από την πλευρά του πελάτη
[επεξεργασία]Σε κάθε ΗΥ πελάτη του εργαστηρίου κάνουμε τα εξής: 1) sudo nano /etc/apt/sources.list 2) Αλλάζουμε κάθε γραμμή στο παραπάνω αρχείο ως εξής: Πχ έστω:
http://gr.archive.ubuntu.com/ubuntu/ lucid main restricted
Και έστω ότι η IP διεύθυνση του εξυπηρετητή είναι 10.160.1.10 τότε η γραμμή θα γίνει:
http://10.160.1.10:3142/gr.archive.ubuntu.com/ubuntu/ lucid main restricted
Αποθηκεύουμε , ανοίγουμε τον διαχειριστή πακέτων και εκτελούμε ανανέωση καθώς και εγκατάσταση πακέτων που έχουμε ήδη εγκαταστήσει στον διακομιστή. Θα παρατηρήσουμε ότι η εγκατάσταση προχωράει πολύ ποιό γρήγορα .
ΠΡΟΣΟΧΗ: Οι αλλαγές αυτές πρέπει να γίνουν και στον ΗΥ όπου εκτελείτει ο apt-cacher .
Mεταφορά πακέτων στην cache του apt-cacher
[επεξεργασία]Αν κάναμε το λάθος πχ και είχαμε εγκαταστήσει πακέτα στον διακομιστή και μετά ενεργοποιούσαμε τον apt-cacher θα μπορούσαμε να τα μεταφέρουμε στην τοποθεσία που διαχειρίζεται ο apt-cacher ως εξής:
$ cd /var/cache/apt/archives // Ο κατάλογος όπου βρίσκονται τα πακέτα που καταβάσαμε με τον διαχειριστή μας $ sudo cp * /var/cache/apt-cacher/import/ $ sudo /usr/share/apt-cacher/apt-cacher-import.pl
Οι παραπάνω οδηγιές υπάρχουν και στο $ man apt-cacher :-)