molf48 Δημοσ. 27 Μαΐου 2007 Share Δημοσ. 27 Μαΐου 2007 Έχω ένα μηχανήμα με Fedora Core 6 και τρέχει την υπήρεσια SSH Server. Οι απομακρυσμένοι χρήστες συνδέονται μέσω SSH χρησιμοποιωντας User Name και Password κάνοντας Accept το RSA key. Ποιες ρύθμίσεις πρέπει να κάνω ώστε: Οι απομακρύσμενοι χρήστες να έχουν εγκαταστημένο ένα RSA key στον υπολογιστή τους και όταν θα κάνουν προσπάθεια για Login στον Server να ελέγχει ο τελευταίος αν το απομακρύσμενο μηχάνημα έχει το RSA key και να κανεί accept το User Name και το Password μόνος σε αυτούς που το διαθέτουν. Ευχαριστώ. Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
nske Δημοσ. 27 Μαΐου 2007 Share Δημοσ. 27 Μαΐου 2007 Συνοπτικά: Πειράζεις το αρχείο ρυθμίσεων του openssh server (/etc/ssh/sshd_config): Ενεργοποιείς την αυθεντικοποίηση μέσω κλειδιών >RSAAuthentication yes PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorized_keys Απενεργοποιείς την σύνδεση χωρίς κλειδί>ChallengeResponseAuthentication no [*] Φτιάχνεις ένα ζευγάρι RSA κλειδιών. Π.χ. από τον linux server: ># ssh-keygen -f [color="RoyalBlue"]user[/color]-rsa-key -t rsa θα δημιουργηθούν στο server 2 αρχεία, ένα περιέχει το private key (user-rsa-key) και ένα το public key (user-rsa-key.pub). Το public είναι αυτό που θα μήνει στο server, το private θα το χει ο χρήστης στο μηχάνημά του. Όταν ερωτηθείς διάλεξε τον κωδικό που θέλεις. Προσθέτεις το περιεχόμενο του public key στο αρχείο .ssh/authorized_keys μέσα στον κατάλογο του user (ή όπου αλλού όρισες την AuthorizedKeysFile προηγουμένως) και του δίνεις ελάχιστα δικαιώματα. Π.χ. ># cat [color="RoyalBlue"]user[/color]-rsa-key.pub >> /home/[color="RoyalBlue"]user[/color]/.ssh/authorized_keys # rm [color="RoyalBlue"]user[/color]-rsa-key.pub # chown -R [color="RoyalBlue"]user[/color] /home/[color="RoyalBlue"]user[/color]/.ssh # chmod 600 /home/[color="RoyalBlue"]user[/color]/.ssh/authorized_keys Μπορείς επίσης να περιορίσεις από που θα επιτρέπεται να συνδεθεί ένας χρήστης, με κριτήριο είτε μια διεύθυνση IP, είτε ένα reverse DNS record, βάζοντας μπροστά από το κλειδί μια παράμετρο from, ως εξής: >from="*.example.com,1.2.*" ... Στο παραπάνω παράδειγμα, κάποιος θα μπορούσε να συνδεθεί μόνο από μηχανήματα που έχουν διεύθυνση η οποία ξεκινάει από 1.2.οτιδήποτε ή από μηχανήματα που το reverse DNS της IP διεύθυνσής τους μεταφράζεται σε οτιδήποτε.example.com. Δίνεις το private κλειδί στον χρήστη. Αν σκοπεύει να συνδεθεί από λειτουργικό unix (που έχει εγκατεστημένο openssh client), απλά τοποθετεί το κλειδί σε μια τοποθεσία μέσα στο home του και την ορίζει στο αρχείο ρυθμίσεων του openssh client (/etc/ssh/ssh_config). Π.χ.>PreferredAuthentications=publickey IdentityFile /path/to/secure/directory/[color="RoyalBlue"]user[/color]-rsa-key Αν σκοπεύει να συνδεθεί από windows, μέσω π.χ. του putty client, θα πρέπει να μετατρέψει το κλειδί στο format που καταλαβαίνει ο client, στην περίπτωση του putty φορτώνοντας το στο puttygen και κάνοντάς το convert. Μετά ορίζει την αυθεντικοποίηση μέσω κλειδιού στο interface του putty Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
molf48 Δημοσ. 30 Μαΐου 2007 Μέλος Share Δημοσ. 30 Μαΐου 2007 Πήρα την απάντηση Server Refuse our Key.. Τι έχει πάει λάθος; Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
nske Δημοσ. 30 Μαΐου 2007 Share Δημοσ. 30 Μαΐου 2007 Σίγουρα το public key του χρήστη είναι στον server, στην τοποθεσία που δείχνει η AuthorizedKeysFile στο /etc/ssh/sshd_config, και δεν έχεις βάλει κάποια from μέσα που το περιορίζει; Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
molf48 Δημοσ. 8 Ιουνίου 2007 Μέλος Share Δημοσ. 8 Ιουνίου 2007 Είναι εντάξει τώρα ευχαριστώ.. Έχω βέβαια ένα προβλημά όταν πάω να κάνω tunnel με VNC.. Αφού εχώ κανει ssh -l molf48 172.27.31.30 -i molf48-rsa-key 5900:localhost:5900 κανει κανονικα authorized και με εισαγεί στον Server αλλά όταν βάζω τον VNCViewer localhost:0 με απορριπτει.. Μήπως έχεις καμιά ιδέα; Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
nske Δημοσ. 8 Ιουνίου 2007 Share Δημοσ. 8 Ιουνίου 2007 Η σωστή σύνταξη είναι η εξής: >ssh -l molf48 -i molf48-rsa-key -L 5900:localhost:5900 172.27.31.30 Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
capthookb Δημοσ. 9 Μαρτίου 2008 Share Δημοσ. 9 Μαρτίου 2008 Να προσθέσω πως, εάν θέλουμε να κάνουμε login σε περισσότερα μηχανήματα από ένα, ή σε ένα μηχάνημα με πολλαπλούς χρήστες, πρέπει να δηλώσουμε στο configuration του ssh, paths για πολλαπλά κλειδιά. Δηλαδή να αντιγράψουμε το /etc/ssh/ssh_config στο ~/.ssh/config ή ακόμα και να δημιουργήσουμε ένα νέο ~/.ssh/config. Στο config του χρήστη πλέον θα δηλώσουμε πολλαπλά identities, ένα για κάθε login. > IdentityFile /path/to/secure/directory/user-rsa-key IdentityFile /path/to/secure/directory/user-rsa-key1 IdentityFile /path/to/secure/directory/user-rsa-key2 IdentityFile /path/to/secure/directory/user-rsa-key3 IdentityFile /path/to/secure/directory/user-rsa-key4 IdentityFile /path/to/secure/directory/user-rsa-key5 κτλ Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
nske Δημοσ. 9 Μαρτίου 2008 Share Δημοσ. 9 Μαρτίου 2008 Θα δουλέψει, απλά προσωπικά δε μου αρέσει σα λύση γιατί θα προσπαθήσει να κάνει authenticate με όλα τα κλειδιά σειριακά μέχρι να βρει το σωστό, προκαλώντας authentication failures στο server. Μια πιο κομψή λύση είναι να ορίζουμε το σωστό key file με την -i (μπορεί άνετα να αυτοματοποιηθεί με aliases ή ένα μίνι wrapper σε shell script ώστε να μη χρειάζεται να γράφουμε τις παραμέτρους κάθε φορά). Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.