Popoln vodnik za datoteko Sshd_Config za Linux

Popoln Vodnik Za Datoteko Sshd Config Za Linux



Protokol SSH ali Secure Shell se uporablja za oddaljeno prijavo v stroj in izvajanje ukazov na oddaljenem stroju. Podatki, ki se prenašajo s protokolom SSH, so šifrirani s posebnimi algoritmi, zaradi česar je SSH varnejši od Telneta. V bistvu je OpenSSH orodje, ki implementira ta protokol.

Kaj bomo pokrivali?

V tem priročniku bomo raziskali različne vidike konfiguracijske datoteke strežnika OpenSSH. Začnimo zdaj.







Konfiguracijske datoteke OpenSSH

Obstaja nekaj osnovnih datotek za odjemalca in strežnik OpenSSH. Ima dve vrsti konfiguracijskih datotek:



1. Datoteke, povezane z odjemalsko stranjo: Ena od datotek je ssh_config. Je konfiguracijska datoteka za celoten sistem. Ta datoteka se nahaja na /etc/ssh/ssh_config.



Druga datoteka je config, ki je uporabniško specifična konfiguracijska datoteka, ki se nahaja na $HOME/.ssh/config.





Program SSH na gostitelju prevzame konfiguracijo iz teh datotek ali prek vmesnika ukazne vrstice. V primeru prej omenjenih datotek ima sistemska konfiguracijska datoteka, ki je ssh_config, prednost pred uporabniško specifično datoteko »config«.

2. sshd_config: Povezan je s strežniško stranjo. Strežnik OpenSSH prebere to datoteko, ko se zažene.



Raziskovanje sshd Konfiguracijska datoteka

Konfiguracijska datoteka sshd vsebuje številne direktive, ki jih je mogoče tudi prilagoditi. Poglejmo privzeto postavitev te datoteke:

$ mačka / itd / ssh / sshd_config


# To je sistemska konfiguracijska datoteka strežnika sshd. glej

# sshd_config(5) za več informacij.

Pristanišče 222
ListenAddress 0.0.0.0
ListenAddress ::
HostKey / itd / ssh / ssh_gostiteljski_ključ
ServerKeyBits 768
Prijava GraceTime 600

KeyRegenerationInterval 3600
DovoliteRootLogin ja
IgnoreRhosts ja
StrictModes ja
X11Posredovanje št

AllowTcpForwarding št
dovoli št.TTY
X11DisplayOffset 10
PrintMotd ja
Obdržati pri življenju ja
SyslogFacility AUTH

LogLevel INFO
RhostsAuthentication št
RhostsRSAAavtentikacija št
RSAAavtentikacija ja
PasswordAuthentication ja
AllowEmptyPasswords št
CheckMail št


Vsaka vrstica, ki se začne z '#', se upošteva kot komentar. Raziščimo nekaj danih parametrov:

1. Direktiva Port določa številko vrat. To je številka vrat, na kateri je sshd posluša povezave. Privzeta vrednost za ta vrata je 22, ki je standardna. Vendar smo ga v našem primeru spremenili v 222.

Določimo lahko tudi več kot eno direktivo Port. Na ta način lahko uporabimo več vrat za poslušanje povezav sshd.

2. ListenAddress vsebuje naslov IP za poslušanje. Privzeto dejanje je poslušanje vseh naslovov IP, ki so vezani na strežnik. Upoštevajte tudi, da mora direktiva Port naslediti direktivo ListenAddress.

3. Popolnoma kvalificirana pot datoteke zasebnega gostiteljskega ključa RSA je podana z direktivo HostKey. V prejšnjem primeru je pot /etc/ssh/ssh_host_key .

4. Direktiva PermitRootLogin dovoljuje korensko prijavo za sshd, ko je nastavljena na da. To bi moralo biti nastavljeno na ne, razen če sta datoteki hosts.allow in hosts.deny uporabljeni za omejitev dostopa do sshd.

5. Direktiva X11Forwarding dovoljuje posredovanje sistema X Window System, če je nastavljeno na da.

6. Katera možnost Syslog, ki jo sshd je treba uporabiti z uporabo direktive SyslogFacility. Ohranite privzeto vrednost, kakršna je.

7. Raven beleženja za Syslog je podana z uporabo direktive LogLevel.

Spreminjanje sshd Pristanišče

Privzeto je sshd ali OpenSSH strežnik demon uporablja vrata 22 protokola TCP. Priporočljivo je, da to številko vrat spremenite v drugo vrednost v preskusnem okolju. To nam zagotavlja, da je povezljivost s strežnikom na voljo ves čas.

Prav tako je dobra praksa, da preverite sintakso konfiguracije nove datoteke sshd_config, preden jo uporabite, ne glede na to, na katerih vratih se izvaja. Za preverjanje sintakse lahko uporabimo naslednji ukaz:

$ sshd -t


Pomembno je tudi upoštevati, da mora biti samo root uporabnik sposoben brati in pisati v to datoteko. To pomeni, da če je konfiguracijska datoteka sshd_config pravilno zavarovana, za izvajanje prejšnjega ukaza potrebujete korensko pooblastilo.

Če se pri izvajanju prejšnjega ukaza za preverjanje sintakse ne prikaže noben rezultat,  to pomeni, da je datoteka v redu.

Spreminjanje privzete konfiguracijske datoteke in vrat

V nekaterih primerih želimo zagnati nov primerek sshd na druga vrata. To je lahko zato, ker so vrata 22 že v uporabi ali pa morda obstajajo nekatera področja tveganja pri spreminjanju teh vrat v proizvodnem okolju. V takšnih situacijah lahko ustvarimo alternativno konfiguracijsko datoteko za naš strežnik.

Ustvarimo novo datoteko sshd_config kot sshd_config_new. Ta datoteka se lahko uporablja za nekatere različne parametre strežnika. Zdaj pa določimo to datoteko, ki bo obravnavana kot nova konfiguracijska datoteka strežnika na vratih številka 100:

$ sudo / usr / sbin / sshd -f / itd / ssh / sshd_config_new -str 100


Demon sshd zdaj posluša na vratih 100. Uporabimo lahko katero koli vrednost vrat, vendar ne tiste, ki je že v uporabi.

Zdaj pa preverimo, ali naša nova vrata delujejo po želji. Za to moramo uporabiti odjemalski program ssh in zagnati naslednji ukaz:

$ / usr / koš / ssh -str 100 < ip strežnika >



Možnost “-p” podaja vrata 100, ki bodo uporabljena na oddaljenem strežniku. V primeru, da testiramo lokalno, lahko IP strežnika uporabimo kot IP lokalnega gostitelja:

$ / usr / koš / ssh -str 100 127.0.0.1

Odpravljanje težav s konfiguracijo OpenSSH

Včasih naš strežnik ne deluje po želji. V takih primerih lahko uporabimo zastavico »-d« za odpravljanje težav s konfiguracijo strežnika OpenSSH. Z uporabo zastavice »-d« strežnik vstopi v način odpravljanja napak in obravnava samo eno povezavo.

Izhod, ki se ustvari v načinu za odpravljanje napak, je podroben. Za dvig ravni odpravljanja napak lahko uporabimo več zastavic »-d«. Zaženimo ukaz za odpravljanje napak na našem strežniku z uporabo nove konfiguracijske datoteke:

$ / usr / sbin / sshd -d -str 100 -f / itd / ssh / sshd_config_new


Izhod iz prejšnjega ukaza se zabeleži v stderr namesto uporabe pripomočka AUTH syslogd.

Zaključek

OpenSSH demon ali sshd je ključni del mnogih upravnih infrastruktur. Kot taka zahteva strokovno znanje za upravljanje za optimalno delovanje. V tem članku smo izvedeli o konfiguracijski datoteki strežnika OpenSSH, kot je sshd_config.