Website-Suche

So installieren Sie den OpenSSH-Server von der Quelle unter Linux


OpenSSH ist eine kostenlose und quelloffene, vollständige Implementierung des SSH-Protokolls 2.0, das eine Reihe von Tools für den sicheren Zugriff auf und die Verwaltung von Remote-Computersystemen sowie für die Verwaltung von Authentifizierungsschlüsseln bereitstellt. wie ssh (ein sicherer Ersatz für telnet), scp, sftp (sicherer Ersatz für ftp), ssh-keygen, ssh-copy-id, ssh-add und mehr.

Kürzlich wurde OpenSSH 9.3 veröffentlicht und enthält viele neue Funktionen und Fehlerbehebungen. Weitere Informationen finden Sie in den SSH-Versionshinweisen.

In diesem Artikel erklären wir, wie Sie die neueste Version des OpenSSH-Servers und -Clients auf einem Linux-System aus Quellen installieren und konfigurieren. Wir gehen davon aus, dass Sie über eine bestehende Installation der OpenSSH-Suite verfügen.

Anforderungen:

  • Ein Debian/Ubuntu- oder RHEL/CentOS-Linux-System
  • C-Compiler
  • Zlib 1.1.4 oder 1.2.1.2 oder höher
  • LibreSSL oder OpenSSL >= 1.0.1 < 1.1.0

Installieren Sie den OpenSSH-Server von der Quelle

Stellen Sie vor der Installation der neuesten Version von SSH sicher, dass die aktuelle Version von SSH auf Ihrem System installiert ist, indem Sie den folgenden Befehl verwenden.

ssh -V

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

Aus dem obigen Ergebnis geht hervor, dass die installierte OpenSSH-Version 7.7 ist. Um die neueste OpenSSH-Version zu installieren, müssen Sie zunächst einige Abhängigkeiten installieren. d. h. Entwicklungstools oder Build Essentials und die anderen erforderlichen Pakete, wie folgt.

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

Um eine geeignete Umgebung für die Installation des OpenSSH-Servers zu schaffen, müssen wir einen neuen Systembenutzer und eine neue Gruppe mit dem Namen „sshd“ sowie einen sicheren Ort für erstellen 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

Erklären der Flags im obigen Befehl useradd:

  • -r – weist useradd an, einen Systembenutzer zu erstellen
  • -U – weist es an, eine Gruppe mit demselben Namen und derselben Gruppen-ID zu erstellen
  • -d – gibt das Verzeichnis des Benutzers an
  • -c – wird zum Hinzufügen eines Kommentars verwendet
  • -s – gibt die Shell des Benutzers an

Laden Sie jetzt den Tarball der OpenSSH-Version 9.3 von einem der verfügbaren HTTP-Spiegel herunter oder verwenden Sie den folgenden wget-Befehl, um ihn direkt in Ihr Terminal herunterzuladen.

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/

Jetzt erstellen und installieren wir den OpenSSH-Server mit --with-md5-passwords, --with-privsep-path und --sysconfdir-Optionen, die alle Dateien in /usr/local/ installieren (dies ist das Standardinstallations-PREFIX).

Sie können alle verfügbaren Optionen anzeigen, indem Sie ./configure -h ausführen und Ihre Installation weiter anpassen.

./configure -h

Um beispielsweise die PAM- und SELinux-Unterstützung zu aktivieren, fügen Sie die Optionen --with-pam und --with-selinux hinzu. Sie müssen alle erforderlichen Header-Dateien installieren damit sie arbeiten.

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

Sobald Sie OpenSSH installiert haben, starten Sie SSH neu oder öffnen Sie ein anderes Terminalfenster und überprüfen Sie die Version von OpenSSH, die jetzt auf Ihrem System installiert ist.

ssh -V

OpenSSH_9.3p1, OpenSSL 3.0.1 14 Dec 2021

Die verschiedenen OpenSSH-Konfigurationsdateien befinden sich unter:

  • ~/.ssh/* – Dieses Verzeichnis speichert benutzerspezifische SSH-Client-Konfigurationen (SSH-Aliase) und Schlüssel.
  • /etc/ssh/ssh_config – diese Datei enthält systemweite SSH-Client-Konfigurationen.
  • /etc/ssh/sshd_config – enthält SSHD-Dienstkonfigurationen.

Informationen zum Konfigurieren von SSH-Aliassen finden Sie unter: So konfigurieren Sie benutzerdefinierte SSH-Verbindungen zur Vereinfachung des Remotezugriffs

Vielleicht möchten Sie auch die folgenden SSH-bezogenen Artikel lesen.

Das ist es! In diesem Artikel haben wir erklärt, wie Sie die neueste Version des OpenSSH-Servers von einer Quelle auf einem Linux-System installieren und konfigurieren. Wenn Sie Fragen oder Kommentare haben, nutzen Sie das untenstehende Feedback-Formular, um uns zu erreichen.