OpenSSH (Deschideți Secure Shell) este un set de aplicații care permit comunicații criptate pe o rețea, utilizând protocol SSH. A fost creat ca o alternativă gratuită și deschisă la program Secure Shell, care este software proprietar. « Wikipedia.
Unii utilizatori pot crede că bunele practici ar trebui aplicate numai pe servere și acest lucru nu este cazul. Multe distribuții GNU / Linux includ OpenSSH în mod implicit și există câteva lucruri de reținut.
Securitate
Acestea sunt cele mai importante 6 puncte de care trebuie să ții cont atunci când configurezi SSH:
- Folosiți o parolă puternică.
- Schimbați portul implicit al SSH.
- Folosiți întotdeauna versiunea 2 a protocolului SSH.
- Dezactivați accesul root.
- Limitați accesul utilizatorilor.
- Folosiți autentificarea cheii.
- Alte opțiuni
O parolă puternică
O parolă bună este una care conține caractere alfanumerice sau speciale, spații, litere mari și mici... etc. Aici în DesdeLinux Am arătat mai multe metode de a genera parole bune. Se poate vizita acest articol y aceasta alta.
Schimbați portul implicit
Portul implicit pentru SSH este 22. Pentru a-l modifica, tot ce trebuie să facem este să edităm fișierul / Etc / ssh / sshd_config. Căutăm linia care spune:
#Port 22
îl decomentăm și schimbăm 22 pentru un alt număr .. de exemplu:
Port 7022
Pentru a cunoaște porturile pe care nu le folosim în computerul / serverul nostru, le putem executa în terminal:
$ netstat -ntap
Acum pentru a accesa computerul sau serverul nostru trebuie să o facem cu opțiunea -p după cum urmează:
$ ssh -p 7022 usuario@servidor
Utilizați Protocolul 2
Pentru a ne asigura că utilizăm versiunea 2 a protocolului SSH, trebuie să edităm fișierul / Etc / ssh / sshd_config și căutați linia care spune:
# Protocolul 2
Îl decomentăm și repornim serviciul SSH.
Nu permiteți accesul ca root
Pentru a împiedica utilizatorul root să poată accesa de la distanță prin SSH, căutăm în fișier/ Etc / ssh / sshd_config linia:
#PermitRootLogin no
și o descomentăm. Cred că merită clarificat faptul că, înainte de a face acest lucru, trebuie să ne asigurăm că utilizatorul nostru are permisiunile necesare pentru a efectua sarcini administrative.
Limitați accesul utilizatorilor
De asemenea, nu este rău să permitem accesul prin SSH numai anumitor utilizatori de încredere, așa că ne întoarcem la fișier / Etc / ssh / sshd_config și adăugăm linia:
AllowUsers elav usemoslinux kzkggaara
În mod evident, utilizatorii elav, usemoslinux și kzkggaara sunt cei care vor putea accesa.
Folosiți autentificarea cheii
Deși această metodă este cea mai recomandată, trebuie să avem o grijă deosebită, deoarece vom accesa serverul fără a introduce parola. Aceasta înseamnă că, dacă un utilizator reușește să intre în sesiunea noastră sau computerul nostru este furat, putem avea probleme. Cu toate acestea, să vedem cum să o facem.
Primul lucru este să creați o pereche de chei (publice și private):
ssh-keygen -t rsa -b 4096
Apoi trecem cheia către computer / server:
ssh-copy-id -i ~/.ssh/id_rsa.pub elav@200.8.200.7
În cele din urmă, trebuie să avem un comentariu, în fișier / Etc / ssh / sshd_config linia:
AuthorizedKeysFile .ssh/authorized_keys
Alte opțiuni
Putem reduce timpul de așteptare în care un utilizator se poate conecta cu succes la sistem la 30 de secunde
LoginGraceTime 30
Pentru a evita atacurile ssh prin TCP Spoofing, lăsând partea ssh criptată în viață pentru maximum 3 minute, putem activa aceste 3 opțiuni.
TCPKeepAlive nu ClientAliveInterval 60 ClientAliveCountMax 3
Dezactivați utilizarea fișierelor rhosts sau shosts, care din motive de securitate sunt îndemnate să nu fie utilizate.
IgnoreRhosts da IgnoreUserKnownHosts da RhostsAuthentication nu RhostsRSAAuthentication nu
Verificați permisiunile efective ale utilizatorului în timpul conectării.
StrictModes yes
Activați separarea privilegiilor.
UsePrivilegeSeparation yes
concluzii:
Făcând acești pași putem adăuga o securitate suplimentară computerelor și serverelor noastre, dar nu trebuie să uităm niciodată că există un factor important: ce este între scaun și tastatură. De aceea recomand să citesc acest articol.
Fuente: CumToForge
Excelent post @elav și adaug câteva lucruri interesante:
LoginGraceTime 30
Acest lucru ne permite să reducem timpul de așteptare în care un utilizator se poate conecta cu succes la sistem la 30 de secunde
TCPKeepAlive nr
Intervalul ClientAlive 60
ClientAliveCountMax 3
Aceste trei opțiuni sunt destul de utile pentru a evita atacurile ssh prin intermediul TCP Spoofing, lăsând criptat în viață pe partea ssh activ timp de maxim 3 minute.
IgnoreRhosts da
IgnoreUserKnownHosts da
RhostsAuthentication nr
RhostsRSAAuthentication nr
Dezactivează utilizarea fișierelor rhosts sau shosts, care din motive de securitate sunt îndemnate să nu fie utilizate.
StrictModes da
Această opțiune este utilizată pentru a verifica permisiunile efective ale utilizatorului în timpul conectării.
UsePrivilegeSeparation da
Activați separarea privilegiilor.
Ei bine, peste un timp voi edita postarea și o voi adăuga la postare 😀
Descomentarea pentru a nu schimba linia este redundantă. Liniile comentate arată valoarea implicită a fiecărei opțiuni (citiți clarificarea de la începutul fișierului). Accesul la rădăcină este dezactivat în mod implicit etc. Prin urmare, necomentarea nu are absolut niciun efect.
Da, dar, de exemplu, de unde știm că folosim doar versiunea 2 a protocolului? Pentru că am putea folosi 1 și 2 în același timp. După cum spune ultima linie, de exemplu, necomentând această opțiune, suprascrie opțiunea implicită. Dacă folosim în mod implicit versiunea 2, bine, dacă nu, atunci o vom folosi DA sau DA 😀
Mulțumesc pentru comentariu
Articol foarte bun, știam mai multe lucruri, dar un lucru care nu îmi este niciodată clar este utilizarea tastelor, cu adevărat care sunt acestea și ce avantaje are, dacă folosesc tastele pot folosi parole ?? Dacă da, de ce crește securitatea și dacă nu, cum îl pot accesa de pe alt computer?
Salutări, am instalat debian 8.1 și nu mă pot conecta de pe PC-ul meu Windows la debian cu WINSCP, va trebui să folosesc protocolul 1? orice ajutor .. mulțumesc
pa
S-ar putea să vă intereseze acest videoclip despre openssh https://m.youtube.com/watch?v=uyMb8uq6L54
Vreau să încerc câteva lucruri aici, câteva le-am încercat deja datorită Arch Wiki, altele din cauza lenei sau lipsei de cunoștințe. Îl voi păstra pentru când îmi încep RPi