Πώς να εγκαταστήσετε και να ρυθμίσετε τον διακομιστή και τον πελάτη NTP στο Debian


Το Network Time Protocol (NTP) παρουσιάζει μια μοναδική ικανότητα για τις εταιρείες να συγχρονίζουν τα ρολόγια όλων των συστημάτων εντός της εταιρείας. Ο συγχρονισμός ώρας είναι σημαντικός για πολλούς λόγους, από τις χρονικές σημάνσεις εφαρμογής έως την ασφάλεια έως τις σωστές καταχωρίσεις στο ημερολόγιο.

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

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

Το NTP λειτουργεί με βάση το συγχρονισμό με ρολόγια αναφοράς, γνωστά και ως διακομιστές «stratum 0». Όλοι οι άλλοι διακομιστές NTP μετατρέπονται σε διακομιστή χαμηλότερου επιπέδου με βάση το πόσο μακριά βρίσκονται από έναν διακομιστή αναφοράς.

Η αρχή της αλυσίδας NTP είναι ένας διακομιστής στρώματος 1 που είναι πάντα απευθείας συνδεδεμένος με ένα ρολόι αναφοράς στρώματος 0. Από εδώ, οι διακομιστές χαμηλότερου επιπέδου συνδέονται μέσω σύνδεσης δικτύου σε διακομιστή υψηλότερου επιπέδου.

Ανατρέξτε στο παρακάτω διάγραμμα για μια σαφέστερη έννοια.

Ενώ μπορεί να γίνει η ρύθμιση ενός διακομιστή στρώματος 0 ή στρώματος 1, είναι ακριβό να το κάνετε και ως εκ τούτου, αυτός ο οδηγός θα επικεντρωθεί στη ρύθμιση διακομιστή χαμηλότερων στρωμάτων.

Το Tecmint έχει μια βασική διαμόρφωση κεντρικού υπολογιστή NTP στον ακόλουθο σύνδεσμο:

  1. Τρόπος συγχρονισμού της ώρας με τον διακομιστή NTP

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

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

Βήμα 1: Εγκατάσταση διακομιστή NTP

1. Το πρώτο βήμα για τη ρύθμιση μιας εσωτερικής δομής NTP είναι η εγκατάσταση του λογισμικού διακομιστή NTP. Το πακέτο λογισμικού στο Debian που ονομάζεται «NTP» περιέχει προς το παρόν όλα τα βοηθητικά προγράμματα διακομιστή που είναι απαραίτητα για τη ρύθμιση μιας ιεραρχίας NTP. Όπως συμβαίνει με όλα τα σεμινάρια σχετικά με τη διαμόρφωση του συστήματος, θεωρείται δεδομένη η πρόσβαση Root ή sudo.

# apt-get install ntp
# dpkg --get-selections ntp          [Can be used to confirm NTP is installed]
# dpkg -s ntp                        [Can also be used to confirm NTP is installed]

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

2. Μόλις εγκατασταθεί το NTP, είναι καιρός να διαμορφώσετε ποιους διακομιστές υψηλότερου στρώματος θα ζητήσουν χρόνο. Το αρχείο διαμόρφωσης για το NTP αποθηκεύεται στη διεύθυνση ‘/etc/ntp.conf’ και μπορεί να τροποποιηθεί με οποιοδήποτε πρόγραμμα επεξεργασίας κειμένου. Αυτό το αρχείο θα περιέχει τα πλήρως αναγνωρισμένα ονόματα τομέα των διακομιστών υψηλότερου επιπέδου, τους περιορισμούς που έχουν τεθεί για αυτόν τον διακομιστή NTP και οποιεσδήποτε άλλες ειδικές παραμέτρους για κεντρικούς υπολογιστές που υποβάλλουν ερωτήματα σε αυτόν τον διακομιστή NTP.

Για να ξεκινήσει η διαδικασία διαμόρφωσης, πρέπει να ρυθμιστούν οι διακομιστές υψηλότερου επιπέδου. Το Debian από προεπιλογή θα τοποθετήσει το Debian NTP pool στο αρχείο διαμόρφωσης. Αυτά είναι εντάξει για τους περισσότερους σκοπούς, αλλά ένας διαχειριστής μπορεί να επισκεφτεί το NIST για να καθορίσει ορισμένους διακομιστές ή να χρησιμοποιήσει όλους τους διακομιστές του NIST κυκλικά (προτεινόμενη μέθοδος από το NIST).

Για αυτό το σεμινάριο θα διαμορφωθούν συγκεκριμένοι διακομιστές. Το αρχείο διαμόρφωσης χωρίζεται σε ορισμένες κύριες ενότητες και έχει ρυθμιστεί από προεπιλογή για IPv4 και IPv6 (Εάν θέλετε να απενεργοποιήσετε το IPv6, θα αναφερθεί αργότερα). Για να ξεκινήσετε τη διαδικασία διαμόρφωσης, το αρχείο διαμόρφωσης πρέπει να ανοίξει με ένα πρόγραμμα επεξεργασίας κειμένου.

# nano /etc/ntp.conf

Οι πρώτες ενότητες (driftfile, statsdir και statistics) έχουν οριστεί σωστά στις προεπιλογές. Η επόμενη ενότητα περιέχει τους διακομιστές υψηλότερου επιπέδου μέσω των οποίων αυτός ο διακομιστής θα πρέπει να ζητήσει χρόνο. Η σύνταξη για κάθε καταχώρηση διακομιστή είναι πολύ απλή:

server <fully qualified domain name> <options>
server time.nist.gov iburst â     [sample entry]

Συνήθως, είναι καλή ιδέα να έχετε πολλούς διακομιστές υψηλότερης βαθμίδας για να διαλέξετε σε αυτήν τη λίστα. Αυτός ο διακομιστής θα ρωτήσει όλους τους διακομιστές της λίστας για να προσδιορίσει ποιος είναι ο πιο αξιόπιστος. Οι διακομιστές για αυτό το παράδειγμα ελήφθησαν από τη διεύθυνση: http://tf.nist.gov/tf-cgi/servers.cgi.

Βήμα 3: Διαμόρφωση των περιορισμών NTP

3. Το επόμενο βήμα είναι να διαμορφώσετε τους περιορισμούς NTP. Αυτά χρησιμοποιούνται για να επιτρέψουν ή να επιτρέψουν κεντρικούς υπολογιστές να αλληλεπιδρούν με τον διακομιστή NTP. Η προεπιλογή για το NTP είναι ο χρόνος προβολής σε οποιονδήποτε, αλλά δεν επιτρέπεται η διαμόρφωση και στις δύο συνδέσεις IPv4 και IPv6.

Αυτός ο διακομιστής χρησιμοποιείται προς το παρόν μόνο σε δίκτυο IPv4, επομένως το IPv6 απενεργοποιήθηκε με δύο τρόπους. Το πρώτο πράγμα που έγινε για να απενεργοποιήσετε το IPv6 στον διακομιστή NTP ήταν να αλλάξετε τις προεπιλογές που ξεκινά ο δαίμονας. Αυτό επιτεύχθηκε αλλάζοντας τη γραμμή στο «/etc/default/ntp».

# nano /etc/default/ntp
NTPD_OPTS='-4 -g' [Add the ' -4 ' to this line to tell NTPD to only listen to IPv4]

Πίσω στο κύριο αρχείο διαμόρφωσης (/etc/ntp.conf), ο δαίμονας NTP θα διαμορφωθεί αυτόματα για κοινή χρήση χρόνου με όλους τους κεντρικούς υπολογιστές IPv4/6, αλλά δεν θα επιτρέπει τη διαμόρφωση. Αυτό φαίνεται από τις ακόλουθες δύο γραμμές:

Το NTPD λειτουργεί σε επιτρεπόμενη βάση, εκτός εάν απορριφθεί. Εφόσον το IPv6 απενεργοποιήθηκε, η γραμμή restrict -6 μπορεί να αφαιρεθεί ή να σχολιαστεί με ένα #

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

Τώρα ο διακομιστής πρέπει να γνωρίζει ποιος επιτρέπεται να ζητά χρόνο από τον διακομιστή και τι άλλο επιτρέπεται να κάνει με τον διακομιστή NTP. Για αυτόν τον διακομιστή, θα χρησιμοποιηθεί ένα ιδιωτικό δίκτυο 172.27.0.0/16 για τη δημιουργία της στροφής περιορισμού.

Αυτή η γραμμή ενημερώνει τον διακομιστή να επιτρέψει σε οποιονδήποτε κεντρικό υπολογιστή από το δίκτυο 172.27.0.0/16 να έχει πρόσβαση στον διακομιστή για κάποιο χρονικό διάστημα. Οι παράμετροι μετά τη μάσκα βοηθούν στον έλεγχο του τι μπορεί να κάνει οποιοσδήποτε από τους κεντρικούς υπολογιστές σε αυτό το δίκτυο κατά την υποβολή ερωτημάτων στον διακομιστή. Ας αφιερώσουμε λίγο χρόνο για να κατανοήσουμε καθεμία από αυτές τις επιλογές περιορισμού:

  1. Περιορισμένο: Υποδεικνύει ότι εάν ένας πελάτης κάνει κατάχρηση του ελέγχου του ρυθμού του αριθμού των πακέτων, τα πακέτα θα απορριφθούν από τον διακομιστή. Εάν το πακέτο Kiss of Death είναι ενεργοποιημένο, θα σταλεί πίσω στον καταχρηστικό κεντρικό υπολογιστή. Οι τιμές μπορούν να διαμορφωθούν από έναν διαχειριστή, αλλά οι προεπιλογές θεωρούνται εδώ.
  2. KOD: Φιλί του Θανάτου. Εάν ένας κεντρικός υπολογιστής παραβιάσει το όριο των πακέτων προς τον διακομιστή, ο διακομιστής θα απαντήσει με πακέτο s KoD στον κεντρικό υπολογιστή που παραβιάζει.
  3. Notrap: Μηνύματα ελέγχου λειτουργίας 6 απόρριψης. Αυτά τα μηνύματα ελέγχου χρησιμοποιούνται για προγράμματα απομακρυσμένης καταγραφής.
  4. Nomodify: Αποτρέπει τα ερωτήματα ntpq και ntpdc που θα τροποποιούσαν τη διαμόρφωση του διακομιστή, αλλά τα ερωτήματα πληροφοριών εξακολουθούν να επιτρέπονται.
  5. Noquery: Αυτή η επιλογή εμποδίζει τους οικοδεσπότες να υποβάλουν ερωτήματα στον διακομιστή για πληροφορίες. Για παράδειγμα, χωρίς αυτήν την επιλογή, οι κεντρικοί υπολογιστές μπορούν να χρησιμοποιήσουν ntpdc ή ntpq για να προσδιορίσουν από πού παίρνει την ώρα ένας συγκεκριμένος διακομιστής ώρας ή από άλλους ομότιμους διακομιστές χρόνου με τους οποίους μπορεί να επικοινωνεί.