SSH eller Secure Shell Protocol brukes til å logge på en maskin og kjøre kommandoer på den eksterne maskinen. Dataene som overføres ved hjelp av SSH -protokollen er kryptert med spesielle algoritmer som gjør SSH sikrere enn Telnet. I utgangspunktet er OpenSsh et verktøy som implementerer denne protokollen.
Hva vil vi dekke?
I denne guiden vil vi utforske de forskjellige aspektene av OpenSSH Server -konfigurasjonsfilen. La oss komme i gang nå.
OpenSSH -konfigurasjonsfiler
Det er noen kjernefiler for både OpenSSH -klienten og serveren. Den har to typer konfigurasjonsfiler:
1. Filer relatert til klientsiden: En av filene er ssh_config. Det er en systemomfattende konfigurasjonsfil. Denne filen ligger på /etc/ssh/ssh_config.
Den andre filen er konfigurasjon som er en brukerspesifikk konfigurasjonsfil som ligger hjemme hos $/.SSH/Config.
SSH -programmet på en vert tar konfigurasjonen enten fra disse filene eller via kommandolinjegrensesnittet. Når det.
2. sshd_config: Det er relatert til serversiden. OpenSSH -serveren leser denne filen når den starter.
Utforske sshd Konfigurasjonsfil
SSHD -konfigurasjonsfilen inneholder mange direktiver som også kan tilpasses. La oss se på standardoppsettet i denne filen:
$ katt/etc/ssh/sshd_config
# Dette er SSHD-serverens systemomfattende konfigurasjonsfil. Se
# sshd_config (5) for mer informasjon.
Port 222
ListenAddress 0.0.0.0
ListenAddress ::
HostKey/etc/ssh/ssh_host_key
ServerKeyBits 768
LogingRacetime 600
KeyRegenerationInterval 3600
Tillatootlogin Ja
Ignorerehosts ja
StrictModes Ja
X11forwarding nei
Tillater nei
Permittty nei
X11DisplayOffset 10
Printmotd ja
Keepalive ja
SyslogFacility Auth
LOGLEVEL INFO
Rhostsauthentication nr
Rhostsrsaauthentication nr
Rsaauthentication Ja
Passordauthentication Ja
TillatelsePassord nr
CheckMail Nei
Enhver linje som begynner med "#" blir tatt som en kommentar. La oss utforske noen av de gitte parametrene:
1. Portdirektivet spesifiserer et portnummer. Dette er portnummeret som sshd lytter for tilkoblinger. Standardverdien for denne porten er 22 som er standard. I vårt tilfelle endret vi det imidlertid til 222.
Vi kan også spesifisere mer enn ett portdirektiv. På denne måten kan vi bruke flere porter for å lytte på SSHD -tilkoblingene.
2. Listenadressen inneholder IP -adressen for å lytte på. Standard handling er å lytte på all IP -adressen som er bundet til serveren. Legg også merke til at portdirektivet må lykkes med listenadress -direktivet.
3. Den private RSA -vertsnøkkelfilens fullt kvalifiserte bane er spesifisert av HostKey -direktivet. I forrige tilfelle er banen /etc/ssh/ssh_host_key.
4. Tillatelsesrootlogin -direktivet tillater rotpålogging for SSHD når det er satt til JA. Dette bør settes til nei med mindre vertene.Tillat og verter.Nekt filer brukes til å begrense SSHD -tilgangen.
5. X11forwarding -direktivet tillater X Window System Videresending når det er satt til JA.
6. Hvilket syslog -anlegg som sshd Bør bruk spesifiseres ved hjelp av syslogfacility -direktivet. Oppbevar standardverdien som den er.
7. Loggnivået for syslog er spesifisert ved hjelp av LogLevel -direktivet.
Endre sshd Havn
Som standard, den sshd eller OpenSSH Server Daemon bruker Port 22 i TCP -protokollen. Det anbefales å endre dette portnummeret til en annen verdi i et testmiljø. Dette sikrer oss at serverforbindelsen er tilgjengelig hele tiden.
Det er også en god praksis å sjekke syntaks for konfigurasjonen av en ny SSHD_CONFIG -fil før du bruker den, uavhengig av hvilken port den kjører. For å sjekke syntaksen, kan vi bruke følgende kommando:
$ sshd -t
Det er også viktig å merke seg at bare rotbrukeren skal kunne lese og skrive til denne filen. Dette betyr at hvis en SSHD_CONFIG -konfigurasjonsfil er riktig sikret, trenger den forrige kommandoen Root Authority.
Hvis ingen utgang vises når du kjører den forrige syntaks -verifiseringskommandoen, betyr det at filen er i orden.
Endre standardkonfigurasjonsfilen og port
I noen tilfeller ønsker vi å kjøre en ny forekomst av sshd på en annen port. Dette kan være fordi port 22 allerede er i bruk, eller det kan være noen risikoområder for å endre denne havnen i et produksjonsmiljø. I slike typer situasjoner kan vi opprette en alternativ konfigurasjonsfil for serveren vår.
La oss opprette en ny SSHD_CONFIG -fil som SSHD_CONFIG_NEW. Denne filen kan brukes til noen forskjellige serverparametere. La oss nå spesifisere denne filen som skal betraktes som den nye serverkonfigurasjonsfilen på portnummer 100:
$ sudo/usr/sbin/sshd -f/etc/ssh/sshd_config_new -p 100
SSHD Daemon lytter nå på port 100. Vi kan bruke hvilken som helst portverdi, men ikke den som allerede er i bruk.
La oss nå sjekke om den nye porten vår fungerer som ønsket. For dette må vi bruke et SSH -klientprogram og kjøre følgende kommando:
$/usr/bin/ssh -p 100
Alternativet "-p" spesifiserer porten 100 som skal brukes på den eksterne serveren. I tilfelle vi tester lokalt, kan vi bruke serveren IP til å være LocalHost IP:
$/usr/bin/ssh -p 100 127.0.0.1
Feilsøking OpenSSH -konfigurasjon
Noen ganger fungerer ikke serveren vår som ønsket. I slike tilfeller kan vi bruke “-D” -flagget for å feilsøke OpenSSH-serverkonfigurasjonen. Ved hjelp av “-D” -flagget går serveren inn i feilsøkingsmodus og håndterer bare en enkelt tilkobling.
Utgangen som produseres i feilsøkingsmodus er ordentlig. Vi kan bruke flere "-d" -flagg for å heve feilsøkingsnivået. La oss kjøre debug -kommandoen på serveren vår ved å bruke den nye konfigurasjonsfilen:
$/usr/sbin/sshd -d -p 100 -f/etc/ssh/sshd_config_new
Utgangen fra de forrige kommandogogene til stderr i stedet for å bruke Auth Facility of Syslogd.
Konklusjon
OpenSsh Daemon eller SSHD er en avgjørende del av mange administrasjonsinfrastrukturer. Som sådan krever det kompetanse for å administrere det for optimal drift. I denne artikkelen lærte vi om OpenSSH Server -konfigurasjonsfilen som SSHD_CONFIG.