Cum se instalează OpenSSH Server din sursă în Linux


OpenSSH este o sursă deschisă gratuită, implementare completă a protocolului SSH 2.0, care oferă o serie de instrumente pentru accesarea și gestionarea în siguranță a sistemelor computerizate la distanță și gestionarea cheilor de autentificare, precum ssh (un înlocuitor sigur pentru telnet), ssh-keygen, ssh-copy-id, ssh-add și multe altele.

Recent, a fost lansat OpenSSH 9.3 și este livrat cu multe funcții noi și remedieri de erori; puteți citi notele de lansare SSH pentru mai multe informații.

În acest articol, vom explica cum să instalați și să configurați cea mai recentă versiune a serverului și clientului OpenSSH pe un sistem Linux din surse. Presupunem că aveți o instalare existentă a suitei OpenSSH.

Cerințe:

  • Un sistem Linux Debian/Ubuntu sau RHEL/CentOS
  • Compilatorul C
  • Zlib 1.1.4 sau 1.2.1.2 sau mai mare
  • LibreSSL sau OpenSSL >= 1.0.1 < 1.1.0

Instalați OpenSSH Server din sursă

Înainte de a instala cea mai recentă versiune de SSH, asigurați-vă că verificați versiunea actuală de SSH instalată pe sistemul dvs. utilizând următoarea comandă.

$ ssh -V

OpenSSH_7.7p2 Ubuntu-4ubuntu2.5, OpenSSL 1.0.2g	1 Mar 2016

Din rezultatul de mai sus, versiunea OpenSSH instalată este 7.7, pentru a instala cea mai recentă versiune OpenSSH, mai întâi, trebuie să instalați câteva dependențe, adică instrumente de dezvoltare sau elemente esențiale de construcție și celelalte pachete necesare, după cum urmează.

-------------- On RedHat-based Distros --------------
$ sudo yum update
$ sudo yum group install 'Development Tools'
$ sudo yum install zlib-devel openssl-devel

-------------- On Debian-based Distros --------------
$ sudo apt update 
$ sudo apt install build-essential zlib1g-dev libssl-dev 

Pentru a crea un mediu adecvat pentru instalarea serverului OpenSSH, trebuie să creăm un nou utilizator de sistem și un grup numit „sshd”, precum și un loc sigur pentru a chroot.

$ sudo mkdir /var/lib/sshd
$ sudo chmod -R 700 /var/lib/sshd/
$ sudo chown -R root:sys /var/lib/sshd/
$ sudo useradd -r -U -d /var/lib/sshd/ -c "sshd privsep" -s /bin/false sshd

Explicarea steagurilor din comanda useradd de mai sus:

  • -r – spune useradd să creeze un utilizator de sistem
  • -U – îi cere să creeze un grup cu același nume și același ID de grup
  • -d – specifică directorul utilizatorului
  • -c – folosit pentru a adăuga un comentariu
  • -s – specifică shell-ul utilizatorului

Acum, descărcați tarball-ul versiunii OpenSSH 9.3 din oricare dintre comenzile wget pentru a o descărca direct în terminalul dvs.

$ wget -c https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.3p1.tar.gz
$ tar -xzf openssh-9.3p1.tar.gz
$ cd openssh-9.3p1/

Acum vom construi și instala serverul OpenSSH folosind --with-md5-parole, --with-privsep-path și --sysconfdir, care vor instala toate fișierele în /usr/local/ (acesta este PREFIX-ul implicit de instalare).

Puteți vedea toate opțiunile disponibile rulând ./configure -h și personalizând în continuare instalarea.

$ ./configure -h

De exemplu, pentru a activa suportul SELinux, adăugați opțiunile --with-pam și, respectiv, --with-selinux, trebuie să instalați toate fișierele de antet necesare pentru ele a munci.

## Install PAM and SELinux Headers ##
$ sudo apt install libpam0g-dev libselinux1-dev   [On Debian/Ubuntu]
$ sudo yum install pam-devel libselinux-devel     [On CentOS/RHEL]

## Compile and Install SSH from Sources ##
$ ./configure --with-md5-passwords --with-pam --with-selinux --with-privsep-path=/var/lib/sshd/ --sysconfdir=/etc/ssh 
$ make
$ sudo make install 

După ce ați instalat OpenSSH, reporniți SSH sau deschideți o altă fereastră de terminal și verificați versiunea OpenSSH acum instalată pe sistemul dvs.

$ ssh -V

OpenSSH_9.3p1, OpenSSL 3.0.1 14 Dec 2021

Diferitele fișiere de configurare OpenSSH se află la:

  • ~/.ssh/* – acest director stochează configurații client ssh specifice utilizatorului (aliasuri ssh) și chei.
  • /etc/ssh/ssh_config – acest fișier conține configurații client ssh la nivel de sistem.
  • /etc/ssh/sshd_config – conține configurațiile serviciului sshd.

Pentru a configura aliasuri ssh, consultați: Cum să configurați conexiuni SSH personalizate pentru a simplifica accesul la distanță

De asemenea, v-ar putea dori să citiți următoarele articole legate de SSH.

  • Cum securizați și consolidați serverul OpenSSH
  • 5 Cele mai bune practici pentru a preveni atacurile de conectare prin forță brută SSH în Linux
  • Cum se creează SSH Tunneling sau Port Forwarding în Linux
  • Cum se schimbă portul SSH implicit în port personalizat în Linux
  • 4 moduri de a accelera conexiunile SSH în Linux
  • Cum să găsiți toate încercările eșuate de conectare SSH în Linux
  • Cum să dezactivați autentificarea SSH Root în Linux

Asta este! În acest articol, am explicat cum să instalați și să configurați cea mai recentă versiune a serverului OpenSSH dintr-o sursă pe un sistem Linux. Dacă aveți întrebări sau comentarii, utilizați formularul de feedback de mai jos pentru a ne contacta.