Kako instalirati i konfigurirati OpenSSH server u Linuxu


Biti mrežni administrator zahtijeva duboko poznavanje protokola za udaljenu prijavu kao što su rlogin, telnet i ssh. Ono o čemu ću raspravljati u ovom članku je ssh.

SSH je siguran udaljeni protokol koji se koristi za daljinski rad na drugim mašinama ili prijenos podataka između računala pomoću naredbe SCP (Secure Copy). Ali, šta je OpenSSH i kako ga instalirati u svoju Linux distribuciju?

Šta je OpenSSH?

OpenSSH je besplatni set računarskih alata otvorenog koda koji se koristi za pružanje sigurne i šifrirane komunikacije preko računarske mreže korištenjem ssh protokola. Mnogi ljudi, početnici u kompjuterima i protokolima, stvaraju zabludu o OpenSSHu, misle da je to protokol, ali nije, to je skup kompjuterskih programa koji koriste ssh protokol<.

OpenSSH je razvila grupa Open BSD i objavljen je pod Pojednostavljenom BSD licencom. Glavni faktor koji je omogućio da se OpenSSH toliko koristi među sistemskim administratorima je njegova multiplatformska sposobnost i veoma korisne lepe karakteristike koje ima.

Najnovija verzija je OpenSSH 9.3 koja je objavljena 15. marta 2023. i dolazi s mnogo novih funkcija i zakrpa, pa ako već koristite OpenSSH za administriranje vaših mašina, predlažem da izvršite nadogradnju ili instalirate ssh iz izvora.

Zašto koristiti OpenSSH preko Telneta ili Ftp-a?

Najvažniji razlog zašto bi trebalo koristiti OpenSSH alate preko ftp i Telneta je taj što sve komunikacije i korisnički akreditivi koriste OpenSSH > su šifrirani, a također su zaštićeni od napada čovjeka u sredini. Ako treća strana pokuša presresti vašu vezu, OpenSSH će to otkriti i obavijestiti vas o tome.

OpenSSH karakteristike

  • Sigurna komunikacija
  • Jaka enkripcija (3DES, Blowfish, AES, Arcfour)
  • X11 Prosljeđivanje (šifriranje prometa X Window System)
  • Prosljeđivanje portova (šifrirani kanali za naslijeđene protokole)
  • Jaka autentifikacija (javni ključ, jednokratna lozinka i Kerberos autentifikacija)
  • Prosljeđivanje agenta (Jedna prijava)
  • Interoperabilnost (usklađenost sa SSH 1.3, 1.5 i 2.0 standardima protokola)
  • SFTP podrška za klijente i servere u SSH1 i SSH2 protokolima.
  • Kerberos i AFS prolazak tiketa
  • Kompresija podataka

Instalirajte OpenSSH server na Linux

Da biste instalirali OpenSSH, otvorite terminal i pokrenite sljedeće komande sa dozvolama superkorisnika.

Na Debian/Ubuntu/Linux Mint

Na distribucijama baziranim na Debianu, možete koristiti sljedeću apt naredbu za instalaciju openssh poslužitelja i klijenta kao što je prikazano.

sudo apt install openssh-server openssh-client

Na RHEL/Centos/Fedora

U distribuciji zasnovanoj na RedHat-u, otkucajte sljedeću yum naredbu da instalirate openssh server i klijent.

yum -y install openssh-server openssh-clients

Konfigurišite OpenSSH server u Linuxu

Vrijeme je da konfiguriramo naše ponašanje OpenSSH putem datoteke ssh config, ali prije uređivanja datoteke /etc/ssh/sshd_config moramo napraviti sigurnosnu kopiju kopiju, tako da u slučaju da napravimo bilo kakvu grešku imamo originalnu kopiju.

Otvorite terminal i pokrenite sljedeću cp naredbu da napravite kopiju originalne sshd konfiguracijske datoteke.

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

Kao što možete vidjeti iz naredbe koju sam otkucao, dodao sam original_copy sufiks, tako da svaki put kada vidim ovu datoteku znam da je originalna kopija sshd konfiguracijske datoteke.

Kako da se povežem na OpenSSH

Prije nego što krenemo dalje, moramo provjeriti da li naš openssh server radi ili ne. Kako to učiniti? Možete pokušati da se povežete sa openssh serverom sa vašeg localhost preko vašeg openssh klijenta ili izvršite skeniranje portova sa nmap, ali volim koristiti mali alat koji se zove netcat, također poznat kao TCP/IP švicarski vojni nož . Volim da radim sa ovim neverovatnim alatom na svojoj mašini, pa dozvolite da vam ga pokažem.

nc -v -z 127.0.0.1 22

Pozivajući se na rezultate netcat, usluga ssh radi na portu 22 na mojoj mašini. Veoma dobro! Šta ako želimo koristiti drugi port, umjesto 22? To možemo učiniti uređivanjem sshd konfiguracijske datoteke.

Promijenite SSH port

Postavite svoj OpenSSH da sluša na TCP portu 13 umjesto zadanog TCP porta 22. Otvorite datoteku sshd_config sa svojim omiljenim uređivačem teksta i promijenite direktivu porta u 13.

Port 13

Ponovo pokrenite OpenSSH server kako bi se promjene u konfiguracijskoj datoteci mogle izvršiti tako što ćete ukucati sljedeću naredbu i pokrenuti netcat da provjerite da li je port koji ste postavili za slušanje otvoren ili ne.

sudo systemctl restart sshd

Trebamo li provjeriti da li naš openssh server sluša na portu 13 ili ne? Ova verifikacija je neophodna, tako da zovem svoj divni alat netcat da mi pomogne da obavim posao.

nc -v -z 127.0.0.1 13

Da li želite da vaš openssh server prikazuje lep baner za prijavu? To možete učiniti izmjenom sadržaja datoteke /etc/issue.net.

nano /etc/issue.net

Zalijepite sljedeću baner poruku.

Authorized access only!

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

Zatim dodajte sljedeći red unutar sshd konfiguracijske datoteke.

Banner /etc/issue.net

Nakon što izvršite promjene u SSH konfiguraciji, obavezno ponovo pokrenite.

sudo systemctl restart sshd
Zaključak

Postoji mnogo stvari koje možete učiniti sa openssh alatima kada je u pitanju način na koji konfigurirate svoj openssh server, mogu reći da je vaša mašta granica!