Ενδιαφέρουσα συμβουλή για τη βελτίωση της ασφάλειας SSH

Αυτή τη φορά θα δούμε ένα σύντομη και απλή συμβουλή που θα μας βοηθήσουν να βελτιωθούμε ασφάλεια των απομακρυσμένων συνδέσεών μας με SSH.


Το OpenSSH, το οποίο είναι το πακέτο που παρέχεται από συστήματα GNU / Linux για το χειρισμό συνδέσεων SSH, έχει μια μεγάλη ποικιλία επιλογών. Διαβάζοντας το βιβλίο SSH Το ασφαλές κέλυφος και στις σελίδες man βρήκα την επιλογή -F, η οποία λέει στον πελάτη SSH να χρησιμοποιήσει ένα διαφορετικό αρχείο διαμόρφωσης από αυτό που βρέθηκε από προεπιλογή στον κατάλογο / etc / ssh.

Πώς χρησιμοποιούμε αυτήν την επιλογή;

Ως εξής:

ssh -F / path / to_your / config / file user @ ip / host

Για παράδειγμα, εάν έχουμε ένα προσαρμοσμένο αρχείο διαμόρφωσης που ονομάζεται my_config στην επιφάνεια εργασίας και θέλουμε να συνδεθούμε με τον χρήστη Carlos στον υπολογιστή με το ip 192.168.1.258, τότε θα χρησιμοποιούσαμε την εντολή ως εξής:

ssh -F ~ / Desktop / my_config carlos@192.168.1.258

Πώς βοηθά στην ασφάλεια της σύνδεσης;

Θυμηθείτε ότι ένας εισβολέας που βρίσκεται μέσα στο σύστημά μας θα προσπαθήσει αμέσως να αποκτήσει δικαιώματα διαχειριστή εάν δεν τα έχει ήδη, οπότε θα ήταν αρκετά εύκολο για αυτόν να εκτελέσει ssh για να συνδεθεί με τα υπόλοιπα μηχανήματα στο δίκτυο. Για να το αποφύγουμε αυτό, μπορούμε να διαμορφώσουμε το αρχείο / etc / ssh / ssh_config με λανθασμένες τιμές και όταν θέλουμε να συνδεθούμε μέσω SSH θα χρησιμοποιήσουμε το αρχείο διαμόρφωσης που θα έχουμε αποθηκεύσει σε μια τοποθεσία που μόνο γνωρίζουμε (ακόμη και σε εξωτερικό συσκευή αποθήκευσης), δηλαδή, θα έχουμε ασφάλεια από το σκοτάδι. Με αυτόν τον τρόπο ο εισβολέας θα μπερδευόταν να διαπιστώσει ότι δεν μπορεί να συνδεθεί χρησιμοποιώντας SSH και ότι προσπαθεί να κάνει τις συνδέσεις σύμφωνα με αυτό που καθορίζεται στο προεπιλεγμένο αρχείο διαμόρφωσης, οπότε θα είναι δύσκολο για αυτόν να συνειδητοποιήσει τι συμβαίνει και εμείς θα τον περιπλέξει πολύ τη δουλειά.

Αυτό προστέθηκε για να αλλάξετε τη θύρα ακρόασης του διακομιστή SSH, να απενεργοποιήσετε το SSH1, να καθορίσετε ποιοι χρήστες μπορούν να συνδεθούν στον διακομιστή, να επιτρέπουν ρητά σε ποια IP ή εύρος IP μπορούν να συνδεθούν στον διακομιστή και άλλες συμβουλές που μπορούμε να βρούμε http://www.techtear.com/2007/04/08/trucos-y-consejos-para-asegurar-ssh-en-linux θα μας επιτρέψουν να αυξήσουμε την ασφάλεια των συνδέσεων SSH μας.

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

ssh -p 1056 -c blowfish -C -l carlos -q -i εγώ 192.168.1.258

-p Καθορίζει τη θύρα για σύνδεση στον απομακρυσμένο κεντρικό υπολογιστή.
-c Καθορίζει τον τρόπο κρυπτογράφησης της περιόδου λειτουργίας.
-C Υποδεικνύει ότι η συνεδρία πρέπει να συμπιεστεί.
-l Υποδεικνύει τον χρήστη με τον οποίο θα συνδεθεί στον απομακρυσμένο κεντρικό υπολογιστή.
-q Υποδεικνύει ότι τα διαγνωστικά μηνύματα έχουν καταργηθεί.
-i Υποδεικνύει το αρχείο προς αναγνώριση (ιδιωτικό κλειδί)

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

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

Η χρήση της επιλογής -F μπορεί να είναι πολύ χρήσιμη σε περίπτωση που έχετε πολλούς διακομιστές με διαφορετική διαμόρφωση. Διαφορετικά, θα πρέπει να θυμόμαστε όλες τις ρυθμίσεις, κάτι που είναι πρακτικά αδύνατο. Η λύση θα ήταν να έχουμε ένα αρχείο διαμόρφωσης τέλεια προετοιμασμένο σύμφωνα με τις απαιτήσεις κάθε διακομιστή, διευκολύνοντας και διασφαλίζοντας την πρόσβαση σε αυτούς τους διακομιστές.

Σε αυτόν τον σύνδεσμο http://www.openbsd.org/cgi-bin/man.cgi?query=ssh_config Μπορείτε να μάθετε πώς να επεξεργαστείτε το αρχείο διαμόρφωσης πελάτη SSH.

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

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

Σημείωση: εάν θέλετε να διαβάσετε το βιβλίο "SSH The Secure Shell", φροντίστε να συμβουλευτείτε τις μη αυτόματες σελίδες της έκδοσης που έχετε εγκαταστήσει, καθώς το βιβλίο είναι πολύ πίσω από την άποψη των επιλογών που υποστηρίζει το OpenSSH.
Ευχαριστώ Izkalotl για τη συνεισφορά!
Ενδιαφέρομαι για να συνεισφέρετε?

Αφήστε το σχόλιό σας

Η διεύθυνση email σας δεν θα δημοσιευθεί. Τα υποχρεωτικά πεδία σημειώνονται με *

*

*

  1. Υπεύθυνος για τα δεδομένα: Miguel Ángel Gatón
  2. Σκοπός των δεδομένων: Έλεγχος SPAM, διαχείριση σχολίων.
  3. Νομιμοποίηση: Η συγκατάθεσή σας
  4. Κοινοποίηση των δεδομένων: Τα δεδομένα δεν θα κοινοποιούνται σε τρίτους, εκτός από νομική υποχρέωση.
  5. Αποθήκευση δεδομένων: Βάση δεδομένων που φιλοξενείται από τα δίκτυα Occentus (ΕΕ)
  6. Δικαιώματα: Ανά πάσα στιγμή μπορείτε να περιορίσετε, να ανακτήσετε και να διαγράψετε τις πληροφορίες σας.

  1.   HacKan & CuBa co. dijo

    τι; Νομίζω ότι αναφέρεται σε άλλη ανάρτηση, γιατί δεν καταλαβαίνω τι αναφέρετε. Αυτή η ανάρτηση δίνει μια μικρή συμβουλή για εφαρμογή κατά τη δημιουργία σύνδεσης με έναν υπολογιστή, δεν αναφέρεται στην αλλαγή οποιασδήποτε διαμόρφωσής της ή στην επίλυση οτιδήποτε αν κάποιος καταφέρει να εισέλθει. Η ιδέα είναι να κάνουμε την επικοινωνία μεταξύ υπολογιστών ασφαλή, παρακάμπτοντας τις προεπιλεγμένες παραμέτρους που μπορεί να μην προσφέρουν το κατάλληλο επίπεδο ασφάλειας.
    Το Port-knocking είναι ενδιαφέρον για τον περιορισμό των επιθέσεων (δεν τις αποτρέπει εντελώς, αλλά κάνει το πράγμα), αν και το βρίσκω λίγο άβολο στη χρήση ... Ίσως να μην έχω μεγάλη εμπειρία με αυτό.
    Υπάρχουν πολλά προγράμματα που σαρώνουν αρχεία καταγραφής για να αποκλείσουν την πρόσβαση μέσω IP όταν εντοπίζονται λανθασμένες συνδέσεις.
    Το ασφαλέστερο είναι να χρησιμοποιείτε σύνδεση χωρίς κωδικό πρόσβασης χρησιμοποιώντας βασικά αρχεία.

    Χαιρετισμούς!

  2.   HacKan & CuBa co. dijo

    τι; Νομίζω ότι αναφέρεται σε άλλη ανάρτηση, γιατί δεν καταλαβαίνω τι αναφέρετε. Αυτή η ανάρτηση δίνει μια μικρή συμβουλή για εφαρμογή κατά τη δημιουργία σύνδεσης με έναν υπολογιστή, δεν αναφέρεται στην αλλαγή οποιασδήποτε διαμόρφωσής της ή στην επίλυση οτιδήποτε αν κάποιος καταφέρει να εισέλθει. Η ιδέα είναι να κάνουμε την επικοινωνία μεταξύ υπολογιστών ασφαλή, παρακάμπτοντας τις προεπιλεγμένες παραμέτρους που μπορεί να μην προσφέρουν το κατάλληλο επίπεδο ασφάλειας.
    Το Port-knocking είναι ενδιαφέρον για τον περιορισμό των επιθέσεων (δεν τις αποτρέπει εντελώς, αλλά κάνει το πράγμα), αν και το βρίσκω λίγο άβολο στη χρήση ... Ίσως να μην έχω μεγάλη εμπειρία με αυτό.
    Υπάρχουν πολλά προγράμματα που σαρώνουν αρχεία καταγραφής για να αποκλείσουν την πρόσβαση μέσω IP όταν εντοπίζονται λανθασμένες συνδέσεις.
    Το ασφαλέστερο είναι να χρησιμοποιείτε σύνδεση χωρίς κωδικό πρόσβασης χρησιμοποιώντας βασικά αρχεία.

    Χαιρετισμούς!

  3.   HacKan & CuBa co. dijo

    Επίσης, το ssh θα αναζητήσει την προεπιλεγμένη διαμόρφωση χρήστη στο ~ / .ssh / config
    Εκτός αν ο δαίμονας έχει ρυθμιστεί όχι, αλλά από προεπιλογή.
    Είναι σημαντικό να ληφθεί υπόψη ο αλγόριθμος που χρησιμοποιείται για κατακερματισμούς, με την επιλογή -m. Συνιστώ τα hmac-sha2-512, hmac-sha2-256, hmac-ripemd160 να είναι αυτά που προσφέρουν την καλύτερη ασφάλεια. Να είστε προσεκτικοί, γιατί από προεπιλογή χρησιμοποιεί MD5 (ή sha1 ελπίζουμε) !! είναι εκείνα τα πράγματα που δεν είναι κατανοητά….
    Τέλος πάντων, μια καλή ιδέα θα ήταν να το τρέξετε με:
    ssh -p PORT -c aes256-ctr -m hmac-sha2-512 -C IP
    με -c καθορίζετε τον αλγόριθμο κρυπτογράφησης που χρησιμοποιείται, όπου το ctr (λειτουργία μετρητή) είναι τα πιο συνιστώμενα (aes256-ctr και aes196-ctr), και αν όχι το cbc (cipher-block chaining): aes256-cbc, aes192- cbc , blowfish-cbc, cast128-cbc

    Χαιρετισμούς!

  4.   HacKan & CuBa co. dijo

    Επίσης, το ssh θα αναζητήσει την προεπιλεγμένη διαμόρφωση χρήστη στο ~ / .ssh / config
    Εκτός αν ο δαίμονας έχει ρυθμιστεί όχι, αλλά από προεπιλογή.
    Είναι σημαντικό να ληφθεί υπόψη ο αλγόριθμος που χρησιμοποιείται για κατακερματισμούς, με την επιλογή -m. Συνιστώ τα hmac-sha2-512, hmac-sha2-256, hmac-ripemd160 να είναι αυτά που προσφέρουν την καλύτερη ασφάλεια. Να είστε προσεκτικοί, γιατί από προεπιλογή χρησιμοποιεί MD5 (ή sha1 ελπίζουμε) !! είναι εκείνα τα πράγματα που δεν είναι κατανοητά….
    Τέλος πάντων, μια καλή ιδέα θα ήταν να το τρέξετε με:
    ssh -p PORT -c aes256-ctr -m hmac-sha2-512 -C IP
    με -c καθορίζετε τον αλγόριθμο κρυπτογράφησης που χρησιμοποιείται, όπου το ctr (λειτουργία μετρητή) είναι τα πιο συνιστώμενα (aes256-ctr και aes196-ctr), και αν όχι το cbc (cipher-block chaining): aes256-cbc, aes192- cbc , blowfish-cbc, cast128-cbc

    Χαιρετισμούς!

  5.   ivaan11 dijo

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

    mercii για απάντηση!

  6.   ivaan11 dijo

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

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

    Περιμένω απαντήσεις!

  7.   Σέρχιο Βάιζενεγκερ dijo

    > Το ασφαλέστερο είναι να χρησιμοποιείτε σύνδεση χωρίς κωδικό πρόσβασης χρησιμοποιώντας βασικά αρχεία.
    Είναι ακριβώς αυτό που θα έλεγα ... ότι ο μόνος τρόπος για να συνδεθείτε σε διαφορετικούς υπολογιστές είναι με ένα κλειδί που βρίσκεται σε ένα pendrive που κρέμεται από το λαιμό σας 😉
    Ο εισβολέας μπορεί να σπαταλήσει ολόκληρη τη ζωή του προσπαθώντας να βρει έναν κωδικό πρόσβασης και δεν θα συνειδητοποιήσει ποτέ ότι δεν χρειάζεται κωδικό πρόσβασης αλλά ένα αρχείο XD.

  8.   Linux izkalotl dijo

    Δεν είμαι ειδικός στην Ασφάλεια και τα Δίκτυα, αλλά για να παραβιάσω το σύστημα ασφαλείας σας με σύνδεση χωρίς κωδικό πρόσβασης, θα αρκούσε απλά να δημιουργήσετε ένα σενάριο για να αντιγράψετε το κλειδί σας που είναι αποθηκευμένο σε ένα pendrive όταν το τοποθετείτε, οπότε σε λίγα δευτερόλεπτα θα έχετε πρόσβαση με το δικό σας κλειδί στο απομακρυσμένο διακομιστή (και φυσικά, χωρίς την ανάγκη κωδικού πρόσβασης), το πρόβλημα με τον κωδικό πρόσβασης είναι ότι σας κάνει να αισθάνεστε εσφαλμένη ασφάλεια, καθώς όπως μπορείτε να δείτε με μερικές γραμμές σε ένα σενάριο θα ήταν πολύ εύκολο να ελέγξετε τους απομακρυσμένους διακομιστές σας. Να θυμάστε ότι ένας εισβολέας δεν θα σπαταλήσει χρόνο ή πόρους προσπαθώντας να σπάσει τους κωδικούς πρόσβασης εάν υπάρχει ένας πιο σύντομος τρόπος παραβίασης της ασφάλειάς σας. Σας προτείνω να χρησιμοποιήσετε τουλάχιστον 20 από τις επιλογές που επιτρέπει η διαμόρφωση του SSH και αυτό προσθέτει κάτι όπως το TCP Wrappers, ένα καλό τείχος προστασίας και ακόμη και τότε ο διακομιστής σας δεν θα προστατεύεται 100%, ο χειρότερος εχθρός σε θέματα ασφαλείας είναι αξιόπιστος.

  9.   γκόρλοκ dijo

    Είναι ενδιαφέρον, αν και δεν είμαι σίγουρος για το πραγματικό όφελος, διότι μιλάμε για να κάνουμε τα πράγματα λίγο δύσκολα όταν ένας εισβολέας έχει ήδη ενταχθεί στην ομάδα και προσθέτει περισσότερη πολυπλοκότητα στους διαχειριστές.
    Βρίσκω μια τεχνική honeypot πιο χρήσιμη για την προειδοποίηση (και τη λήψη μέτρων;) σχετικά με ύποπτη δραστηριότητα ή κάποιο είδος sandbox που περιορίζει τις ενέργειες του εισβολέα.
    Ή θα έψαχνα για άλλους τύπους τεχνικών που εμποδίζουν την είσοδο, όπως το port-knocking.
    Επίσης, σας ευχαριστώ που το μοιραστήκατε και ξεκινήσατε τη συζήτηση.