- ફરજિયાત અમલીકરણ કાયમી છે: જે ડેવલપર્સ તેમની નિર્ધારિત સમયમર્યાદા સુધીમાં 2FA ગોઠવવામાં નિષ્ફળ જાય છે તેમને વેબ ક્રિયાઓ કરવાથી અવરોધિત કરવામાં આવે છે અને સંસ્થાના રિપોઝીટરીઝમાંથી રદ કરવામાં આવે છે.
- રિકવરી કોડ્સ તમારું જીવનરક્ષક કવચ છે: જનરેટ થયેલા 16 રિકવરી કોડ્સ સિંગલ-યુઝ (એક જ વાર વાપરી શકાય તેવા) છે. તેને તરત જ એન્ક્રિપ્ટેડ વૉલ્ટ અથવા ઑફલાઇન ભૌતિક કોલ્ડ પ્રિન્ટઆઉટમાં સાચવો.
- Git પાસવર્ડ્સ હવે કામ કરતા નથી: HTTPS Git પુશ ઇન્ટરેક્ટિવ 6-અંકના કોડ્સ સ્વીકારી શકતા નથી. તમારે SSH Keys અથવા સ્કોપ્ડ Personal Access Tokens (PATs) નો ઉપયોગ કરવો પડશે.
- ક્રિપ્ટોગ્રાફિક છેલ્લો ઉપાય: જો તમે તમારો ફોન અને કોડ્સ ગુમાવો છો, તો તમે તમારા અગાઉ નોંધાયેલા સ્થાનિક SSH પ્રાઇવેટ કી (private key) નો ઉપયોગ કરીને ઓળખ ચેલેન્જ પર હસ્તાક્ષર કરીને માલિકી સાબિત કરી શકો છો.
GitHub ની ફરજિયાત 2FA નીતિની ઝાંખી અને સુરક્ષા તર્ક
ઐતિહાસિક રીતે, ડેવલપરના લીક થયેલા ઓળખપત્રોએ સોફ્ટવેર સપ્લાય ચેઇનમાં વિનાશક સુરક્ષા નબળાઈઓ ઊભી કરી છે. હાઈ-પ્રોફાઈલ ઘટનાઓ—જેમ કે npm અને PyPI પર event-stream, ua-parser-js, ctx, અને colors.js પર કબજો—સાબિત કરે છે કે એક ચોરાયેલું એકાઉન્ટ પણ હજારો વ્યાવસાયિક પ્રોજેક્ટ્સ અને મહત્વપૂર્ણ ઇન્ફ્રાસ્ટ્રક્ચર સાથે ચેડાં કરી શકે છે.
હુમલાખોરો વૈશ્વિક ક્રેડેન્શિયલ-સ્ટફિંગ લિસ્ટ્સ, ફિશિંગ ઇન્ફ્રાસ્ટ્રક્ચર અને ટ્રોજનાઇઝ્ડ ડેવલપર ડિપેન્ડન્સીઝનો ઉપયોગ કરીને ઓળખપત્રો ચોરી લે છે. સોફ્ટવેર એન્જિનિયરો સામાન્ય રીતે સોર્સ કોડ અને CI/CD ડિપ્લોયમેન્ટ પાઇપલાઇન્સ પર રૂટ અથવા એડમિનિસ્ટ્રેટિવ ઍક્સેસ ધરાવતા હોવાથી, કોડ કમિટર્સને સુરક્ષિત રાખવું આંતરરાષ્ટ્રીય ઇન્ફ્રાસ્ટ્રક્ચર સુરક્ષાનો મુદ્દો બની ગયો છે.
આના જવાબમાં, GitHub એ એક મલ્ટિ-ફેઝ સાર્વત્રિક આદેશ સ્થાપિત કર્યો છે જેમાં તમામ કોડ કમિટર્સ, પેકેજ પ્રકાશકો, એન્ટરપ્રાઇઝ વપરાશકર્તાઓ અને સંસ્થાના સભ્યો માટે ટુ-ફેક્ટર ઓથેન્ટિકેશન ફરજિયાત કરવામાં આવ્યું છે:
- GitHub વેબ ઇન્ટરફેસ કેપ્ટિવ ગેટ મોડલમાં પ્રવેશ કરે છે, જ્યાં સુધી 2FA સેટઅપ પૂર્ણ ન થાય ત્યાં સુધી પુલ વિનંતીઓ (pull requests) ની સમીક્ષા, ઇશ્યુ પર ટિપ્પણી અને રિપોઝીટરી એડમિનિસ્ટ્રેશન કરવા પર પ્રતિબંધ મુકાય છે.
- 2FA લાગુ કરતી એન્ટરપ્રાઇઝ સંસ્થાઓ બિન-અનુપાલન સભ્યોને આપમેળે બહાર કાઢી નાખશે, લખવાની ઍક્સેસ (write access) તરત જ છીનવી લેશે અને રિપોઝીટરી વિશેષાધિકારો રદ કરશે.
- જ્યાં સુધી એકાઉન્ટ સુરક્ષા અનુપાલન પ્રમાણિત ન થાય ત્યાં સુધી સ્વચાલિત વર્કફ્લો પાઇપલાઇન્સ, npm પેકેજ પબ્લિશિંગ કીઝ અને રિપોઝીટરી પરવાનગીઓ ફ્રીઝ થઈ જાય છે.
પગલાંવાર ટ્યુટોરિયલ: TOTP પ્રમાણક પેરિંગ
જોકે GitHub SMS, મોબાઇલ સૂચનાઓ અને હાર્ડવેર કીને સપોર્ટ કરે છે, પરંતુ RFC 6238 TOTP Authenticator એપ (દા.ત. Google Authenticator, Bitwarden, 2FA-Tool) વેન્ડર-સ્વતંત્રતા અને ઑફલાઇન વિશ્વસનીયતા માટે સુવર્ણ માનકનું પ્રતિનિધિત્વ કરે છે:
પગલું 1: પ્રમાણીકરણ સેટિંગ્સ પર જાઓ
GitHub માં લૉગ ઇન કરો. ઉપરના જમણા ખૂણામાં તમારા પ્રોફાઇલ અવતાર પર ક્લિક કરો ➔ Settings. ડાબી નેવિગેશન સાઇડબારમાં "Access" હેઠળ, Password and authentication પસંદ કરો.
પગલું 2: QR કોડ સ્કેન કરો અને મૂળ Base32 સિક્રેટ સાચવો
GitHub એક ઓપ્ટિકલ QR કોડ સાથે એક ટેક્સ્ટ લિંક રજૂ કરે છે: "enter this text code instead".
A3J5N2O9...) કૉપિ કરો. તેને તમારા એન્ક્રિપ્ટેડ પાસવર્ડ મેનેજરમાં સુરક્ષિત રીતે સંગ્રહિત કરો. આ આલ્ફાન્યૂમેરિક સીડ તમને ફોન ખોવાઈ જવા કે ક્ષતિગ્રસ્ત થવાના સંજોગોમાં કોઈપણ ઉપકરણ પર ઓથેન્ટિકેશન ટોકન્સ ફરીથી જનરેટ કરવાની મંજૂરી આપે છે.
પગલું 3: પુષ્ટિ કરવા માટે 6-અંકનો કોડ દાખલ કરો
તમારા મોબાઇલ ઓથેન્ટિકેટર વડે કોડ સ્કેન કરો. તમારી સ્ક્રીન પર પ્રદર્શિત રોલિંગ 6-અંકનો નંબર GitHub ના વેરિફિકેશન ઇનપુટ ફીલ્ડમાં દાખલ કરો અને "Continue" પર ક્લિક કરો.
રિકવરી કોડ આર્કાઇવિંગ ધોરણો અને ક્રિપ્ટોગ્રાફિક સ્વચ્છતા
સફળ TOTP પેરિંગ પછી, GitHub તરત જ 16 હાઇફનેટેડ હેક્સાડેસિમલ ટોકન્સ (દા.ત. d4a2b-98f12) સાથેનું મોડલ પ્રદર્શિત કરે છે. કાયમી બેકઅપ લીધા વિના આ મોડલ બંધ કરવું એ ડેવલપર એકાઉન્ટ કાયમી લૉકઆઉટ થવાનું સૌથી મોટું અને સામાન્ય કારણ છે.
1. માત્ર એક જ વાર ઉપયોગ માટે (Single-Use Only): દરેક રિકવરી કોડ TOTP કોડના સ્થાને પ્રથમ વખત ઉપયોગમાં લેવાતા જ કાયમી ધોરણે અમાન્ય બની જાય છે.
2. મુખ્ય અધિકાર (Master Authority): રિકવરી કોડ ગુમ થયેલ હાર્ડવેરને બાયપાસ કરે છે અને તાત્કાલિક ખાતાની ઍક્સેસ આપે છે.
3. ઝીરો-નોલેજ સર્વર હેશિંગ: GitHub આ કોડ્સને અફર વન-વે ક્રિપ્ટોગ્રાફિક હેશ તરીકે સંગ્રહિત કરે છે. કોઈપણ સંજોગોમાં GitHub સપોર્ટ એન્જિનિયર્સ તમારા મૂળ કોડ્સ પુનઃપ્રાપ્ત અથવા વાંચી શકતા નથી!
ભલામણ કરેલ ત્રણ-સ્તરીય કોલ્ડ સ્ટોરેજ વ્યૂહરચના:
github-recovery-codes.txt ડાઉનલોડ કરો અને તેને Argon2id-આધારિત માસ્ટર કીનો ઉપયોગ કરીને 1Password, Bitwarden, અથવા KeePassXC માં તમારી GitHub એન્ટ્રી સાથે જોડો.
ટેક્સ્ટ ફાઇલને VeraCrypt-એન્ક્રિપ્ટેડ ઑફલાઇન USB ડ્રાઇવમાં સાચવો જેને સ્થાનિક નેટવર્ક્સ અને ક્લાઉડ સ્ટોરેજ સિંક્રોનાઇઝર્સથી ડિસ્કનેક્ટ રાખવામાં આવે છે.
ભૌતિક કાગળની નકલ પ્રિન્ટ કરો, તેને ભેજ સામે લેમિનેટ કરો અને રિમોટ ઇન્ફો-સ્ટીલર્સ માલવેર સામે રક્ષણ મેળવવા માટે તેને ભૌતિક હોમ લૉકબોક્સમાં સુરક્ષિત રાખો.
ફોલબેક પ્રમાણીકરણ પદ્ધતિઓ: SMS વિરુદ્ધ Passkeys વિરુદ્ધ GitHub Mobile
GitHub સેકન્ડરી ફોલબેક મિકેનિઝમ્સ ગોઠવવાની મંજૂરી આપે છે. વર્તમાન પ્રમાણીકરણ પદ્ધતિઓ પર અમારા સુરક્ષા વિશ્લેષણની સમીક્ષા કરો:
| પદ્ધતિ | ફિશિંગ પ્રતિકાર | SIM-Swap નબળાઈ | મૂલ્યાંકન અને વ્યવહારુ ઉપયોગ |
|---|---|---|---|
| Passkeys / FIDO2 Security Keys | સંપૂર્ણ (WebAuthn ઓરિજિન બાઈન્ડિંગ પ્રોક્સી ફિશિંગને અટકાવે છે) | સુરક્ષિત (ઇમ્યુન) | ⭐⭐⭐⭐⭐ ટોચની ભલામણ (YubiKey / Touch ID) |
| TOTP Authenticator App | મધ્યમ (રીઅલ-ટાઇમ રિવર્સ પ્રોક્સીઝ સામે સંવેદનશીલ) | સુરક્ષિત (ઇમ્યુન) | ⭐⭐⭐⭐ સાર્વત્રિક બેઝલાઇન (શૂન્ય કનેક્ટિવિટી નિર્ભરતા) |
| GitHub Mobile Push Approval | મધ્યમ (2-અંકના નંબર વેરિફિકેશન પ્રોમ્પ્ટની જરૂર છે) | સુરક્ષિત (ઇમ્યુન) | ⭐⭐⭐⭐ ઉત્તમ દૈનિક સુવિધા |
| SMS Verification Fallback | શૂન્ય (બિન-એન્ક્રિપ્ટેડ SS7 સિગ્નલિંગ, સરળતાથી અટકાવી શકાય છે) | ઉચ્ચ જોખમ | ⭐ હાઇ-પ્રોફાઇલ મેઇન્ટેનર્સ માટે ભલામણ કરેલ નથી |
ટર્મિનલ Git વર્કફ્લો: SSH કી, PAT અને 2FA ક્રિયાપ્રતિક્રિયા
2FA સક્રિયકરણ પછી, ડેવલપર્સને રૂટિન કોડ પુશ દરમિયાન વારંવાર ટર્મિનલ એરર્સનો સામનો કરવો પડે છે:
fatal: Authentication failed for 'https://github.com/username/repo.git/'
તકનીકી તર્ક: Git વાયર પ્રોટોકોલ ઇન્ટરેક્ટિવ 6-અંકના TOTP સંવાદોને હેન્ડલ કરી શકતો નથી. પરિણામે, જ્યારે 2FA સક્રિય હોય ત્યારે GitHub એ HTTPS Git વિનંતીઓ માટે મૂળ એકાઉન્ટ પાસવર્ડ પ્રમાણીકરણને કાયમી ધોરણે નિષ્ક્રિય કરી દીધું છે.
પબ્લિક-કી ક્રિપ્ટોગ્રાફીનો ઉપયોગ કરે છે (ભલામણ કરેલ: ed25519). SSH કનેક્શન્સ સ્થાનિક ક્રિપ્ટોગ્રાફિક પ્રાઇવેટ કી દ્વારા પ્રમાણિત થાય છે અને વારંવારના ઓળખપત્ર પ્રોમ્પ્ટ વિના વેબ 2FA ને સંપૂર્ણપણે બાયપાસ કરે છે.
જો HTTPS ટ્રાન્સપોર્ટ ફરજિયાત હોય, તો સ્કોપ્ડ ટોકન જનરેટ કરવા માટે Settings ➔ Developer settings ➔ Personal access tokens પર નેવિગેટ કરો. CLI માં પાસવર્ડ માટે પૂછવામાં આવે ત્યારે, તમારા એકાઉન્ટ પાસવર્ડને બદલે PAT પેસ્ટ કરો.
SSH કમિટ સાઇનિંગ વિરુદ્ધ ઓથેન્ટિકેશન: નોંધ લો કે રિપોઝીટરીઝ ક્લોન કરવા અને પુશ કરવા માટે SSH કીનો ઉપયોગ કરવો એ ક્રિપ્ટોગ્રાફિક કમિટ સાઇનિંગથી અલગ બાબત છે. તમે કમિટ્સ સાઇન કરવા માટે git config commit.gpgsign true અને git config gpg.format ssh સાથે સમાન Ed25519 કી પેરનો ઉપયોગ કરી શકો છો, જે કડક 2FA એક્સેસ કંટ્રોલની સાથે GitHub પર વેરિફાઇડ ઓથર બેજ પ્રદાન કરે છે.
આપત્તિ પુનઃપ્રાપ્તિ: 2FA વગર લૉક થયેલા ખાતા અનલૉક કરવા
વિનાશક પરિસ્થિતિની સ્થિતિમાં જ્યાં તમારો 2FA ફોન જતો રહ્યો હોય અને તમારો રિકવરી કોડ દસ્તાવેજ ખોવાઈ ગયો હોય, GitHub એક અંતિમ ક્રિપ્ટોગ્રાફિક જીવનરેખા પ્રદાન કરે છે: SSH કી સિગ્નેચર ચેલેન્જ (SSH Key Signature Challenge).
તમારા GitHub TOTP સિક્રેટનું સ્થાનિક સ્તરે પરીક્ષણ કરો
સેટઅપ અંતિમ કરતા પહેલા, 2FA-Tool માં તમારી રો Base32 સિક્રેટ સ્ટ્રિંગનું પરીક્ષણ કરો. શૂન્ય સર્વર ટ્રાન્સમિશન સાથે બ્રાઉઝર Web Crypto API દ્વારા તમામ હેશ સ્થાનિક રીતે ગણવામાં આવે છે.
📚 સંબંધિત સુરક્ષા માર્ગદર્શિકાઓ
ઓફલાઇન QR કોડ્સ અને ક્લાઉડ સિંકનો ઉપયોગ કરીને સ્માર્ટફોન પર 2FA એકાઉન્ટ્સ સુરક્ષિત રીતે ટ્રાન્સફર કરવા.
Google, Microsoft, Steam, Binance, Apple અને Discord પર ઍક્સેસ કેવી રીતે પુનઃપ્રાપ્ત કરવી.
RFC 4226 થી RFC 6238: ગાણિતિક હેશ ટ્રંકેશન, ડિસિંક્રોનાઇઝેશન અને વેબ સ્વીકૃતિ.