Ansible Ssh-Copy-Id

Ansible Ssh Copy Id



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

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

Το Ansible χρησιμοποιεί το SSH ως την προεπιλεγμένη μέθοδο σύνδεσης για τη σύνδεση σε ένα μηχάνημα προορισμού. Το SSH παρέχει ένα ασφαλές και κρυπτογραφημένο κανάλι επικοινωνίας μεταξύ του κόμβου ελέγχου Ansible και των κεντρικών υπολογιστών-στόχων.







Συνήθως, η πιο κοινή μέθοδος διαμόρφωσης του ελέγχου ταυτότητας που βασίζεται σε κλειδί SSH για τον κεντρικό υπολογιστή προορισμού είναι η εντολή ssh-copy-id. Η εντολή αντιγράφει το δημόσιο κλειδί του κόμβου ελέγχου στο αρχείο 'authorized_keys' στον κεντρικό υπολογιστή προορισμού.



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



Στην κοινότητα Ansible, έχουμε πρόσβαση στον ρόλο ssh_id_copy που μας επιτρέπει να εξουσιοδοτούμε τα συστήματα για έλεγχο ταυτότητας SSH χωρίς κωδικό πρόσβασης.





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

Ρόλος Ansible Ssh_Copy_Id

Ο ρόλος έχει μεταβλητές που επιτρέπουν στο Ansible να διαμορφώσει τα κλειδιά SSH στον απομακρυσμένο κεντρικό υπολογιστή. Τέτοιες μεταβλητές περιλαμβάνουν:



Όνομα κεντρικού υπολογιστή – Καθορίζει το απομακρυσμένο σύστημα για σύνδεση (FQDN ή IP).

Όνομα χρήστη – Καθορίζει το όνομα χρήστη για σύνδεση στο απομακρυσμένο σύστημα.

Κωδικός πρόσβασης – Καθορίζει τον κωδικό πρόσβασης του ονόματος χρήστη για σύνδεση στο απομακρυσμένο σύστημα.

ssh_public_key – Καθορίζει την απόλυτη διαδρομή προς το αρχείο δημόσιου κλειδιού για διαμόρφωση στον απομακρυσμένο κεντρικό υπολογιστή.

Λιμάνι – Καθορίζει τη θύρα SSH.

Εγκατάσταση του ρόλου Ssh_Copy_Id

ΠΡΟΣΟΧΗ: Δεν μπορούμε να παρέχουμε την εγκυρότητα και την ασφάλεια των ρόλων και των ενοτήτων που βασίζονται στην κοινότητα. Ελέγξτε και επαληθεύστε τη λειτουργία ενός ρόλου/μονάδας πριν το χρησιμοποιήσετε στην παραγωγή και σε πραγματικές μηχανές. Δεν είναι εγγυημένη ασφάλεια όταν εργάζεστε με τα βήματα που περιγράφονται σε αυτήν την ανάρτηση.

Όπως αναφέρθηκε, το ssh_copy_id είναι ένας ρόλος που παρέχεται από την κοινότητα και παρέχεται από τον Ryan. Ο σύνδεσμος προς το αποθετήριο παρέχεται ως εξής:

https://github.com/ryankwilliams/ansible-ssh-copy-id

Για να μπορέσουμε να το χρησιμοποιήσουμε, πρέπει να βεβαιωθούμε ότι είναι εγκατεστημένο εκτελώντας την ακόλουθη εντολή:

$ ανώμαλος-γαλαξίας εγκαθιστώ rywillia.ssh-copy-id

Παράδειγμα χρήσης

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

---
- όνομα
: διαμορφώστε τον έλεγχο ταυτότητας ssh χωρίς κωδικό πρόσβασης σε ένα απομακρυσμένο μηχάνημα
Οικοδεσπότες
: localhost
γίνομαι
: Ναί
ρόλους
:
- ρόλος
: ryankwilliams.ssh_copy_id
του οποίου
:
όνομα κεντρικού υπολογιστή
: 172.168.112.23
όνομα χρήστη
: ubuntu
Κωδικός πρόσβασης
: Κωδικός πρόσβασης
ssh_public_key
: /home/debian12/.ssh/id_rsa.pub
ssh_port
: 22

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

συμπέρασμα

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