Un disc de rezervă de la un laptop vechi conține încă o cheie privată SSH, iar cineva întreabă dacă VPN-ul o protejează. Nu o protejează și nu a făcut-o niciodată. VPN-ul protejează o cale între două rețele; fraza de acces protejează fișierul; agentul protejează o sesiune în curs. Trei mecanisme diferite, trei moduri de eșec diferite, iar o copie furată se interesează doar de primele două.

Frază de acces aparține fișierului

Frază de acces a unei chei SSH criptează materialul cheii private în repaus. Nu este parola contului trimisă la server și nu este acreditarea folosită pentru a intra în VPN. Confundarea lor duce la modificări care nu tratează expunerea.

Manualul ssh-keygen al OpenSSH acoperă gestionarea frazelor de acces, inclusiv comutatorul -p care setează o frază nouă pe o cheie care există deja.

Pentru o cheie existentă forma comenzii este simplă și rescrie fișierul:

ssh-keygen -p -f ~/.ssh/id_ed25519

Folosiți procesul de întreținere și recuperare aprobat de proprietarul cheii, pentru că aceasta este o scriere, nu o inspecție. Nu publicați fișierul privat și nu puneți o frază de acces reală pe o linie de comandă partajată. Schimbarea frazei de acces nu recriptează o copie luată anterior. Notați locația copiei vechi în tichet, ca proprietarul să decidă dacă o distruge.

O copie supraviețuiește laptopului și tunelului

Odată ce un fișier de cheie a fost copiat, conexiunea VPN activă a laptopului nu mai spune nimic despre el. Ce contează este cât de bine este protejat fișierul în sine, și care servere mai au încredere în cheia publică corespunzătoare.

Schimbarea frazei de acces la fișierul curent nu atinge copia și nu elimină aceeași cheie publică din authorized_keys pe un server. Revocarea și recriptarea sunt acțiuni separate.

Așadar tratați o cheie privată scursă ca un eveniment de identitate, nu de rețea. Eliminați sau înlocuiți cheia acceptată prin serverele și procesul de înregistrare care o dețin. Oprirea VPN-ului limitează o rută într-un moment; nu este o revocare.

Deblocarea mută secretul într-un agent

Un agent păstrează identități decriptate pentru autentificare ulterioară, astfel încât utilizatorul să nu rescrie fraza de acces la fiecare conexiune. Este o facilitate cu propria limită de securitate.

ssh-agent poate limita cât timp o identitate rămâne încărcată prin opțiunea -t, iar o setare pentru o singură identitate poate depăși această limită. Alegeți politica pentru agentul pe care îl rulați efectiv, în loc să presupuneți că deconectarea VPN uită fiecare cheie încărcată.

Un proces compromis după deblocarea cheii este o problemă diferită de un fișier criptat furat. Trimiterea agentului către alt host deleagă capacitatea de autentificare fără a copia fișierul cheii, așa că activați-o doar pentru o nevoie aprobată.

Enumerați ce deține agentul acum, înainte și după o modificare:

ssh-add -l

Sarcinile nesupravegheate au nevoie de propriul plan

O sarcină programată nu poate răspunde la o solicitare. Are nevoie de o soluție aprobată pentru acreditările de mașină, iar păstrarea secretului de deblocare în același director cu cheia, lizibil de același cont, nu creează o a doua limită.

Lucrați cu proprietarul serviciului la livrarea de secrete acceptată sau la operarea bazată pe hardware și acoperiți reînnoirea, eșecul și recuperarea. Dorința de a avea o persoană la tastatură schimbă aspectul eșecului în comparație cu un host care pornește fără ca nimeni să supravegheze.

Păstrați și verificarea identității hostului pe server și restricțiile contului acestuia. O rută VPN vă oferă o cale privată; nu demonstrează că fiecare ascultător SSH pe care îl atingeți este hostul dorit. Înregistrați ascultătorul și amprenta cheii hostului în același inventar ca cheia în sine.

Verificați limitele separat

Testați fiecare limită cu propria întrebare. Se deschide fișierul fără frază de acces? Agentul mai păstrează identitatea după o deconectare? Serverul mai acceptă cheia publică?

Două comenzi răspund la prima și la a treia:

ssh-keygen -y -f ~/.ssh/id_ed25519
ssh -v [email protected]

Înregistrați protecția fișierului, utilizarea permisă a cheii și eliminarea pe partea serverului ca trei linii separate. Un tunel, o frază de acces și un agent păzesc fiecare o parte diferită a relației, iar doar unul dintre ele privește rețeaua.

Articole similare