Ρύθμιση τοπικών αποθετηρίων με το 'apt-mirror' σε συστήματα Ubuntu και Debian


Όταν σήμερα η επισκεψιμότητα και οι περιστασιακές ταχύτητες Διαδικτύου μετρώνται σε εφήβους Giga με ένα ανοιγοκλείσιμο μάτι ακόμη και για τους απλούς πελάτες Διαδικτύου, ποιος είναι ο σκοπός της ρύθμισης μιας τοπικής προσωρινής μνήμης αποθετηρίου στα τοπικά LAN;

Ένας από τους λόγους είναι η μείωση του εύρους ζώνης του Διαδικτύου και η υψηλή ταχύτητα κατά την αφαίρεση πακέτων από την τοπική κρυφή μνήμη. Αλλά, επίσης, ένας άλλος σημαντικός λόγος θα πρέπει να είναι το απόρρητο. Ας φανταστούμε ότι οι πελάτες από τον οργανισμό σας είναι περιορισμένοι στο Διαδίκτυο, αλλά τα κουτιά Linux τους χρειάζονται τακτικές ενημερώσεις συστήματος σχετικά με το λογισμικό και την ασφάλεια ή χρειάζονται απλώς νέα πακέτα λογισμικού. Για να προχωρήσουμε περαιτέρω στην εικόνα, ένας διακομιστής που εκτελείται σε ιδιωτικό δίκτυο, περιέχει και εξυπηρετεί μυστικές ευαίσθητες πληροφορίες μόνο για ένα περιορισμένο τμήμα δικτύου και δεν πρέπει ποτέ να εκτίθεται σε δημόσιο Διαδίκτυο.

Αυτοί είναι μόνο μερικοί λόγοι για τους οποίους θα πρέπει να δημιουργήσετε ένα τοπικό αποθετήριο καθρέφτη στο LAN σας, να εκχωρήσετε έναν διακομιστή αιχμής για αυτήν την εργασία και να διαμορφώσετε τους εσωτερικούς πελάτες ώστε να εξάγουν λογισμικό από τον καθρέφτη της κρυφής μνήμης.

Το Ubuntu παρέχει πακέτο apt-mirror για συγχρονισμό της τοπικής κρυφής μνήμης με επίσημα αποθετήρια του Ubuntu, καθρέφτη που μπορεί να ρυθμιστεί μέσω ενός διακομιστή HTTP ή FTP για κοινή χρήση του πακέτα λογισμικού με πελάτες τοπικού συστήματος.

Για μια πλήρη mirror cache ο διακομιστής σας χρειάζεται τουλάχιστον 120G ελεύθερο χώρο που έχει δεσμευτεί για τοπικά αποθετήρια.

Απαιτήσεις

  1. Ελάχιστος 120 G ελεύθερος χώρος
  2. Ο διακομιστής Proftpd εγκαταστάθηκε και ρυθμίστηκε σε ανώνυμη λειτουργία.

Βήμα 1: Διαμόρφωση διακομιστή

1. Το πρώτο πράγμα που μπορεί να θέλετε να κάνετε είναι να προσδιορίσετε τους πλησιέστερους και ταχύτερους καθρέφτες Ubuntu κοντά στην τοποθεσία σας, μεταβαίνοντας στη σελίδα Ubuntu Archive Mirror και επιλέξτε τη χώρα σας.

Εάν η χώρα σας παρέχει περισσότερους καθρέφτες, θα πρέπει να προσδιορίσετε τη διεύθυνση καθρέφτη και να κάνετε κάποιες δοκιμές με βάση τα αποτελέσματα ping ή traceroute.

2. Το επόμενο βήμα είναι να εγκαταστήσετε το απαιτούμενο λογισμικό για τη ρύθμιση του τοπικού αποθετηρίου κατοπτρισμού. Εγκαταστήστε τα πακέτα apt-mirror και proftpd και διαμορφώστε το proftpd ως αυτόνομο δαίμονα συστήματος.

sudo apt-get install apt-mirror proftpd-basic

3. Τώρα ήρθε η ώρα να διαμορφώσετε τον διακομιστή apt-mirror. Ανοίξτε και επεξεργαστείτε το αρχείο /etc/apt/mirror.list προσθέτοντας τις πλησιέστερες τοποθεσίες σας (Βήμα 1) – προαιρετικό, εάν οι προεπιλεγμένοι καθρέφτες είναι αρκετά γρήγοροι ή δεν βρίσκεστε βιαστείτε – και επιλέξτε τη διαδρομή του συστήματός σας όπου θα πρέπει να ληφθούν τα πακέτα. Από προεπιλογή το apt-mirror χρησιμοποιεί την τοποθεσία /var/spool/apt-mirror για την τοπική προσωρινή μνήμη, αλλά σε αυτόν τον οδηγό θα χρησιμοποιήσουμε αλλαγή διαδρομής συστήματος και σημείο set base_path στην τοποθεσία /opt/apt-mirror.

sudo nano /etc/apt/mirror.list

Επίσης, μπορείτε να αφαιρέσετε το σχόλιο ή να προσθέσετε άλλη λίστα πηγών πριν από την καθαρή οδηγία – συμπεριλαμβανομένων των πηγών Debian – ανάλογα με τις εκδόσεις Ubuntu που χρησιμοποιούν οι πελάτες σας. Μπορείτε να προσθέσετε πηγές από το 12.04, αν θέλετε, αλλά να γνωρίζετε ότι η προσθήκη περισσότερων πηγών απαιτεί περισσότερο ελεύθερο χώρο.

Για λίστες πηγών Debian επισκεφτείτε το Debian Wiki ή το Debian Sources List Generator.

4. Το μόνο που χρειάζεται να κάνετε τώρα είναι απλώς να δημιουργήσετε τον κατάλογο διαδρομής και να εκτελέσετε την εντολή apt-mirror για να συγχρονίσετε τα επίσημα αποθετήρια Ubuntu με τον τοπικό μας καθρέφτη .

sudo mkdir -p /opt/apt-mirror
sudo apt-mirror

Όπως μπορείτε να δείτε, το apt-mirror προχωρά με την ευρετηρίαση και τη λήψη αρχείων που παρουσιάζουν τον συνολικό αριθμό των ληφθέντων πακέτων και το μέγεθός τους. Όπως μπορούμε να φανταστούμε τα 110-120 GB είναι αρκετά μεγάλα για να χρειαστεί λίγος χρόνος για λήψη.

Μπορείτε να εκτελέσετε την εντολή ls για να προβάλετε περιεχόμενο καταλόγου.

Μόλις ολοκληρωθεί η αρχική λήψη, οι μελλοντικές λήψεις θα είναι μικρές.

5. Ενώ το apt-mirror κατεβάζει πακέτα, μπορείτε να διαμορφώσετε τον διακομιστή σας Proftpd. Το πρώτο πράγμα που πρέπει να κάνετε είναι να δημιουργήσετε ανώνυμο αρχείο ρυθμίσεων για το proftpd εκτελώντας την ακόλουθη εντολή.

sudo nano /etc/proftpd/conf.d/anonymous.conf

Στη συνέχεια, προσθέστε το ακόλουθο περιεχόμενο στο αρχείο anonymous.conf και επανεκκινήστε την υπηρεσία proftd.

<Anonymous ~ftp>
   User                    ftp
   Group                nogroup
   UserAlias         anonymous ftp
   RequireValidShell        off
  MaxClients                   10
   <Directory *>
     <Limit WRITE>
       DenyAll
     </Limit>
   </Directory>
 </Anonymous>

6. Το επόμενο βήμα είναι να συνδέσετε τη διαδρομή apt-mirror με τη διαδρομή proftpd εκτελώντας μια προσάρτηση bind εκδίδοντας την εντολή.

sudo mount --bind /opt/apt-mirror/mirror/archive.ubuntu.com/  /srv/ftp/

Για να το επαληθεύσετε, εκτελέστε την εντολή mount χωρίς παράμετρο ή επιλογή.

mount

7. Το τελευταίο βήμα είναι να βεβαιωθείτε ότι ο διακομιστής Proftpd ξεκινά αυτόματα μετά την επανεκκίνηση του συστήματος και τον κατάλογο mirror-cache προσαρτάται επίσης αυτόματα στη διαδρομή διακομιστή ftp. Για να ενεργοποιήσετε αυτόματα το proftpd εκτελέστε την ακόλουθη εντολή.

sudo update-rc.d proftpd enable

Για αυτόματη προσάρτηση της κρυφής μνήμης apt-mirror στο proftpd, ανοίξτε και επεξεργαστείτε το αρχείο /etc/rc.local.

sudo nano /etc/rc.local

Προσθέστε την ακόλουθη γραμμή πριν από την οδηγία έξοδος 0. Χρησιμοποιήστε επίσης καθυστέρηση 5 δευτερολέπτων πριν επιχειρήσετε να προσαρτήσετε.

sleep 5
sudo mount --bind  /opt/apt-mirror/mirror/archive.ubuntu.com/ /srv/ftp/

Εάν τραβάτε πακέτα από αποθετήρια Debian, εκτελέστε τις ακόλουθες εντολές και βεβαιωθείτε ότι είναι ενεργοποιημένες οι κατάλληλες ρυθμίσεις για το παραπάνω αρχείο rc.local.

sudo mkdir /srv/ftp/debian
sudo mount --bind /opt/apt-mirror/mirror/ftp.us.debian.org/debian/ /srv/ftp/debian/

8. Για έναν καθημερινό συγχρονισμό apt-mirror, μπορείτε επίσης να δημιουργήσετε μια εργασία προγραμματισμού συστήματος που θα εκτελείται στις 2 π.μ. κάθε μέρα. Εκτελέστε την εντολή crontab, επιλέξτε τον επεξεργαστή που προτιμάτε και, στη συνέχεια, προσθέστε την ακόλουθη σύνταξη γραμμής.

sudo crontab –e

Στην τελευταία γραμμή προσθέστε την παρακάτω γραμμή.

0  2  *  *  *  /usr/bin/apt-mirror >> /opt/apt-mirror/mirror/archive.ubuntu.com/ubuntu/apt-mirror.log

Τώρα κάθε μέρα στις 2 π.μ. η προσωρινή μνήμη του αποθετηρίου του συστήματός σας θα συγχρονίζεται με τους επίσημους καθρέφτες του Ubuntu και θα δημιουργεί ένα αρχείο καταγραφής.

Βήμα 2: Διαμόρφωση πελατών

9. Για να διαμορφώσετε τοπικούς πελάτες Ubuntu, επεξεργαστείτε το /etc/apt/source.list σε υπολογιστές-πελάτες για να υποδείξετε τη διεύθυνση IP ή το όνομα κεντρικού υπολογιστή του Διακομιστής apt-mirror – αντικαταστήστε το πρωτόκολλο http με ftp και, στη συνέχεια, ενημερώστε το σύστημα.

deb ftp://192.168.1.13/ubuntu trusty universe
deb ftp://192.168.1.13/ubuntu trusty main restricted
deb ftp://192.168.1.13/ubuntu trusty-updates main restricted
## Ad so on….

10. Για να προβάλετε αποθετήρια, μπορείτε πραγματικά να ανοίξετε ένα πρόγραμμα περιήγησης και να υποδείξετε τη διεύθυνση IP του ονόματος τομέα του διακομιστή σας χρησιμοποιώντας το πρωτόκολλο FTP.

Το ίδιο σύστημα ισχύει επίσης για πελάτες και διακομιστές Debian, η μόνη αλλαγή που απαιτείται είναι το debian mirror και η λίστα πηγών.

Επίσης, εάν εγκαταστήσετε ένα νέο σύστημα Ubuntu ή Debian, παρέχετε χειροκίνητα τον τοπικό σας καθρέφτη με πρωτόκολλο ftp όταν ο εγκαταστάτης ρωτά ποιο αποθετήριο θα χρησιμοποιήσει.

Το καλό με το να έχετε τα δικά σας τοπικά αποθετήρια καθρέφτη είναι ότι είστε πάντα ενημερωμένοι και οι τοπικοί πελάτες σας δεν χρειάζεται να συνδέονται στο Διαδίκτυο για να εγκαταστήσουν ενημερώσεις ή λογισμικό.