2FA-Tool Logo
2FA-Tool.com Ασφαλής γεννήτρια κωδικών 2FA στο πρόγραμμα περιήγησης
🐙 Εγχειρίδιο Ασφαλείας Προγραμματιστών ✓ Υποχρεωτική Συμμόρφωση

Πλήρης Οδηγός για τη Ρύθμιση του GitHub 2FA, SMS Fallback & Recovery Codes

Καθώς οι επιθέσεις στην εφοδιαστική αλυσίδα λογισμικού ανοιχτού κώδικα επιταχύνονται παγκοσμίως, το GitHub καθιστά υποχρεωτικό τον έλεγχο ταυτότητας δύο παραγόντων (2FA) για όλους τους συνεισφέροντες προγραμματιστές. Δυστυχώς, χιλιάδες μηχανικοί χάνουν οριστικά την πρόσβαση στους οργανισμούς και στα ιδιωτικά τους repositories κάθε μήνα εξαιτίας παραμελημένων recovery codes. Αυτός ο τεχνικός οδηγός καλύπτει τη ρύθμιση TOTP, την αρχειοθέτηση recovery codes σε ασφαλές offline περιβάλλον (cold storage), τις αλληλεπιδράσεις με SSH keys και την κρυπτογραφική διάσωση λογαριασμού σε περίπτωση έκτακτου κλειδώματος.

2FA
Ομάδα Ασφαλείας 2FA-Tool
Ενημερώθηκε τον Οκτώβριο 2026
Εκτιμώμενος χρόνος ανάγνωσης: 13 λεπτά (2.400+ λέξεις)
GitHub 2FA Recovery Codes Supply Chain
💡 Βασικά Σημεία για Προγραμματιστές (TL;DR)
  • Η υποχρεωτική εφαρμογή είναι μόνιμη: Οι προγραμματιστές που δεν θα ρυθμίσουν το 2FA μέχρι την προγραμματισμένη προθεσμία αποκλείονται από ενέργειες στο περιβάλλον web και ανακαλούνται από τα repositories οργανισμών.
  • Τα Recovery Codes είναι το σωσίβιό σας: Οι 16 παραγόμενοι recovery codes είναι μίας χρήσης. Αποθηκεύστε τους σε ένα κρυπτογραφημένο θησαυροφυλάκιο (vault) ή σε ένα offline φυσικό εκτυπωμένο αντίγραφο αμέσως.
  • Οι κωδικοί πρόσβασης Git δεν λειτουργούν πλέον: Οι εντολές push μέσω HTTPS Git δεν μπορούν να δεχτούν διαδραστικούς 6-ψήφιους κωδικούς. Πρέπει να χρησιμοποιείτε SSH Keys ή scoped Personal Access Tokens (PATs).
  • Κρυπτογραφική Έσχατη Λύση: Εάν χάσετε το τηλέφωνο και τους κωδικούς σας, μπορείτε να αποδείξετε την κυριότητα υπογράφοντας μια πρόκληση ταυτότητας χρησιμοποιώντας το προηγουμένως καταχωρημένο τοπικό σας ιδιωτικό κλειδί SSH (SSH private key).
01

Επισκόπηση Υποχρεωτικής Πολιτικής GitHub 2FA & Σκεπτικό Ασφαλείας

Ιστορικά, τα παραβιασμένα διαπιστευτήρια προγραμματιστών έχουν προκαλέσει καταστροφικές ευπάθειες στην εφοδιαστική αλυσίδα λογισμικού. Περιστατικά υψηλού προφίλ — όπως η κατάληψη των πακέτων event-stream, ua-parser-js, ctx και colors.js στο npm και στο PyPI — απέδειξαν ότι ένας και μόνο κλεμμένος λογαριασμός μπορεί να θέσει σε κίνδυνο εκατοντάδες χιλιάδες εμπορικά έργα και κρίσιμες υποδομές.

Οι επιτιθέμενοι υποκλέπτουν διαπιστευτήρια χρησιμοποιώντας παγκόσμιες λίστες credential-stuffing, υποδομές phishing και μολυσμένες εξαρτήσεις προγραμματιστών (trojanized dependencies). Επειδή οι μηχανικοί λογισμικού λειτουργούν συνήθως με δικαιώματα root ή διαχειριστή στον πηγαίο κώδικα και στους αγωγούς ανάπτυξης CI/CD, η ασφάλιση των code committers κατέστη ζήτημα διεθνούς ασφάλειας υποδομών.

Ως απάντηση, το GitHub θέσπισε μια καθολική εντολή πολλαπλών φάσεων που απαιτεί έλεγχο ταυτότητας δύο παραγόντων για όλους τους συντάκτες κώδικα (code committers), εκδότες πακέτων, χρήστες επιχειρήσεων (enterprise users) και μέλη οργανισμών:

📌 Συνέπειες από τη μη τήρηση της προθεσμίας εγγραφής στο 2FA
  • Το περιβάλλον web του GitHub εμφανίζει ένα υποχρεωτικό modal αποκλεισμού, εμποδίζοντας την αξιολόγηση pull requests, τον σχολιασμό σε issues και τη διαχείριση repositories μέχρι να ολοκληρωθεί η ρύθμιση του 2FA.
  • Οι επιχειρηματικοί οργανισμοί (Enterprise organizations) που επιβάλλουν το 2FA θα αποβάλλουν αυτόματα τα μη συμμορφούμενα μέλη, αφαιρώντας άμεσα την πρόσβαση εγγραφής (write access) και ανακαλώντας τα προνόμια στα αποθετήρια.
  • Οι αυτοματοποιημένοι αγωγοί ροής εργασιών (CI/CD pipelines), τα κλειδιά δημοσίευσης πακέτων npm και τα δικαιώματα σε repositories παγώνουν έως ότου επιβεβαιωθεί η συμμόρφωση ασφαλείας του λογαριασμού.
02

Βήμα προς Βήμα Οδηγός: Σύνδεση TOTP Authenticator

Παρόλο που το GitHub υποστηρίζει SMS, ειδοποιήσεις για κινητά και κλειδιά υλικού (hardware keys), η εφαρμογή RFC 6238 TOTP Authenticator (π.χ. Google Authenticator, Bitwarden, 2FA-Tool) αποτελεί το χρυσό πρότυπο για ανεξαρτησία από παρόχους και αξιοπιστία εκτός σύνδεσης:

1

Βήμα 1: Μεταβείτε στις Ρυθμίσεις Ταυτοποίησης (Authentication Settings)

Συνδεθείτε στο GitHub. Κάντε κλικ στο εικονίδιο του προφίλ σας στην επάνω δεξιά γωνία ➔ Settings. Στην αριστερή πλαϊνή γραμμή πλοήγησης στην ενότητα "Access", επιλέξτε Password and authentication.

Διαδρομή: Settings ➔ Password and authentication ➔ Two-factor methods ➔ Set up authenticator app
2

Βήμα 2: Σαρώστε τον Κωδικό QR & Αποθηκεύστε το Ανεπεξέργαστο Base32 Secret

Το GitHub εμφανίζει έναν οπτικό κωδικό QR μαζί με έναν σύνδεσμο κειμένου που αναφέρει: "enter this text code instead".

💡 Συμβουλή Επαγγελματικής Ασφαλείας: Κάντε κλικ στον σύνδεσμο κειμένου και αντιγράψτε τη συμβολοσειρά Base32 secret μήκους 32 χαρακτήρων (π.χ. A3J5N2O9...). Αποθηκεύστε την στον κρυπτογραφημένο διαχειριστή κωδικών πρόσβασής σας. Αυτός ο αλφαριθμητικός σπόρος (seed) σάς επιτρέπει να αναπαράγετε διακριτικά ελέγχου ταυτότητας σε οποιαδήποτε συσκευή εάν το τηλέφωνό σας καταστραφεί ή χαθεί.
3

Βήμα 3: Εισαγάγετε τον 6-ψήφιο Κωδικό για Επιβεβαίωση

Σαρώστε τον κωδικό με την εφαρμογή authenticator του κινητού σας. Εισαγάγετε τον κυλιόμενο 6-ψήφιο αριθμό που εμφανίζεται στην οθόνη σας στο πεδίο επαλήθευσης του GitHub και κάντε κλικ στο "Continue".

03

Πρότυπα Αρχειοθέτησης Recovery Codes & Κρυπτογραφική Υγιεινή

Μετά την επιτυχή σύνδεση TOTP, το GitHub εμφανίζει αμέσως ένα παράθυρο διαλόγου με 16 δεκαεξαδικά διακριτικά με παύλες (π.χ. d4a2b-98f12). Το κλείσιμο αυτού του παραθύρου χωρίς μόνιμο αντίγραφο ασφαλείας αποτελεί τη συχνότερη αιτία οριστικού αποκλεισμού προγραμματιστών από τους λογαριασμούς τους.

🚨 Κρυπτογραφικά Χαρακτηριστικά των Recovery Codes

1. Αποκλειστικά Μίας Χρήσης: Κάθε recovery code ακυρώνεται οριστικά και μη αναστρέψιμα μετά την πρώτη του χρήση στη θέση ενός κωδικού TOTP.
2. Κύρια Εξουσία (Master Authority): Ένας κωδικός επαναφοράς παρακάμπτει τυχόν απόν hardware και παρέχει άμεση πρόσβαση στον λογαριασμό.
3. Zero-Knowledge Κατακερματισμός Διακομιστή: Το GitHub αποθηκεύει αυτούς τους κωδικούς ως μη αναστρέψιμους κρυπτογραφικούς κατακερματισμούς (one-way cryptographic hashes). Οι μηχανικοί της υποστήριξης του GitHub ΔΕΝ μπορούν να ανακτήσουν ή να διαβάσουν τους αρχικούς σας κωδικούς υπό οποιεσδήποτε συνθήκες!

Συνιστώμενη Στρατηγική Ψυχρής Αποθήκευσης (Cold Storage) Τριών Επιπέδων:

🥇 Επισύναψη σε Password Vault

Κάντε λήψη του github-recovery-codes.txt και επισυνάψτε το στην καταχώριση GitHub στο 1Password, Bitwarden ή KeePassXC χρησιμοποιώντας κύρια κλειδιά προερχόμενα από Argon2id.

🥈 Air-Gapped Hardware Vault

Αποθηκεύστε το αρχείο κειμένου σε μια κρυπτογραφημένη με VeraCrypt offline μονάδα USB, η οποία παραμένει αποσυνδεδεμένη από τοπικά δίκτυα και συγχρονιστές cloud αποθήκευσης.

🥉 Αδιάβροχο Φυσικό Έντυπο

Εκτυπώστε ένα φυσικό αντίγραφο σε χαρτί, πλαστικοποιήστε το για προστασία από την υγρασία και ασφαλίστε το μέσα σε ένα φυσικό χρηματοκιβώτιο σπιτιού για προστασία από απομακρυσμένα info-stealers malware.

Προειδοποίηση Πρόληψης Διαρροής από το Πρόχειρο (Clipboard Leak): Κατά την αντιγραφή των 16 recovery codes, προσέξτε τους διαχειριστές ιστορικού προχείρου (όπως Alfred, Raycast ή Windows Clipboard History). Ευαίσθητοι recovery codes αποθηκευμένοι σε βάσεις δεδομένων προχείρου απλού κειμένου μπορούν να υποκλαπούν από κακόβουλο λογισμικό χαμηλών δικαιωμάτων. Καθαρίζετε πάντα το buffer του προχείρου σας αμέσως μετά την επικόλληση των διαπιστευτηρίων επαναφοράς στο κρυπτογραφημένο σας θησαυροφυλάκιο.
04

Μέθοδοι Εφεδρικής Ταυτοποίησης (Fallback): SMS έναντι Passkeys έναντι GitHub Mobile

Το GitHub επιτρέπει τη διαμόρφωση δευτερευόντων εφεδρικών μηχανισμών. Εξετάστε την ανάλυση ασφαλείας μας στους τρέχοντες φορείς ταυτοποίησης:

Μέθοδος Αντίσταση σε Phishing Ευπάθεια σε SIM-Swap Αξιολόγηση & Πρακτική Χρήση
Passkeys / FIDO2 Security Keys Απόλυτη (Η σύνδεση προέλευσης WebAuthn αποτρέπει το proxy phishing) Άνοσο ⭐⭐⭐⭐⭐ Κορυφαία Σύσταση (YubiKey / Touch ID)
TOTP Authenticator App Μέτρια (Ευάλωτο σε real-time reverse proxies) Άνοσο ⭐⭐⭐⭐ Καθολική Βασική Γραμμή (Μηδενική εξάρτηση από συνδεσιμότητα)
GitHub Mobile Push Approval Μέτρια (Απαιτεί προτροπή επαλήθευσης 2-ψήφιου αριθμού) Άνοσο ⭐⭐⭐⭐ Εξαιρετική Καθημερινή Ευκολία
SMS Verification Fallback Μηδενική (Μη κρυπτογραφημένη σηματοδοσία SS7, υποκλέπτεται εύκολα) Υψηλός Κίνδυνος ⭐ Δεν συνιστάται για συντηρητές υψηλού προφίλ
05

Ροές Εργασίας Git στο Τερματικό: SSH Keys, PATs & Αλληλεπίδραση με το 2FA

Μετά την ενεργοποίηση του 2FA, οι προγραμματιστές αντιμετωπίζουν συχνά άμεσα σφάλματα στο τερματικό κατά τη διάρκεια συνηθισμένων code pushes:

remote: Support for password authentication was removed on August 13, 2021.
fatal: Authentication failed for 'https://github.com/username/repo.git/'

Τεχνικό Σκεπτικό: Το πρωτόκολλο επικοινωνίας του Git (wire protocol) δεν μπορεί να χειριστεί διαδραστικούς διαλόγους 6-ψήφιων κωδικών TOTP. Ως αποτέλεσμα, το GitHub απενεργοποίησε οριστικά τον απλό έλεγχο ταυτότητας με κωδικό πρόσβασης λογαριασμού για αιτήματα HTTPS Git όταν το 2FA είναι ενεργοποιημένο.

🔑 Επιλογή Α: Έλεγχος Ταυτότητας με SSH Key (Συνιστάται)

Χρησιμοποιεί κρυπτογραφία δημόσιου κλειδιού (συνιστάται: ed25519). Οι συνδέσεις SSH πιστοποιούνται μέσω τοπικών κρυπτογραφικών ιδιωτικών κλειδιών και παρακάμπτουν πλήρως το Web 2FA χωρίς συχνές προτροπές διαπιστευτηρίων.

ssh-keygen -t ed25519 -C "[email protected]"
🎫 Επιλογή Β: Personal Access Tokens (PAT)

Εάν η μεταφορά μέσω HTTPS είναι υποχρεωτική, μεταβείτε στις Settings ➔ Developer settings ➔ Personal access tokens για να δημιουργήσετε ένα token με τα κατάλληλα δικαιώματα (scoped token). Όταν σας ζητηθεί κωδικός πρόσβασης στο CLI, επικολλήστε το PAT αντί για τον κωδικό πρόσβασης του λογαριασμού σας.

Υπογραφή Commit μέσω SSH έναντι Ελέγχου Ταυτότητας: Σημειώστε ότι η χρήση ενός κλειδιού SSH για clone και push αποθετηρίων διαφέρει από την κρυπτογραφική υπογραφή των commits. Μπορείτε να χρησιμοποιήσετε το ίδιο ζεύγος κλειδιών Ed25519 για να υπογράφετε commits με τις εντολές git config commit.gpgsign true και git config gpg.format ssh, παράγοντας εμβλήματα επαληθευμένου συντάκτη (verified author badges) στο GitHub παράλληλα με τον αυστηρό έλεγχο πρόσβασης 2FA.

06

Ανάκαμψη από Καταστροφή: Ξεκλείδωμα Κλειδωμένων Λογαριασμών Χωρίς 2FA

Σε περίπτωση καταστροφικού σεναρίου όπου το τηλέφωνο 2FA έχει χαθεί και το έγγραφο recovery codes δεν είναι διαθέσιμο, το GitHub προσφέρει μια τελευταία κρυπτογραφική σανίδα σωτηρίας: Την Πρόκληση Υπογραφής Κλειδιού SSH (SSH Key Signature Challenge).

1
Έναρξη Αιτήματος Ξεκλειδώματος Λογαριασμού Στην προτροπή 2FA κατά τη σύνδεση, κάντε κλικ στο "Unable to verify via 2FA?" ➔ επιλέξτε "Use emergency recovery code" ➔ εάν δεν είναι διαθέσιμο, κάντε κλικ στο "Request two-factor authentication reset".
2
Επαλήθευση Κωδικού Μίας Χρήσης από το Email Ασφαλείας Το GitHub στέλνει έναν 6-ψήφιο κωδικό PIN επιβεβαίωσης στην κύρια επαληθευμένη διεύθυνση email σας. Εισαγάγετε τον κωδικό για να προχωρήσετε στην επαλήθευση ταυτότητας.
3
Εκτέλεση Τοπικής Πρόκλησης SSH Key στο Τερματικό Το GitHub δημιουργεί μια μοναδική πρόκληση (challenge nonce) και σας καθοδηγεί να την υπογράψετε χρησιμοποιώντας το τερματικό του τοπικού σταθμού εργασίας προγραμματιστή σας:
echo "UniqueChallengeString" | ssh-keygen -Y sign -n "github" -f ~/.ssh/id_ed25519
Επικολλήστε το παραγόμενο μπλοκ υπογραφής (armored signature block) πίσω στην πύλη web. Το GitHub επικυρώνει μαθηματικά ότι η υπογραφή αντιστοιχεί στο καταχωρημένο δημόσιο κλειδί SSH σας, αποδεικνύοντας οριστικά την κυριότητα του λογαριασμού και ξεκλειδώνοντας το προφίλ σας μετά από μια περίοδο επανεξέτασης.
🔒 Κρυπτογραφικό Sandbox στην Πλευρά του Πελάτη

Δοκιμάστε το GitHub TOTP Secret σας Τοπικά

Πριν δεσμευτείτε στη ρύθμιση, δοκιμάστε το ανεπεξέργαστο Base32 secret string σας στο 2FA-Tool. Όλοι οι κατακερματισμοί υπολογίζονται τοπικά μέσω του προγράμματος περιήγησης με το Web Crypto API, με μηδενική μετάδοση σε διακομιστή.

Άνοιγμα Online Γεννήτριας