Διαμορφώσεις για την υποστήριξη του Kerberos armoring¶
Προειδοποίηση!
Για να χρησιμοποιηθεί το Kerberos armoring, οι λογαριασμοί διαχειριστή πρέπει να τοποθετηθούν στην ομάδα Protected Users.
Αυτό επιβάλλει τη χρήση του πρωτοκόλλου ελέγχου ταυτότητας Kerberos αντί του NTLM. Το στοιχείο Edge Gateway πρέπει πρώτα να διαμορφωθεί ώστε να υποστηρίζει τον έλεγχο ταυτότητας Kerberos.
Το Kerberos armoring παρέχει πρόσθετη κρυπτογράφηση για τις αρχικές ανταλλαγές μεταξύ του προγράμματος-πελάτη και του KDC (Kerberos Domain Controller) με χρήση πληροφοριών που συνδέονται με έναν λογαριασμό υπολογιστή.
Το CyberElements Bastion εκτελείται κατά προτίμηση σε υπολογιστές Debian που δεν είναι συνδεδεμένοι σε τομέα AD, γεγονός που σημαίνει ότι δεν διαθέτουν πληροφορίες λογαριασμού υπολογιστή στην AD.
Η διαμόρφωση για την υποστήριξη του Kerberos armoring αποτελείται από δύο βήματα:
- Δημιουργία λογαριασμού υπολογιστή υπηρεσίας στην AD
- Διαμόρφωση του Kerberos armoring στο στοιχείο Edge Gateway με βάση τον λογαριασμό που δημιουργήθηκε προηγουμένως
Δημιουργία λογαριασμού υπολογιστή υπηρεσίας¶
Πληροφορίες
Σε αυτή τη σελίδα θα χρησιμοποιηθεί ως παράδειγμα ένας λογαριασμός υπηρεσίας με το όνομα svc_cyberelements. Προσαρμόστε τις ακόλουθες εντολές ανάλογα με το όνομα του λογαριασμού υπηρεσίας σας.
Προειδοποίηση!
Εάν θέλετε να χρησιμοποιήσετε σταθμούς εργασίας PAW, τοποθετήστε αυτόν τον λογαριασμό υπηρεσίας στο ίδιο σιλό με τους σταθμούς εργασίας PAW προορισμού.
Από τον ελεγκτή τομέα, ξεκινήστε δημιουργώντας έναν λογαριασμό υπολογιστή με κωδικό πρόσβασης που χρησιμοποιείται για τη δημιουργία δελτίων Kerberos.
Για να δημιουργήσετε αυτόν τον λογαριασμό, μπορείτε να χρησιμοποιήσετε την ακόλουθη εντολή Powershell από έναν ελεγκτή τομέα (προσαρμόστε το όνομα του λογαριασμού υπηρεσίας, στο παράδειγμα svc_cyberelements, και την επιθυμητή OU, στο παράδειγμα OU=Service_accounts,DC=domain,DC=local, για να δημιουργήσετε τον λογαριασμό υπηρεσίας):
1 | |
Χρησιμοποιήστε την ακόλουθη εντολή για να επαληθεύσετε ότι ο λογαριασμός υπολογιστή έχει δημιουργηθεί (αντικαταστήστε το svc_cyberelements με το όνομα του λογαριασμού που δημιουργήθηκε προηγουμένως):
1 | |
Στη συνέχεια, χρησιμοποιήστε το εργαλείο ktpass των Windows για να εξαγάγετε ένα αρχείο keytab που θα περιέχει κλειδιά κρυπτογράφησης τα οποία θα δώσουν στην πύλη τη δυνατότητα να ανακτήσει το TGT.
Παράδειγμα
Παράδειγμα δημιουργίας αρχείου svc_cyberelements.keytab με τον λογαριασμό υπολογιστή:
1 | |
$ στο τέλος των ονομάτων λογαριασμών και να γράψετε το όνομα τομέα με κεφαλαία (απαιτείται).
Αποδεχτείτε τυχόν μηνύματα επιβεβαίωσης που μπορεί να εμφανιστούν πληκτρολογώντας y.
Στη συνέχεια, ορίστε εκ νέου την τιμή του χαρακτηριστικού UserPrincipalName με την ακόλουθη εντολή PowerShell:
1 | |
Διαμόρφωση του Kerberos armoring στο στοιχείο Edge Gateway¶
Ανακτήστε το αρχείο keytab που δημιουργήθηκε προηγουμένως και αντιγράψτε το στον διακομιστή Edge Gateway.
Σε περίπτωση όπου έχουν δημιουργηθεί πολλά αρχεία keytab που πρέπει να χρησιμοποιηθούν στο ίδιο στοιχείο Edge Gateway, συνδυάστε τα αρχεία keytab σε ένα μόνο αρχείο.
Προειδοποίηση
Το αρχείο keytab περιέχει κλειδιά κρυπτογράφησης. Εάν ένας επιτιθέμενος αποκτήσει πρόσβαση σε αυτό, μπορεί να υποδυθεί τον σχετικό λογαριασμό υπολογιστή, μειώνοντας έτσι την ασφάλεια της υποδομής.
Επομένως, αυτό το αρχείο δεν πρέπει να αποθηκεύεται πουθενά αλλού εκτός από το στοιχείο Edge Gateway.
Τοποθετήστε το αρχείο στον φάκελο /etc/ipdiva/cleanroom/.
Αλλάξτε τους κατόχους του αρχείου keytab σε ipdivacareuser για τον χρήστη και carerecord για την ομάδα και, στη συνέχεια, τροποποιήστε τις άδειες του αρχείου (προσαρμόστε το αρχείο keytab ανάλογα με το όνομα του δικού σας αρχείου):
1 2 | |
Τροποποιήστε το αρχείο διαμόρφωσης /etc/ipdiva/cleanroom/xrdprecord.ini του στοιχείου Edge Gateway, για να καθορίσετε, μέσω της παραμέτρου keytab=, τη διαδρομή προς το αρχείο keytab που προετοιμάστηκε προηγουμένως.
Παράδειγμα
2 | |
Σε αυτό το στάδιο, η σύνδεση με προνομιακές εφαρμογές RDP σε λειτουργία χωρίς παράγοντα (HTML5 ή όχι) θα πρέπει να λειτουργεί με λογαριασμούς χρηστών που ανήκουν στην ομάδα Protected Users και επομένως απαιτούν ισχυρό έλεγχο ταυτότητας Kerberos. Η διαμόρφωση της εφαρμογής RDP πρέπει να πληροί ορισμένα προαπαιτούμενα.
Δοκιμή της διαμόρφωσης Kerberos¶
Εντοπισμός σφαλμάτων
Οι ακόλουθες εντολές kinit μπορούν να παρέχουν περισσότερα αρχεία καταγραφής μετά την εκτέλεση της ακόλουθης εντολής (ισχύει μέχρι την αποσύνδεση της περιόδου λειτουργίας SSH ή κονσόλας):
1 | |
Ας ξεκινήσουμε ανακτώντας ένα δελτίο Kerberos με μια εντολή παρόμοια με την ακόλουθη:
1 | |
Φροντίστε να αντικαταστήσετε τη θέση του αρχείου keytab, το όνομα του λογαριασμού υπηρεσίας που δημιουργήθηκε και τον σχετικό τομέα του.
Εάν η ανάκτηση του δελτίου Kerberos ήταν επιτυχής, η ακόλουθη εντολή θα πρέπει να υποδεικνύει την ύπαρξη ενός δελτίου για τον λογαριασμό υπηρεσίας:
1 | |
Εάν η ανάκτηση είναι επιτυχής, τότε πρέπει να επιχειρήσετε να ανακτήσετε ένα δελτίο για έναν χρήστη με μια εντολή παρόμοια με την ακόλουθη:
1 | |
Αντικαταστήστε το user@DOMAIN.LOCAL με έναν χρήστη που είναι πιθανό να συνδεθεί μέσω RDP και Kerberos armoring. Σημειώστε ότι θα ζητηθεί ο κωδικός πρόσβασης αυτού του χρήστη.
Εάν η ανάκτηση του δελτίου είναι επιτυχής, η ακόλουθη εντολή θα το εμφανίσει:
1 | |
Εάν εμφανιστεί το σφάλμα KDC policy rejects request while getting initial credentials, σημαίνει ότι το KDC απέρριψε το αίτημα δελτίου. Πιθανές αιτίες:
- Το
kinitδεν μπόρεσε να χρησιμοποιήσει το δελτίο/tmp/test_kerberos(εάν τοkinitδεν μπορεί να το χρησιμοποιήσει, συνεχίζει χωρίς μήνυμα σφάλματος με ένα βασικό αίτημα δελτίου) - Ο λογαριασμός υπηρεσίας δεν υπάρχει στο σιλό του χρήστη που ελέγχεται. Αυτό συμβαίνει όταν η AD είναι απομονωμένη σε σιλό και απαιτεί να τοποθετηθεί ο λογαριασμός υπολογιστή υπηρεσίας στο κατάλληλο σιλό.
Πρόσθετες πληροφορίες μπορείτε να βρείτε στα αρχεία καταγραφής συμβάντων Security του ελεγκτή τομέα (KDC) που χρησιμοποιείται.
Μετά τις δοκιμές, συνιστάται να διαγράψετε τα δελτία που δημιουργήθηκαν:
1 2 | |
Συνδυασμός πολλών αρχείων keytab σε ένα μόνο αρχείο¶
Εάν η αρχιτεκτονική του CyberElements Bastion βασίζεται σε ένα μόνο στοιχείο Edge Gateway που θα παρέχει πρόσβαση σε πολλά τρίτα μέρη, είναι απαραίτητο να συγχωνευθούν όλα τα αρχεία keytab που δημιουργήθηκαν για τους διάφορους λογαριασμούς υπηρεσίας σε ένα μόνο αρχείο keytab.
Σημείωση
Σε αυτό το κεφάλαιο, θα υποθέσουμε τα ακόλουθα αρχεία keytab: /root/t0.keytab, /root/t1.keytab και /root/t2.keytab.
Αυτά τα αρχεία πρέπει να έχουν σταλεί στο στοιχείο Edge Gateway.
Για να συγχωνεύσετε τα αρχεία keytab, συνδεθείτε στο στοιχείο Edge Gateway ως root και, στη συνέχεια, χρησιμοποιήστε τις ακόλουθες εντολές:
1 2 3 4 5 | |
Οι εντολές rkt σάς δίνουν τη δυνατότητα να φορτώσετε όσα αρχεία keytab χρειάζεται, και η εντολή wkt δημιουργεί ένα νέο αρχείο keytab.
Τροποποιήστε τις διαδρομές των αρχείων ανάλογα με εκείνες που διαθέτετε.
Πατήστε το πλήκτρο q για να εξέλθετε από το βοηθητικό πρόγραμμα ktutil.
Ανακτήστε το αρχείο unified.keytab και ακολουθήστε το κεφάλαιο Configuring Kerberos shielding on the Edge Gateway.