Controlul accesului utilizatorilor prin ssh, totul despre repararea și configurarea computerului

Dacă specificați explicit utilizatorii care vor putea să se conecteze prin SSH, ceilalți utilizatori nu vor putea să facă acest lucru.

De exemplu, parametrii AllowG roups vor limita numărul de utilizatori care au dreptul să se conecteze la sistem prin SSH cu grupurile specificate definite în fișierul / etc / group (Capitolul 7). Dacă acest parametru este definit și utilizatorul nu aparține nici unui grup permis, nu se poate conecta. Grupurile din listă trebuie separate prin spații:







AllowGroups webmaster roată dnsadmln

Dacă nu doriți să acordați acces la un întreg grup de utilizatori prin SSH, puteți utiliza parametrul Allowllsers pentru a defini o listă de utilizatori valide. Când se utilizează parametrul Allowllsers, toți ceilalți utilizatori care nu se află în listă sunt automat refuzați accesului.

Parametrul DenyGroups este opusul parametrului AllowGroups. Utilizatorii din grupurile de sistem listate aici nu se pot conecta. Grupurile specificate trebuie să fie grupurile lor principale, adică ele trebuie reprezentate în /etc/master.passwd și nu doar în / etc / group. Această restricție face ca parametrul DenyGroups să fie mai puțin util decât s-ar părea la prima vedere; pentru a obține efectul dorit, nu va fi suficient să definiți un grup nossh universal și pur și simplu să îi adăugați utilizatori, acest grup ar trebui să fie principalul pentru ei. O enumerare explicită a grupurilor valide oferă o politică de securitate mai utilă.

Cum afectează aceste setări drepturile de acces ale unui utilizator care se află în mai multe grupuri? De exemplu, utilizatorul aparține grupului care apare în lista AllowGroups și grupului din lista DenyGroups. Ce se va întâmpla în acest caz? Demonul SSH verifică valorile acestor parametri în ordinea următoare: Denyllsers, Allowllsers, DenyGroups și Allow-Groups. Primul meci este luat în considerare. Să presupunem că sunt membru al grupului de roți, iar fragmentul următor este prezent în fișierul sshd_config:

DenyUsers: mwlucas AllowGroups: roată

Nu pot intra în acest sistem prin SSH, deoarece valoarea parametrului DenyUsers este verificată la valoarea parametrului AllowGroups.

Desigur, clientul SSH este deja prezent în FreeBSD, la fel ca în majoritatea sistemelor de operare asemănătoare UNIX. Dacă este posibil, încercați să utilizați clientul SSH încorporat, deoarece face parte din pachetul OpenSSH dezvoltat de echipa OpenBSD și este nu numai cea mai populară, dar și cea mai bună implementare. Dacă sunteți forțat să utilizați sistemul de operare Microsoft Windows, vă recomandăm programul PuTTY, care poate fi folosit gratuit pentru scopuri comerciale și non-comerciale și este un emulator terminal excelent.

Această carte este dedicată FreeBSD, astfel încât toată atenția va fi acordată clientului OpenSSH în acest sistem de operare. Puteți configura clientul într-o varietate de moduri, dar în majoritatea cazurilor setările se limitează la interzicerea utilizării funcțiilor oferite de server. Dacă sunteți cu adevărat interesat în configurarea comportamentului clientului, citiți manualul de la ssh_config (5).







Pentru a vă conecta la o altă gazdă prin SSH, trebuie să introduceți comanda hostname ssh. Ca răspuns, ar trebui să vedeți ceva de genul:

Autenticitatea gazdei "sardines.blackhelicopters.org (192.168.1.1)" nu poate fi stabilită.

Densajul cheie DSA este a4: df: 7c: 7e: Oe: 27: e5: 21: b4: f4: Oe: 2b: c9: 10: 5f: ea.

Sigur doriți să continuați conectarea (da / nu) 9 da

(Traducere: autenticitatea gazdei sardines.blackhelicopters.org (192.168.1.1) '

nu pot fi instalate.

Cheia DSA este a4: df: 7c: 7e: 0e: 27: e5: 21: b4: f4: 0e: 2b: c9: 10: 5f: ea. Chiar doriți să continuați conexiunea (da / nu) 9)

Clientul primește imediat cheia publică a gazdei la care se face conexiunea și reconciliază cu lista sa internă de taste SSH. Dacă cheia primită de la server este prezentă în lista de clienți, clientul presupune că conexiunea este stabilită cu gazda autentică. Dacă cheia gazdă nu se află în lista de clienți, aceasta emite amprenta cheii pentru a o putea aproba sau respinge.

Tiparul trimis de client trebuie să se potrivească imprimării generate pe server. Dacă imprimantele nu se potrivesc, atunci v-ați conectat la o gazdă greșită și trebuie să deconectați imediat conexiunea. Dacă imprimantele se potrivesc, puteți accepta cheia și continuați conexiunea. După ce confirmați dorința dvs. de a continua, cheia gazdă va fi stocată în directorul dvs. de acasă din listă, ssh / known_hosts.

Dacă creați un server nou în rețeaua locală pentru uz personal, este posibil să nu aveți nevoie să comparați amprentele digitale manual. Cu toate acestea, trebuie să copiați amprenta cheie, deoarece uneori este posibil să fie necesar să vă conectați dintr-o altă locație și să verificați cheia. Dacă o mulțime de utilizatori se conectează la server, nu este absolut necesar să plasați o imprimare pe pagina web. Dvs. stabiliți ce nivel de securitate doriți. Personal, cred că există un exces mai bun de precauție decât lipsa ei.

Clientul SSH este bun pentru a accesa linia de comandă, dar despre mutarea fișierelor de la un sistem la altul? SSH include două instrumente pentru mutarea fișierelor pe rețea - scp (l) și sftp (l).

Dacă fișierul este copiat cu același nume, numele fișierului din al doilea argument poate fi omis:

# scp bookbackup.tgz [email protected]:

În plus, scp (l) vă permite să copiați fișiere dintr-un sistem la distanță într-unul local:

Dacă copia fișierului din sistemul local trebuie să aibă același nume, numele copiei din comandă poate fi înlocuit cu un simbol punct:

În cele din urmă, dacă numele utilizatorilor de pe sistemul la distanță și sistemele locale se potrivesc, puteți omite numele de utilizator și simbolul. De exemplu, pot copia fișierul meu pe server folosind comanda:

# scp bookbackup.tgz bewilderbeast.blackhelicopters.org:

În ciuda complexității aparente, această comandă este foarte convenabilă pentru mutarea rapidă a fișierelor individuale prin rețea.

Dacă preferați sisteme interactive sau când numele exact al fișierului pe care doriți să îl copiați dintr-un sistem la distanță nu este cunoscut în prealabil, sftp (l) va veni la salvare. Comanda sftp (l) acceptă un singur argument, format din numele de utilizator și numele serverului, în formatul utilizat de comanda scp pentru a indica serverul de la distanță:

Conectarea la bewilderbeast ... Parola: sftp> Este

Interfața sftp (l) este foarte asemănătoare cu clientul standard FTP; Acesta acceptă comenzi tipice FTP, cum ar fi Is (listă), cd (schimbare director), obține (descărcați un fișier) și pune (încărcați un fișier pe server). Una dintre diferențele semnificative este că sftp (l) nu trebuie să aleagă tipul de fișiere ce trebuie transferate - ASCII sau binar; fișierele sunt pur și simplu transferate în forma în care sunt.

OpenSSH protejează toate

Multe programe de rețea includ suport pentru SSH pentru a asigura interoperabilitatea. În plus, OpenSSH poate crea tuneluri între porturile TCP ale diferitelor mașini. Cu OpenSSH, vă puteți asigura că orice date sunt transmise prin rețea numai într-o formă criptată.

Folosind comenzile scp și sftp, puteți elimina complet parolele din rețea într-o formă de text deschis.

Link-uri utile:







Articole similare

Trimiteți-le prietenilor: