Hvordan installere og konfigurere OpenSSH Server i Linux


Å være nettverksadministrator krever dyp kunnskap om protokoller for ekstern pålogging som rlogin, telnet og ssh. Den jeg vil diskutere i denne artikkelen er ssh.

SSH er en sikker ekstern protokoll som brukes til å arbeide eksternt på andre maskiner eller overføre data mellom datamaskiner ved hjelp av SCP (Secure Copy) kommando. Men hva er OpenSSH, og hvordan installerer du det i Linux-distribusjonen din?

Hva er OpenSSH?

OpenSSH er et gratis åpen kildekodesett med dataverktøy som brukes til å gi sikker og kryptert kommunikasjon over et datanettverk ved å bruke ssh-protokollen. Mange mennesker, nye til datamaskiner og protokoller, skaper en misforståelse om OpenSSH, de tror det er en protokoll, men det er det ikke, det er et sett med dataprogrammer som bruker ssh-protokollen<.

OpenSSH er utviklet av Open BSD-gruppen og er utgitt under en Forenklet BSD-lisens. En hovedfaktor som har gjort det mulig for OpenSSH å bli brukt så mye blant systemadministratorer, er dens multiplattform-kapasitet og veldig nyttige fine funksjoner den har.

Den siste versjonen er OpenSSH 9.3 som ble utgitt 15. mars 2023 og kommer med mange nye funksjoner og oppdateringer, så hvis du allerede bruker OpenSSH for å administrere maskinene dine, foreslår jeg at du gjør en oppgradering eller installerer ssh fra kilden.

Hvorfor bruke OpenSSH over Telnet eller Ftp?

Den viktigste grunnen til at man bør bruke OpenSSH-verktøy over ftp og Telnet er at all kommunikasjon og brukerlegitimasjon som bruker OpenSSH > er kryptert, og de er også beskyttet mot mann-i-midten-angrep. Hvis en tredjepart prøver å avskjære forbindelsen din, oppdager OpenSSH den og informerer deg om det.

OpenSSH-funksjoner

  • Sikker kommunikasjon
  • Sterk kryptering (3DES, Blowfish, AES, Arcfour)
  • X11-videresending (krypter X Window System-trafikk)
  • Port Forwarding (krypterte kanaler for eldre protokoller)
  • Sterk autentisering (offentlig nøkkel, engangspassord og Kerberos-autentisering)
  • Agentvideresending (Enkeltpålogging)
  • Interoperabilitet (samsvar med SSH 1.3, 1.5 og 2.0 protokollstandarder)
  • SFTP-klient- og serverstøtte i både SSH1- og SSH2-protokoller.
  • Kerberos og AFS Ticket Passing
  • Datakomprimering

Installer OpenSSH Server på Linux

For å installere OpenSSH, åpne en terminal og kjør følgende kommandoer med superbrukertillatelser.

På Debian/Ubuntu/Linux Mint

På Debian-baserte distribusjoner kan du bruke følgende apt-kommando for å installere openssh-serveren og -klienten som vist.

sudo apt install openssh-server openssh-client

På RHEL/Centos/Fedora

På RedHat-basert distribusjon, skriv inn følgende yum-kommando for å installere openssh-serveren og klienten.

yum -y install openssh-server openssh-clients

Konfigurer OpenSSH Server i Linux

Det er på tide å konfigurere OpenSSH-atferden vår gjennom ssh config-filen, men før vi redigerer /etc/ssh/sshd_config-filen må vi sikkerhetskopiere en kopi av den, så i tilfelle vi gjør noen feil har vi originaleksemplaret.

Åpne en terminal og kjør følgende cp-kommando for å lage en kopi av den originale sshd-konfigurasjonsfilen.

sudo cp /etc/ssh/sshd_config  /etc/ssh/sshd_config.original_copy

Som du kan se fra kommandoen jeg skrev, la jeg til original_copy-suffikset, så hver gang jeg ser denne filen vet jeg at det er en original kopi av sshd-konfigurasjonsfilen.

Hvordan kobler jeg til OpenSSH

Før vi går videre, må vi bekrefte om openssh-serveren vår fungerer eller ikke. Hvordan gjøre det? Du kan prøve å koble til openssh-serveren fra localhost gjennom openssh-klienten eller gjøre en portskanning med nmap, men jeg liker å bruke et lite verktøy kalt netcat, også kjent som TCP/IP sveitsisk hærkniv . Jeg elsker å jobbe med dette fantastiske verktøyet på maskinen min, så la meg vise det til deg.

nc -v -z 127.0.0.1 22

Med henvisning til netcat-resultatene, kjører ssh-tjenesten på port 22 på maskinen min. Veldig bra! Hva om vi vil bruke en annen port, i stedet for 22? Vi kan gjøre det ved å redigere sshd-konfigurasjonsfilen.

Endre SSH-port

Angi OpenSSH til å lytte på TCP-port 13 i stedet for standard TCP-port 22. Åpne sshd_config-filen med favoritttekstredigeringsprogrammet og endre portdirektivet til 13.

Port 13

Start OpenSSH-serveren på nytt slik at endringene i konfigurasjonsfilen kan skje ved å skrive inn følgende kommando og kjøre netcat for å bekrefte om porten du angir for lytting er åpen eller ikke.

sudo systemctl restart sshd

Skal vi verifisere om openssh-serveren vår lytter på port 13, eller ikke? Denne bekreftelsen er nødvendig, så jeg kaller det flotte verktøyet mitt netcat for å hjelpe meg med jobben.

nc -v -z 127.0.0.1 13

Liker du å få openssh-serveren til å vise et fint påloggingsbanner? Du kan gjøre det ved å endre innholdet i /etc/issue.net-filen.

nano /etc/issue.net

Lim inn følgende bannermelding.

Authorized access only!

If you are not authorized to access or use this system, disconnect now!

Deretter legger du til følgende linje i sshd-konfigurasjonsfilen.

Banner /etc/issue.net

Etter å ha gjort endringer i SSH-konfigurasjonen, sørg for å starte på nytt.

sudo systemctl restart sshd
Konklusjon

Det er mange ting du kan gjøre med openssh-verktøyene når det kommer til måten du konfigurerer openssh-serveren på, jeg kan si at fantasien din setter grensen!