OpenSSH (Otvorite sigurnu ljusku) je skup aplikacija koje omogućuju šifriranu komunikaciju putem mreže pomoću protokol SSH. Stvoren je kao besplatna i otvorena alternativa programu Secure Shell, koji je vlasnički softver. « Wikipedija.
Neki korisnici mogu pomisliti da bi se dobre prakse trebali primjenjivati samo na poslužiteljima, a to nije slučaj. Mnoge GNU / Linux distribucije prema zadanim postavkama uključuju OpenSSH, a ima nekoliko stvari koje morate imati na umu.
sigurnosti
Ovo je 6 najvažnijih točaka koje morate imati na umu prilikom konfiguriranja SSH-a:
- Koristite snažnu lozinku.
- Promijenite zadani port SSH.
- Uvijek koristite verziju 2 SSH protokola.
- Onemogući root pristup.
- Ograničite pristup korisniku.
- Koristite provjeru autentičnosti ključa.
- Ostale opcije
Snažna lozinka
Un buen password es aquel que contiene caracteres alfanuméricos o especiales, espacios, mayúsculas y minúsculas… etc. Acá en DesdeLinux hemos mostrado varios métodos para generar buenas contraseñas. Pueden visitar ovaj članak y ovo drugo.
Promijenite zadani port
Zadani priključak za SSH je 22. Da bismo ga promijenili, dovoljno je urediti datoteku / Etc / ssh / sshd_config. Tražimo redak koji kaže:
#Port 22
mi ga komentiramo i mijenjamo 22 za drugi broj .. na primjer:
Port 7022
Da bismo znali portove koje ne koristimo na računalu / poslužitelju, možemo izvršiti u terminalu:
$ netstat -ntap
Da bismo pristupili računalu ili poslužitelju, moramo to učiniti s opcijom -p kako slijedi:
$ ssh -p 7022 usuario@servidor
Koristite protokol 2
Da bismo bili sigurni da koristimo verziju 2 SSH protokola, moramo urediti datoteku / Etc / ssh / sshd_config i potražite redak koji kaže:
# Protokol 2
Komentiramo ga i ponovno pokrećemo SSH uslugu.
Ne dozvoli pristup kao root
Da bismo spriječili root korisnika da može daljinski pristupiti putem SSH-a, pogledamo u datoteku/ Etc / ssh / sshd_config crta:
#PermitRootLogin no
i mi to komentiramo. Mislim da je vrijedno pojasniti da prije nego što to učinimo moramo osigurati da naš korisnik ima potrebna dopuštenja za obavljanje administrativnih zadataka.
Ograničite pristup korisnicima
Također ne škodi dopuštanje pristupa putem SSH-a samo određenim pouzdanim korisnicima, pa se vraćamo u datoteku / Etc / ssh / sshd_config i dodajemo redak:
AllowUsers elav usemoslinux kzkggaara
Gdje su očito korisnici elav, usemoslinux i kzkggaara oni koji će moći pristupiti.
Koristite provjeru autentičnosti ključa
Iako se ova metoda najviše preporučuje, moramo biti posebno oprezni jer ćemo poslužitelju pristupiti bez unosa lozinke. To znači da ako korisnik uspije ući u našu sesiju ili nam je računalo ukradeno, možemo imati problema. Međutim, da vidimo kako to učiniti.
Prva stvar je stvoriti par ključeva (javnih i privatnih):
ssh-keygen -t rsa -b 4096
Zatim svoj ključ prosljeđujemo računalu / poslužitelju:
ssh-copy-id -i ~/.ssh/id_rsa.pub elav@200.8.200.7
Napokon, u datoteci moramo imati nekomentirano / Etc / ssh / sshd_config crta:
AuthorizedKeysFile .ssh/authorized_keys
Ostale opcije
Vrijeme čekanja u kojem se korisnik može uspješno prijaviti u sustav možemo smanjiti na 30 sekundi
LoginGraceTime 30
Da bismo izbjegli ssh napade putem TCP lažiranja, ostavljajući šifrirano živo na ssh strani aktivno najviše 3 minute, možemo aktivirati ove 3 opcije.
TCPKeepAlive no ClientAliveInterval 60 ClientAliveCountMax 3
Onemogućite upotrebu datoteka s rhosts ili shosts, koje se iz sigurnosnih razloga podstiču da se ne koriste.
IgnoreRhosts da IgnoreUserKnownHosts da RhostsAuthentication ne RhostsRSAAuthentication ne
Provjerite učinkovita dopuštenja korisnika tijekom prijave.
StrictModes yes
Omogućiti razdvajanje privilegija.
UsePrivilegeSeparation yes
zaključci:
Radeći ove korake možemo dodati dodatnu sigurnost našim računalima i poslužiteljima, ali nikada ne smijemo zaboraviti da postoji važan čimbenik: što je između stolice i tipkovnice. Zato preporučujem čitanje ovaj članak.
izvor: KakoKovati
Izvrsan post @elav i dodajem neke zanimljivosti:
PrijavaGraceTime 30
To nam omogućuje da smanjimo vrijeme čekanja u kojem se korisnik može uspješno prijaviti u sustav na 30 sekundi
TCPKeepAlive br
Interval ClientAlive 60
ClientAliveCountMax 3
Ove su tri opcije vrlo korisne za izbjegavanje ssh napada pomoću TCP lažiranja, ostavljajući šifrirano živo na strani ssh aktivno najviše 3 minute.
IgnoreRhosts da
IgnoreUserKnownHosts da
RhostsAuthentication br
RhostsRSAAuthentication br
Onemogućuje upotrebu datoteka s rhostima ili shostsima, za koje se iz sigurnosnih razloga traži da se ne koriste.
StrictModes da
Ova se opcija koristi za provjeru stvarnih dozvola korisnika tijekom prijave.
UsePrivilegeSeparation da
Omogućiti razdvajanje privilegija.
Pa, za neko vrijeme uredit ću post i dodati ga u post 😀
Nekomentiranje kako se linija ne bi promijenilo suvišno je. Komentirani redovi prikazuju zadanu vrijednost svake opcije (pročitajte pojašnjenje na početku same datoteke). Pristup root-u onemogućen je prema zadanim postavkama itd. Stoga njegovo komentiranje nema apsolutno nikakvog učinka.
Da, ali na primjer, kako znamo da koristimo samo verziju 2 protokola? Jer bismo mogli istodobno koristiti 1 i 2. Kao što kaže posljednji redak, ako na primjer komentirate ovu opciju, prepisuje se zadana opcija. Ako prema zadanim postavkama koristimo verziju 2, u redu, ako ne, koristimo je DA ili DA 😀
Hvala na komentaru
Vrlo dobar članak, znao sam nekoliko stvari, ali jedna stvar koja mi nikad nije jasna je upotreba ključeva, stvarno ono što oni jesu i koje prednosti ima, ako koristim ključeve mogu li koristiti lozinke ??? Ako da, zašto to povećava sigurnost, a ako ne, kako da mu pristupim s drugog računala?
Pozdrav, instalirao sam debian 8.1 i ne mogu se povezati sa svog Windows PC-a na debian pomoću WINSCP-a, hoću li morati koristiti protokol 1? bilo kakva pomoć .. hvala
Adijanac
Možda će vas zanimati ovaj video o openssh-u https://m.youtube.com/watch?v=uyMb8uq6L54
Ovdje želim probati neke stvari, nekoliko sam već isprobao zahvaljujući Arch Wiki, druge zbog lijenosti ili nedostatka znanja. Sačuvat ću ga za vrijeme pokretanja RPi-ja