Ρύθμιση σωστών .ssh/config Permissions

Setting Proper Ssh Config Permissions



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

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







ο .ssh ντοσιέ. περιέχει απαραίτητα αρχεία SSH όπως:



  1. Δημόσια και ιδιωτικά κλειδιά ( id_rsa και id_rsa.pub ).
  2. ο γνωστά_φώτα αρχείο - Περιέχει δημόσια κλειδιά όλων των απομακρυσμένων συστημάτων στα οποία έχετε συνδεθεί.
  3. ο διαμόρφωση αρχείο διαμόρφωσης πελάτη

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



$ touch ~/.ssh/config

Το αρχείο διαμόρφωσης .ssh/config client

Κάθε φορά που ξεκινάτε μια σύνδεση SSH, πρέπει να καθορίσετε λεπτομέρειες όπως τη διεύθυνση IP ή το όνομα τομέα και τη θύρα που ακούει η SSH. Για παράδειγμα,

$ ssh [email protected] -σ 22

Μπορεί να είναι ταραχώδες να πρέπει πάντα να θυμάστε τέτοιες λεπτομέρειες. Και εδώ είναι που ~/.ssh/config το αρχείο μπαίνει. Το ~/.ssh/config Το αρχείο είναι ένα αρχείο διαμόρφωσης που σας επιτρέπει να διαμορφώσετε τις λεπτομέρειες διαμόρφωσης ανά χρήστη του απομακρυσμένου κεντρικού υπολογιστή. Σας εξοικονομεί την αγωνία να χρειάζεται πάντα να ανακαλείτε τις λεπτομέρειες ανά κεντρικό υπολογιστή που απαιτούνται για τη σύνδεση.

Ένα δείγμα αρχείου διαμόρφωσης εμφανίζεται όπως φαίνεται.

Διακομιστής σταδιοποίησης κεντρικού υπολογιστή
Όνομα κεντρικού υπολογιστή 192.168.2.103
Τζέιμς χρήστη
Λιμάνι 22

Μια απλή εντολή SSH στον απομακρυσμένο κεντρικό υπολογιστή θα έχει την εξής μορφή:

$ ssh staging-server

Τα δικαιώματα αρχείου .ssh/config

Από προεπιλογή, το ~/.ssh/config Το αρχείο διαμόρφωσης πελάτη διαθέτει το 644 δικαιώματα αρχείου. Μπορείτε να το επαληθεύσετε χρησιμοποιώντας το ls -la εντολή ως εξής.

$ ls -la ~ / .ssh / config

Αυτό σημαίνει ότι ο κάτοχος και η ομάδα του αρχείου έχουν και τα δύο δικαιώματα ανάγνωσης και εγγραφής (rw), ενώ άλλοι χρήστες έχουν μόνο δικαιώματα ανάγνωσης (r).

-rw-rw-r--

ΣΗΜΕΙΩΣΗ:

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

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

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

Η βέλτιστη πρακτική συνιστά να αφήσετε τα προεπιλεγμένα δικαιώματα σε 664 ή 600, όπου μόνο ο κάτοχος έχει δικαιώματα ανάγνωσης και εγγραφής (rw). Με αυτόν τον τρόπο, το αρχείο παραμένει ασφαλές από την τροποποίηση από μη εξουσιοδοτημένους χρήστες.

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

Στο παρακάτω παράδειγμα, το ~/.ssh/config η ιδιοκτησία έχει οριστεί σε Μπομπ: Μπομπ.

Για να επιλύσετε αυτό το ζήτημα, επέστρεψα πίσω στην αρχική ιδιοκτησία αρχείου χρησιμοποιώντας το chown εντολή.

$ sudo chown james: james ~/.ssh/config

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

$ ssh staging-server

Και αυτό είναι το μόνο που πρέπει να γνωρίζετε για τη ρύθμιση δικαιωμάτων στο ~/.ssh/config αρχείο. Βεβαιωθείτε ότι δεν έχετε ορίσει δικαιώματα ανάγνωσης στους υπόλοιπους χρήστες και βεβαιωθείτε ότι είστε κάτοχος του αρχείου.