Com instal·lar el servidor OpenSSH 8.0 des de la font a Linux


OpenSSH és una implementació completa de codi obert i gratuït del protocol SSH 2.0. Proporciona una sèrie d'eines per accedir i gestionar de manera segura sistemes informàtics remots, i gestionar les claus d'autenticació, com ara ssh (un reemplaçament segur de telnet), ssh-keygen, ssh-copy-id, ssh-add i molt més.

Recentment es va llançar OpenSSH 8.0 i s'envia amb moltes funcions noves i correccions d'errors; podeu llegir les notes de la versió per obtenir més informació.

En aquest article, explicarem com instal·lar i configurar la darrera versió del servidor i client OpenSSH 8.0 en un sistema Linux des de fonts. Suposem que teniu una instal·lació existent de la suite OpenSSH.

  • Un sistema Linux Debian/Ubuntu o RHEL/CentOS
  • Compilador C
  • Zlib 1.1.4 o 1.2.1.2 o superior
  • LibreSSL o OpenSSL >= 1.0.1 < 1.1.0

Instal·leu el servidor i el client OpenSSH a Linux

Abans d'instal·lar la darrera versió de SSH, assegureu-vos de comprovar la versió actual de SSH instal·lada al vostre sistema mitjançant l'ordre següent.

$ ssh -V

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

A partir del resultat anterior, la versió d'OpenSSH instal·lada és la 7.7, per instal·lar la darrera versió d'OpenSSH, primer cal instal·lar algunes dependències, és a dir, eines de desenvolupament o construir elements essencials i els altres paquets necessaris, de la següent manera.

-------------- CentOS/RHEL 7/6--------------
$ sudo yum group install 'Development Tools' 
$ sudo yum install zlib-devel openssl-devel

-------------- RHEL 8 and Fedora 22+ --------------
$ sudo dnf group install 'Development Tools' 
$ sudo dnf install zlib-devel openssl-devel

-------------- Debian/Ubuntu --------------
$ sudo apt update 
$ sudo apt install build-essential zlib1g-dev libssl-dev 

Per crear un entorn adequat per instal·lar el servidor OpenSSH versió 8.0, hem de crear un nou usuari i grup del sistema anomenat sshd, així com un lloc segur per fer el chroot.

Nota: En general, si teniu una instal·lació existent, aquest entorn ja hauria d'estar al seu lloc, podeu ometre aquesta secció i passar a la següent. En cas contrari, executeu les ordres següents per configurar-lo.

$ 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

Explicació de les marques a l'ordre useradd anterior:

  • -r: diu a useradd que creï un usuari del sistema
  • -U: li indica que creï un grup amb el mateix nom i identificador de grup
  • -d: especifica el directori d'usuaris
  • -c: s'utilitza per afegir un comentari
  • -s: especifica l'intèrpret d'ordres de l'usuari

Ara, descarregueu el tarball de la versió 8.0 d'OpenSSH des de qualsevol de les ordres wget per descarregar-lo directament al vostre terminal.

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

Ara construirem i instal·larem el servidor OpenSSH mitjançant --with-md5-passwords, --with-privsep-path i --sysconfdir opcions, que instal·laran tots els fitxers a /usr/local/ (aquest és el PREFIX d'instal·lació per defecte).

Podeu veure totes les opcions disponibles executant ./configure -h i personalitzar encara més la instal·lació.

$ ./configure -h

Per exemple, per habilitar el suport de SELinux, afegiu les opcions --with-pam i --with-selinux, respectivament, haureu d'instal·lar tots els fitxers de capçalera necessaris per a ells. treballar.

## 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 

Un cop hàgiu instal·lat OpenSSH, reinicieu SSH o obriu una altra finestra de terminal i comproveu la versió d'OpenSSH ara instal·lada al vostre sistema.

$ ssh -V

OpenSSH_8.0p1, OpenSSL 1.1.0g  2 Nov 2017

Els diferents fitxers de configuració d'OpenSSH situats a:

  • ~/.ssh/*: aquest directori emmagatzema configuracions de client ssh específiques de l'usuari (àlies ssh) i claus.
  • /etc/ssh/ssh_config: aquest fitxer conté configuracions de client ssh a tot el sistema.
  • /etc/ssh/sshd_config: conté configuracions del servei sshd.

Per configurar àlies ssh, vegeu: Com configurar connexions SSH personalitzades per simplificar l'accés remot

També us agradaria llegir aquests articles relacionats amb SSH següents.

  1. Com crear un túnel SSH o reenviament de ports a Linux
  2. Com canviar el port SSH predeterminat a un port personalitzat a Linux
  3. 4 maneres d'accelerar les connexions SSH a Linux
  4. Com trobar tots els intents fallits d'inici de sessió SSH a Linux
  5. Com desactivar l'inici de sessió arrel SSH a Linux

Això és! En aquest article, hem explicat com instal·lar i configurar la darrera versió del servidor i client OpenSSH en un sistema Linux. Si teniu cap pregunta o comentari, utilitzeu el formulari de comentaris a continuació per contactar amb nosaltres.