God praksis med OpenSSH

OpenSSH (Åbn Secure Shell) er et sæt applikationer, der tillader krypteret kommunikation over et netværk ved hjælp af protokol SSH. Det blev oprettet som et gratis og åbent alternativ til programmet Secure Shell, som er proprietær software. « Wikipedia.

Nogle brugere synes måske, at god praksis kun skal anvendes på servere, og dette er ikke tilfældet. Mange GNU / Linux-distributioner inkluderer OpenSSH som standard, og der er et par ting at huske på.

Sikkerhed

Dette er de 6 vigtigste punkter, du skal huske på, når du konfigurerer SSH:

  1. Brug en stærk adgangskode.
  2. Skift standardporten til SSH.
  3. Brug altid version 2 af SSH-protokollen.
  4. Deaktiver rodadgang.
  5. Begræns brugeradgang.
  6. Brug nøgleauthentificering.
  7. Andre muligheder

En stærk adgangskode

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 denne artikel y denne anden.

Skift standardport

Standardporten til SSH er 22. For at ændre den er alt, hvad vi skal gøre, at redigere filen / Etc / ssh / sshd_config. Vi ser efter den linje, der siger:

#Port 22

vi kommenterer det og ændrer 22 til et andet nummer .. for eksempel:

Port 7022

For at kende de porte, som vi ikke bruger på vores computer / server, kan vi udføre i terminalen:

$ netstat -ntap

For at få adgang til vores computer eller server skal vi nu gøre det med indstillingen -p som følger:

$ ssh -p 7022 usuario@servidor

Brug protokol 2

For at sikre, at vi bruger version 2 af SSH-protokollen, skal vi redigere filen / Etc / ssh / sshd_config og kig efter linjen der siger:

# Protokol 2

Vi kommenterer det og genstarter SSH-tjenesten.

Tillad ikke adgang som root

For at forhindre, at rodbrugeren kan få adgang til eksternt via SSH, ser vi i filen/ Etc / ssh / sshd_config linjen:

#PermitRootLogin no

og vi kommenterer det. Jeg synes det er værd at præcisere, at inden vi gør dette, skal vi sikre os, at vores bruger har de nødvendige tilladelser til at udføre administrative opgaver.

Begræns adgang for brugere

Det gør heller ikke ondt at tillade adgang via SSH kun til visse pålidelige brugere, så vi vender tilbage til filen / Etc / ssh / sshd_config og vi tilføjer linjen:

TilladBrugere elav usemoslinux kzkggaara

Hvor det åbenbart er brugerne elav, usemoslinux og kzkggaara dem, der vil være i stand til at få adgang.

Brug nøgleauthentificering

Selvom denne metode er den mest anbefalede, skal vi være særlig opmærksomme, fordi vi får adgang til serveren uden at indtaste adgangskoden. Dette betyder, at hvis en bruger formår at komme ind i vores session, eller hvis vores computer bliver stjålet, kan vi være i problemer. Lad os dog se, hvordan man gør det.

Den første ting er at oprette et par nøgler (offentlige og private):

ssh-keygen -t rsa -b 4096

Derefter sender vi vores nøgle til computeren / serveren:

ssh-copy-id -i ~/.ssh/id_rsa.pub elav@200.8.200.7

Endelig skal vi have ikke kommenteret i filen / Etc / ssh / sshd_config linjen:

AuthorizedKeysFile .ssh/authorized_keys

Andre muligheder

Yukiterus bidrag

Vi kan reducere ventetiden, hvor en bruger med succes kan logge ind på systemet til 30 sekunder

LoginGraceTime 30

For at undgå ssh-angreb gennem TCP Spoofing og lade ssh-siden krypteret i live i maksimalt 3 minutter, kan vi aktivere disse 3 muligheder.

TCPKeepAlive no ClientAliveInterval 60 ClientAliveCountMax 3

Deaktiver brugen af ​​rhosts eller shosts-filer, som af sikkerhedsmæssige årsager opfordres til ikke at blive brugt.

IgnorerRosts ja IgnorérBrugerKendtHosts yes RhostsAuthentication no RhostsRSAAuthentication no

Kontroller brugerens effektive tilladelser under login.

StrictModes yes

Aktiver adskillelse af privilegier.

UsePrivilegeSeparation yes

konklusioner:

Ved at udføre disse trin kan vi tilføje ekstra sikkerhed til vores computere og servere, men vi må aldrig glemme, at der er en vigtig faktor: hvad der er mellem stolen og tastaturet. Derfor anbefaler jeg at læse denne artikel.

kilde: HowToForge


Efterlad din kommentar

Din e-mailadresse vil ikke blive offentliggjort. Obligatoriske felter er markeret med *

*

*

  1. Ansvarlig for dataene: Miguel Ángel Gatón
  2. Formålet med dataene: Control SPAM, management af kommentarer.
  3. Legitimering: Dit samtykke
  4. Kommunikation af dataene: Dataene vil ikke blive kommunikeret til tredjemand, undtagen ved juridisk forpligtelse.
  5. Datalagring: Database hostet af Occentus Networks (EU)
  6. Rettigheder: Du kan til enhver tid begrænse, gendanne og slette dine oplysninger.

  1.   yukiteru sagde han

    Fremragende indlæg @elav og jeg tilføjer nogle interessante ting:

    LoginGraceTime 30

    Dette giver os mulighed for at reducere ventetiden, hvor en bruger med succes kan logge ind på systemet til 30 sekunder

    TCPKeepLive nr
    ClientAliveInterval 60
    ClientAliveCountMax 3

    Disse tre muligheder er ret nyttige for at undgå ssh-angreb ved hjælp af TCP Spoofing, hvilket efterlader den krypterede i live på ssh-siden aktiv i maksimalt 3 minutter.

    IgnorerRhosts ja
    IgnorerUserKnownHosts ja
    RhostsAuthentication nr
    RhostsRSAAutentifikationsnr

    Det deaktiverer brugen af ​​rhosts eller shosts-filer, som af sikkerhedsmæssige årsager opfordres til ikke at blive brugt.

    StrictModes ja

    Denne mulighed bruges til at kontrollere brugerens effektive tilladelser under login.

    UsePrivilegeSeparation ja

    Aktiver adskillelse af privilegier.

    1.    Elav sagde han

      Nå, om et stykke tid vil jeg redigere indlægget og føje det til indlægget 😀

  2.   Eugenio sagde han

    Kommentering for ikke at ændre linjen er overflødig. De kommenterede linjer viser standardværdien for hver indstilling (læs afklaringen i starten af ​​selve filen). Rodadgang er deaktiveret som standard osv. Derfor har afkommentering af det absolut ingen effekt.

    1.    Elav sagde han

      # Strategien, der bruges til indstillinger i standard sshd_config leveret med
      # OpenSSH er at angive indstillinger med deres standardværdi hvor
      # muligt, men lad dem kommentere. Ukommenterede indstillinger tilsidesætter
      # standard værdi.

      Ja, men for eksempel, hvordan ved vi, at vi kun bruger version 2 af protokollen? Fordi vi godt kunne bruge 1 og 2 på samme tid. Som den sidste linje siger, overskriver standardindstillingen, hvis du ikke kommenterer denne mulighed, for eksempel. Hvis vi bruger version 2 som standard, fint, hvis ikke, bruger vi den JA eller JA 😀

      Tak for kommentaren

  3.   Sli sagde han

    Meget god artikel, jeg vidste flere ting, men en ting, der aldrig er klart for mig, er brugen af ​​nøgler, hvad de virkelig er, og hvilke fordele har den, hvis jeg bruger nøgler, kan jeg bruge adgangskoder ??? Hvis ja, hvorfor øger det sikkerheden, og hvis ikke, hvordan får jeg adgang til den fra en anden pc?

  4.   farvel sagde han

    Hilsen, jeg har installeret debian 8.1, og jeg kan ikke oprette forbindelse fra min Windows-pc til debian med WINSCP, bliver jeg nødt til at bruge protokol 1? nogen hjælp .. tak
    farvel

  5.   Franksanabrien sagde han

    Du kan være interesseret i denne video om openssh https://m.youtube.com/watch?v=uyMb8uq6L54

  6.   flise sagde han

    Jeg vil prøve nogle ting her, flere har jeg allerede prøvet takket være Arch Wiki, andre på grund af dovenskab eller manglende viden. Jeg gemmer det, når jeg starter min RPi