SSH yra plačiai naudojamas protokolas, naudojamas saugiai prieigai prie Linux serverių. Daugelis vartotojų naudoja SSH ryšius su numatytaisiais nustatymais, kad prisijungtų prie nuotolinio serverio. Tačiau neapsaugotos numatytosios konfigūracijos taip pat kelia įvairių saugumo pavojų.

Gali kilti pavojus serverio su atvira SSH prieiga šakninei paskyrai. Ir ypač jei naudojate viešą IP adresą, daug lengviau nulaužti root slaptažodį. Todėl būtina turėti žinių apie SSH saugumą.

Štai kaip galite apsaugoti SSH serverio ryšius sistemoje „Linux“.

1. Išjungti pagrindinio vartotojo prisijungimą

Norėdami tai padaryti, pirmiausia išjunkite pagrindinio vartotojo SSH prieigą ir sukurti naują vartotoją su root teisėmis. Prieigos prie serverio išjungimas pagrindiniam vartotojui yra gynybos strategija, neleidžianti užpuolikams pasiekti savo tikslo įsibrauti į sistemą. Pavyzdžiui, galite sukurti vartotoją vardu pavyzdysšaknis taip:

useradd -m exampleroot
passwd exampleroot
usermod -aG sudo exampleroot

Štai trumpas minėtų komandų paaiškinimas:

instagram viewer
  • vartotojo pridėjimas sukuria naują vartotoją ir -m parametras sukuria aplanką po namai sukurto vartotojo katalogą.
  • The passwd komanda skirta slaptažodžiui priskirti naujam vartotojui. Atminkite, kad slaptažodžiai, kuriuos priskiriate vartotojams, turi būti sudėtingi ir sunkiai atspėti.
  • usermod -aG sudo prideda naujai sukurtą vartotoją į administratorių grupę.

Pasibaigus vartotojo sukūrimo procesui, būtina atlikti kai kuriuos pakeitimus sshd_config failą. Šį failą galite rasti adresu /etc/ssh/sshd_config. Atidarykite failą naudodami bet kurį teksto rengyklę ir atlikite šiuos pakeitimus:

# Autentifikavimas: 
#LoginGraceTime 2 min
PermitRootLogin Nr
AllowUsers exampleroot

PermitRootLogin eilutė neleis root naudotojui gauti nuotolinės prieigos naudojant SSH. Įskaitant pavyzdysšaknis viduje AllowUsers sąrašas suteikia vartotojui reikiamus leidimus.

Galiausiai iš naujo paleiskite SSH paslaugą naudodami šią komandą:

sudo systemctl iš naujo paleiskite ssh

Jei tai nepavyksta ir gaunate klaidos pranešimą, išbandykite toliau pateiktą komandą. Tai gali skirtis priklausomai nuo jūsų naudojamo Linux platinimo.

sudo systemctl iš naujo paleiskite sshd

2. Numatytosios prievado keitimas

Numatytasis SSH ryšio prievadas yra 22. Žinoma, visi užpuolikai tai žino, todėl norint užtikrinti SSH saugumą, būtina pakeisti numatytąjį prievado numerį. Nors užpuolikas gali lengvai rasti naują prievado numeris su Nmap nuskaitymu, čia tikslas yra apsunkinti puolėjo darbą.

Norėdami pakeisti prievado numerį, atidarykite /etc/ssh/sshd_config ir atlikite šiuos failo pakeitimus:

Įtraukti /etc/ssh/sshd_config.d/*.conf
5922 prievadas

Atlikę šį veiksmą, iš naujo paleiskite SSH paslaugą naudodami sudo systemctl iš naujo paleiskite ssh. Dabar galite pasiekti savo serverį naudodami ką tik apibrėžtą prievadą. Jei naudojate ugniasienę, ten taip pat turite atlikti būtinus taisyklių pakeitimus. Paleidžiant netstat -tlpn komandą, galite pamatyti, kad pasikeitė jūsų SSH prievado numeris.

3. Blokuoti prieigą vartotojams, turintiems tuščius slaptažodžius

Jūsų sistemoje gali būti vartotojų be slaptažodžių, kuriuos galėjote sukurti netyčia. Kad tokie vartotojai negalėtų pasiekti serverių, galite nustatyti PermitEmptyPasswords eilutės reikšmė sshd_config failą į ne.

PermitEmptyPasswords Nr

4. Apriboti prisijungimo / prieigos bandymus

Pagal numatytuosius nustatymus prie serverio galite prisijungti bandydami tiek daug slaptažodžio, kiek norite. Tačiau užpuolikai gali naudoti šį pažeidžiamumą, kad priverstų žiauriai priversti serverį. Galite automatiškai nutraukti SSH ryšį po tam tikro skaičiaus bandymų, nurodant leistinų slaptažodžių bandymų skaičių.

Norėdami tai padaryti, pakeiskite MaxAuthTries vertė sshd_config failą.

MaxAuthTries 3

5. Naudojant SSH 2 versiją

Antroji SSH versija buvo išleista dėl daugybės pirmosios versijos spragų. Pagal numatytuosius nustatymus galite įgalinti serverį naudoti antrąją versiją pridėdami protokolas parametras jūsų sshd_config failą. Tokiu būdu visi būsimi ryšiai naudos antrąją SSH versiją.

Įtraukti /etc/ssh/sshd_config.d/*.conf 
2 protokolas

6. TCP prievado persiuntimo ir X11 persiuntimo išjungimas

Užpuolikai gali bandyti gauti prieigą prie kitų jūsų sistemų peradresuodami prievadą per SSH ryšius. Norėdami to išvengti, galite išjungti Leisti Tcp persiuntimą ir X11 Persiuntimas funkcijos sshd_config failą.

X11Persiuntimas Nr 
Leisti TcpPeradresavimą Nr

7. Prisijungimas naudojant SSH raktą

Vienas iš saugiausių būdų prisijungti prie serverio yra naudoti SSH raktą. Kai naudojate SSH raktą, galite pasiekti serverį be slaptažodžio. Be to, galite visiškai išjungti slaptažodžio prieigą prie serverio, pakeisdami su slaptažodžiu susijusius parametrus sshd_config failą.

Kai kuriate SSH raktą, yra du raktai: Viešas ir Privatus. Viešasis raktas įkeliamas į serverį, prie kurio norite prisijungti, o privatus raktas išsaugomas kompiuteryje, kuriuo užmegsite ryšį.

Sukurkite SSH raktą naudodami ssh-keygen komandą savo kompiuteryje. Nepalikite Slaptafrazė laukelis tuščias ir atsiminkite čia įvestą slaptažodį. Jei paliksite jį tuščią, galėsite jį pasiekti tik naudodami SSH rakto failą. Tačiau jei nustatote slaptažodį, galite užkirsti kelią užpuolikui, turinčiam rakto failą, prie jo pasiekti. Pavyzdžiui, galite sukurti SSH raktą naudodami šią komandą:

ssh-keygen

8. IP apribojimai SSH ryšiams

Dažniausiai ugniasienė blokuoja prieigą naudodama savo standartų sistemas ir siekia apsaugoti serverį. Tačiau to ne visada pakanka ir reikia padidinti šį saugumo potencialą.

Norėdami tai padaryti, atidarykite /etc/hosts.allow failą. Naudodami šio failo papildymus, galite apriboti SSH leidimą, leisti tam tikrą IP bloką arba įvesti vieną IP ir blokuoti visus likusius IP adresus naudodami deny komandą.

Žemiau pamatysite kai kuriuos nustatymų pavyzdžius. Atlikę šiuos veiksmus, iš naujo paleiskite SSH paslaugą, kaip įprasta, kad išsaugotumėte pakeitimus.

„Linux“ serverio saugumo svarba

Duomenų ir duomenų saugumo problemos yra gana išsamios ir jas turėtų apsvarstyti visi serverio administratoriai. Serverio saugumas yra labai opi problema, nes pagrindinis atakų akcentas yra žiniatinklio serveriai ir juose yra beveik visa informacija apie sistemą. Kadangi dauguma serverių veikia Linux infrastruktūroje, labai svarbu išmanyti Linux sistemą ir serverio administravimą.

SSH sauga yra tik vienas iš būdų apsaugoti serverius. Sustabdant, blokuojant ar sulėtinant ataką, galima sumažinti padarytą žalą. Be SSH saugumo užtikrinimo, yra daug skirtingų metodų, kuriuos galite įgyvendinti norėdami apsaugoti savo „Linux“ serverius.