SSH-AGENT(1)

NUME
ssh-agent - Agentul de autentificare OpenSSH

SINOPSIS
ssh-agent [-c | -s] [-DdTU] [-a adresă-asociere] [-E hash-fingerprint] [-O opțiune] [-P furnizori-permiși] [-t durată-viață] ssh-agent [-TU] [-a adresă-asociere] [-E hash-fingerprint] [-O opțiune] [-P furnizori-permiși] [-t durată-viață] comandă [arg ...] ssh-agent [-c | -s] -k ssh-agent -u

DESCRIERE
ssh-agent este un program pentru păstrarea cheilor private utilizate pentru autentificarea cu cheie publică. Prin utilizarea variabilelor de mediu, agentul poate fi localizat și utilizat automat pentru autentificare atunci când se conectează la alte mașini folosind ssh(1).

Opțiunile sunt următoarele:

-a adresă-asociere
    Asociază agentul la soclul UNIX-domain adresă-asociere. Implicit, se creează un soclu într-o rută aleatorie care corespunde $HOME/.ssh/agent/s.*.

-c  Generează comenzi C-shell la ieșirea standard. Aceasta este opțiunea implicită dacă SHELL pare a fi un shell de tip csh.

-D  Modul de prim-plan. Atunci când este specificată această opțiune, ssh-agent nu se bifurcă.

-d  Modul de depanare. Atunci când este specificată această opțiune, ssh-agent nu va crea o bifurcare și va scrie informații de depanare la ieșirea de eroare standard.

-E hash-fingerprint
    Specifică algoritmul sumei de control utilizat la afișarea amprentelor cheilor. Opțiunile valide sunt: “md5” și “sha256”. Opțiunea implicită este “sha256”.

-k  Omoară agentul curent (dat de variabila de mediu SSH_AGENT_PID).

-O opțiune
    Specifică o opțiune la pornirea ssh-agent. Opțiunile acceptate sunt: allow-remote-pkcs11, no-restrict-websafe and websafe-allow.

    Opțiunea allow-remote-pkcs11 permite clienților unui ssh-agent transmis să încarce bibliotecile furnizorului PKCS#11 sau FIDO. În mod implicit, numai clienții locali pot efectua această operație. Rețineți că semnalizarea faptului că un client ssh-agent este la distanță este efectuată de ssh(1), iar utilizarea altor instrumente pentru a transmite accesul la soclul agentului poate eluda această restricție.

    Opțiunea no-restrict-websafe instruiește ssh-agent să permită semnăturile care utilizează chei FIDO care ar putea fi cereri de autentificare web. În mod implicit, ssh-agent refuză cererile de semnătură pentru chei FIDO în cazul în care șirul de cerere a cheii nu începe cu “ssh:” și atunci când datele care urmează să fie semnate nu par a fi o cerere de autentificare a utilizatorului ssh(1) sau o semnătură ssh-keygen(1). Comportamentul implicit împiedică ca accesul transmis la o cheie FIDO să transmită implicit și capacitatea de a se autentifica pe situri web.

    Alternativ, opțiunea websafe-allow permite specificarea unei liste de șiruri de aplicații cheie pentru a înlocui lista implicită de aplicații permise, de exemplu: “websafe-allow=ssh:*,example.org,*.example.com”

    Consultați MODELE în ssh_config(5) pentru o descriere a sintaxei listei de modele.

-P furnizori-permiși
    Specifică o listă de rute acceptabile pentru bibliotecile partajate ale furnizorului PKCS#11 și ale mijlocitorului autentificator FIDO care pot fi utilizate cu opțiunile -S sau -s pentru ssh-add(1). Bibliotecile care nu corespund listei de modele vor fi refuzate.Lista implicită este “/usr/lib*/*,/usr/local/lib*/*”.

    Consultați MODELE în ssh_config(5) pentru o descriere a sintaxei listei de modele.

-s  Generează comenzi Bourne shell la ieșirea standard. Aceasta este opțiunea implicită dacă SHELL nu pare a fi un shell de tip csh.

-T  Leagă soclul agentului la un subdirector aleatoriu de forma $TMPDIR/ssh-XXXXXXXXXX/agent.<ppid>, în loc de comportamentul implicit de utilizare a unui nume aleatoriu care corespunde cu $HOME/.ssh/agent/s.*.

-t durata-de-viață
    Stabilește o valoare implicită pentru durata maximă de viață a identităților adăugate la agent. Durata de viață poate fi specificată în secunde sau într-un format de timp specificat în sshd_config(5). O durată de viață specificată pentru o identitate cu ssh-add(1) anulează această valoare. Fără această opțiune, durata de viață maximă implicită este „forever” (pentru totdeauna).

-U  Îi indică lui ssh-agent să nu curețe soclurile agentului vechi din $HOME/.ssh/agent/.

-u  Îi indică lui ssh-agent să curețe numai soclurile agentului vechi din $HOME/.ssh/agent/ și apoi să iasă imediat. Dacă această opțiune este specificată de două ori, ssh-agent va șterge soclurile agentului vechi, indiferent de numele gazdei care le-a creat.

comandă [arg ...]
    Dacă se dă o comandă (și argumente opționale), aceasta este executată ca un subproces al agentului. Agentul iese automat atunci când se termină comanda dată în linia de comandă.

Există trei modalități principale de a înființa un agent. Prima este la începutul unei sesiuni X, unde toate celelalte ferestre sau programe sunt pornite ca fiind copii ai programului ssh-agent. Agentul pornește o comandă sub care sunt exportate variabilele sale de mediu, de exemplu ssh-agent xterm &. Când comanda se termină, se termină și agentul.

A doua metodă este utilizată pentru o sesiune de conectare. Atunci când ssh-agent este pornit, acesta imprimă comenzile de shell necesare pentru a stabili variabilele de mediu, care, la rândul lor, pot fi evaluate în shell-ul apelant, de exemplu eval `ssh-agent -s`.

În amândouă dintre aceste cazuri, ssh(1) consultă aceste variabile de mediu și le utilizează pentru a stabili o conexiune cu agentul.

A treia modalitate de a rula ssh-agent este prin activarea soclului de la un proces de supervizare, cum ar fi systemd. În acest mod, procesul de supraveghere creează soclul de ascultare și este responsabil pentru pornirea ssh-agent după cum este necesar și, de asemenea, pentru comunicarea locației soclului de ascultare către alte programe din sesiunea utilizatorului. Activarea soclului este utilizată atunci când ssh-agent este pornit cu unul dintre fanioanele -d sau -D, nicio adresă de ascultare a soclului nu este specificată prin fanionul -a și ambele variabile de mediu LISTEN_FDS și LISTEN_PID sunt furnizate corect de procesul de supraveghere.

Inițial, agentul nu are nicio cheie privată. Cheile sunt adăugate folosind ssh-add(1) sau prin ssh(1) atunci când AddKeysToAgent este definit în ssh_config(5). În ssh-agent pot fi stocate simultan mai multe identități, iar ssh(1) le va utiliza automat dacă sunt prezente. ssh-add(1) se utilizează, de asemenea, pentru a elimina chei din ssh-agent și pentru a interoga cheile care sunt păstrate în una dintre ele.

Conexiunile către ssh-agent pot fi redirecționate de la alte gazde la distanță folosind opțiunea -A către ssh(1) (a se vedea însă avertismentele documentate în acest sens), evitându-se astfel necesitatea stocării datelor de autentificare pe alte mașini. Frazele de autentificare și cheile private nu trec niciodată prin rețea: conexiunea cu agentul este redirecționată prin conexiuni la distanță SSH, iar rezultatul este returnat solicitantului, permițând utilizatorului accesul la identitățile sale oriunde în rețea într-un mod sigur.

ssh-agent va șterge toate cheile pe care le-a încărcat la primirea SIGUSR1.

MEDIU

SSH_AGENT_PID
    La pornire, ssh-agent stochează numele ID-ului de proces al agentului (PID) în această variabilă.

SSH_AUTH_SOCK
    Când ssh-agent pornește, acesta creează un soclu UNIX-domain și stochează numele de acces în această variabilă. Aceasta este accesibilă numai utilizatorului curent, dar este ușor de abuzat de root sau de o altă instanță a aceluiași utilizator.

În Debian, ssh-agent este instalat cu bitul set-group-id activat, pentru a preveni atacurile ptrace(2) care recuperează materialul cheii private. Acest lucru are efectul secundar de a determina editorul de legături în timpul execuției să elimine anumite variabile de mediu care ar putea avea implicații de securitate pentru programele set-id, inclusiv LD_PRELOAD, LD_LIBRARY_PATH și TMPDIR. Dacă trebuie să stabiliți oricare dintre aceste variabile de mediu, va trebui să faceți acest lucru în programul executat de ssh-agent.

FIȘIERE

$HOME/.ssh/agent/s.*
    Socluri UNIX-domain utilizate pentru a conține conexiunea cu agentul de autentificare. Aceste socluri trebuie să poată fi citite numai de către proprietar. Soclurile trebuie să fie eliminate automat la ieșirea agentului.

CONSULTAȚI ȘI
ssh(1), ssh-add(1), ssh-keygen(1), ssh_config(5), sshd(8)

AUTORI
-nosplit OpenSSH este un derivat al versiunii originale și libere ssh 1.2.12 de Tatu Ylonen. Aaron Campbell, Bob Beck, Markus Friedl, Niels Provos, Theo de Raadt și Dug Song au eliminat multe erori, au (re)adăugat caracteristici mai noi și au creat OpenSSH. Markus Friedl a contribuit la suportul pentru versiunile 1.5 și 2.0 ale protocolului SSH.

TRADUCERE
Traducerea în limba română a acestui manual a fost făcută de Remus-Gabriel Chelu <remusgabriel.chelu@disroot.org>

Această traducere este documentație gratuită; citiți Licența publică generală GNU Versiunea 3: https://www.gnu.org/licenses/gpl-3.0.html sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă NICIO RESPONSABILITATE.

Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la translation-team-ro@lists.sourceforge.net.