Ανάκληση πρόσβασης SSH στο VPS σας από πρώην υπάλληλο ή χαμένο laptop
Ένας πρώην συνεργάτης, ένας web developer που ολοκλήρωσε τη δουλειά του ή ένα laptop που κλάπηκε: όποιος είχε ένα κλειδί SSH στον server σας μπορεί ακόμη να συνδεθεί. Ένα συνηθισμένο κλειδί δεν λήγει. Ό,τι δεν αφαιρέσετε συνεχίζει να λειτουργεί, ακόμη και χρόνια αργότερα. Δείτε πώς ανακαλείτε σωστά την πρόσβαση στο VPS σας.
Βήμα 1: ελέγξτε όλα τα κλειδιά
Τα κλειδιά βρίσκονται ανά χρήστη στο ~/.ssh/authorized_keys, ένα κλειδί ανά γραμμή. Ελέγξτε κάθε χρήστη, και τον root:
sudo sh -c 'ls -l /root/.ssh/authorized_keys /home/*/.ssh/authorized_keys' sudo ssh-keygen -lf /root/.ssh/authorized_keys sudo ssh-keygen -lf /home/anna/.ssh/authorized_keys
Η εντολή ssh-keygen -lf εμφανίζει για κάθε κλειδί το αποτύπωμα (fingerprint) και το σχόλιο, όπως jan@laptop. Από αυτό βλέπετε σε ποιον ή σε ποια συσκευή ανήκει ένα κλειδί. Γι' αυτό είναι χρήσιμο να δίνετε σε κάθε κλειδί ένα σαφές σχόλιο κατά τη δημιουργία του και να χρησιμοποιείτε ξεχωριστό κλειδί για κάθε συσκευή.
- Δημιουργήστε ένα αντίγραφο:
sudo cp /root/.ssh/authorized_keys /root/authorized_keys.bak. - Ανοίξτε το αρχείο με
sudo nanoκαι αφαιρέστε τη γραμμή του συγκεκριμένου ατόμου ή της συγκεκριμένης συσκευής. - Ελέγξτε σε ένα δεύτερο παράθυρο ότι μπορείτε ακόμη να συνδεθείτε εσείς, πριν κλείσετε την τρέχουσα συνεδρία σας.
Υπάρχει κάποιο κλειδί που δεν αναγνωρίζετε και δεν προσθέσατε εσείς; Αυτό είναι σήμα κινδύνου: οι εισβολείς συχνά προσθέτουν το δικό τους κλειδί για να επιστρέψουν αργότερα. Σε αυτή την περίπτωση ακολουθήστε τον οδηγό Παραβιαστήκατε; Τα πρώτα βήματα.
Βήμα 2: ο λογαριασμός του ατόμου
Αν το άτομο είχε δικό του χρήστη, κλειδώστε ή διαγράψτε τον. Ελέγξτε πρώτα ποιος είναι συνδεδεμένος αυτή τη στιγμή με την εντολή who.
| Ενέργεια | Εντολή (Debian και Ubuntu) |
|---|---|
| Κλείδωμα λογαριασμού, διατήρηση αρχείων | sudo usermod -L -e 1 jan |
| Τερματισμός ενεργών συνεδριών και διεργασιών | sudo pkill -u jan |
| Αφαίρεση από την ομάδα sudo | sudo gpasswd -d jan sudo |
| Διαγραφή λογαριασμού μαζί με τον αρχικό φάκελο | sudo deluser --remove-home jan |
Το -L κλειδώνει τον κωδικό πρόσβασης, το -e 1 κάνει τον λογαριασμό να λήξει. Το κλείδωμα μόνο του κωδικού δεν σταματά πάντα ένα κλειδί SSH· ο ληγμένος λογαριασμός όμως το σταματά. Γι' αυτό αφαιρέστε σε κάθε περίπτωση και τα κλειδιά (βήμα 1). Ελέγξτε επίσης αν υπάρχουν αρχεία για το άτομο αυτό στο /etc/sudoers.d/ και αν εκτελούνται προγραμματισμένες εργασίες με αυτό το όνομα: sudo crontab -l -u jan. Στα AlmaLinux και Rocky Linux η ομάδα διαχειριστών ονομάζεται wheel και διαγράφετε έναν λογαριασμό με sudo userdel -r jan.
Βήμα 3: αλλάξτε κωδικούς πρόσβασης και μυστικά
Η αφαίρεση ενός κλειδιού δεν αρκεί αν το άτομο έχει δει και κωδικούς πρόσβασης. Αλλάξτε ό,τι γνώριζε ή μπορούσε να διαβάσει:
- Τον κωδικό πρόσβασης του root. Τον ορίζετε στην οθόνη VPS, καρτέλα Ρυθμίσεις, ή στον server με
sudo passwd root. - Κωδικούς πρόσβασης βάσεων δεδομένων και πινάκων διαχείρισης, καθώς και tokens ή κλειδιά API σε αρχεία ρυθμίσεων και αρχεία
.env. Αλλάξτε τα και στην υπηρεσία που τα εξέδωσε. - Κοινόχρηστα κλειδιά για αντίγραφα ασφαλείας, για παράδειγμα τον κωδικό πρόσβασης του αποθετηρίου restic σας.
Βήμα 4: ο λογαριασμός σας στο WebOké
Αν το άτομο είχε πρόσβαση στο Το WebOké μου, αφαιρέστε την και αυτήν. Με τα κατάλληλα δικαιώματα, κάποιος μπορεί εκεί για παράδειγμα να διαχειριστεί το VPS σας μέσω της οθόνης VPS. Μεταβείτε στη Διαχείριση λογαριασμού, καρτέλα Χρήστες, και επιλέξτε για το συγκεκριμένο άτομο Κατάργηση πρόσβασης. Δείτε Προσθήκη επιπλέον χρήστη σε λογαριασμούς WebOké: διαχείριση πολλών λογαριασμών WebOké με έναν χρήστη. Αν έχετε μοιραστεί ποτέ τα δικά σας στοιχεία σύνδεσης, αλλάξτε τον κωδικό πρόσβασής σας, δείτε Ορισμός, αλλαγή ή ανάκτηση κωδικού πρόσβασης.
Ένα laptop που χάθηκε ή κλάπηκε
Αφαιρέστε μόνο το κλειδί της συγκεκριμένης συσκευής, από κάθε server όπου υπήρχε. Δημιουργήστε ένα νέο κλειδί στη νέα σας συσκευή και προσθέστε το, δείτε Προσθήκη του κλειδιού σας στον server και δοκιμή. Αν το ιδιωτικό κλειδί δεν είχε passphrase, θεωρήστε ότι μπορεί να έχει χρησιμοποιηθεί και αλλάξτε επίσης τους κωδικούς πρόσβασης του βήματος 3. Αν δεν μπορείτε πλέον να συνδεθείτε, χρησιμοποιήστε την κονσόλα στην οθόνη VPS, δείτε Δεν έχετε πλέον πρόσβαση στο VPS σας: τι κάνετε τώρα;
authorized_keys πριν από το κλειδί του την επιλογή expiry-time="20261231", ακολουθούμενη από ένα κενό και το κλειδί. Μετά από αυτή την ημερομηνία ο server απορρίπτει αυτόματα το κλειδί. Επιπλέον, καταγράφετε στον φάκελο τεκμηρίωσης του server σας ποιος έχει πρόσβαση και ελέγχετέ το κάθε τρίμηνο, δείτε Διατηρήστε το VPS σας ασφαλές: hardening, Lynis και πρόγραμμα συντήρησης.Αν επανεγκαταστήσετε αργότερα το VPS, συμπληρώστε στο πεδίο κλειδί SSH μόνο ένα κλειδί που ανήκει ακόμη σε εσάς. Το VPS σας είναι πλήρως αυτοδιαχειριζόμενο: εσείς ορίζετε ποιος έχει πρόσβαση στον server. Εμείς βοηθάμε με το κομμάτι του WebOké, όπως την οθόνη VPS, την κονσόλα και τα snapshots.
Θέλετε να μάθετε περισσότερα; Παρακολουθήστε το δωρεάν μάθημα VPS και διαχείριση server Linux, ενότητα 2.1 Δημιουργία και χρήση κλειδιών SSH ή ενότητα 2.3 Έξυπνη χρήση του SSH.
