Inhaltsverzeichnis
Installieren Sie OpenSSH auf Debian/Ubuntu mit apt:
Installieren Sie OpenSSH mit yum unter Red Hat/CentOS:
Schlüsselpaar generieren mit ssh-keygen
Schlüsselspeicherung und -verwaltung" >Schlüsselspeicherung und -verwaltung
SSH-Server konfigurieren" >SSH-Server konfigurieren
Melden Sie sich beim Zielserver an
Installieren Sie den öffentlichen Schlüssel manuell
通过ssh-copy-id简化公钥部署
SSH 配置文件详解" >SSH 配置文件详解
~/.ssh/config 文件的作用和结构
创建 ~/.ssh/config 文件:
编辑 ~/.ssh/config 文件:
使用别名、端口号等配置项简化SSH连接
实际场景中的示例配置文件
限制和加固SSH访问" >限制和加固SSH访问
禁用密码身份验证
sshd_config中禁用密码身份验证:
使用sshd_config文件设置访问限制
一些常用的 sshd_config 选项:
示例:
Heim Computer-Tutorials Computerwissen So richten Sie die SSH-Schlüsselauthentifizierung im Linux-System ein

So richten Sie die SSH-Schlüsselauthentifizierung im Linux-System ein

Mar 08, 2024 am 09:49 AM
ssh 身份验证 geheimer Schlüssel

SSH (Secure Shell) ist ein verschlüsseltes Netzwerkprotokoll, das häufig zum sicheren Ausführen von Netzwerkdiensten in unsicheren Netzwerken verwendet wird.

SSH bietet verschlüsselte Kommunikations- und Authentifizierungsmethoden, die die Datenübertragung sicherer und zuverlässiger machen.

SSH-Schlüsselauthentifizierung ist eine sicherere Authentifizierungsmethode und wird häufiger empfohlen als die herkömmliche Passwortauthentifizierung. Was die Sicherheit betrifft, bietet die SSH-Schlüsselauthentifizierung ein höheres Maß an Schutz, da sie auf einem Verschlüsselungsmechanismus öffentlicher und privater Schlüssel basiert und so das Risiko des Passwortknackens effektiv reduziert.

Die Passwortauthentifizierung ist in vielen Fällen nicht sehr sicher, da Passwörter bei der Übertragung erraten, geknackt oder sogar durch Man-in-the-Middle-Angriffe bedroht werden können. Dies unterstreicht, wie wichtig es ist, ausgefeiltere und mehrschichtige Sicherheitsmaßnahmen zu ergreifen, um sicherzustellen, dass die Identitäten und Daten der Benutzer wirksamer geschützt werden.

Die Schlüsselauthentifizierung erfolgt durch die Verwendung einer Kombination aus öffentlichen und privaten Schlüsseln, was die Sicherheit erheblich erhöht.

Der private Schlüssel des Benutzers wird lokal gespeichert, während der öffentliche Schlüssel auf dem Remote-Server gespeichert wird. Diese Anordnung erhöht die Sicherheit, denn selbst wenn ein Angreifer den öffentlichen Schlüssel abfängt, ist es schwierig, den privaten Schlüssel umgekehrt abzuleiten. Diese Methode bietet eine zuverlässigere Authentifizierungsmethode.

So richten Sie die SSH-Schlüsselauthentifizierung im Linux-System ein

SSH-Schlüsselpaar generieren

Stellen Sie zunächst sicher, dass das OpenSSH-Tool auf Ihrem Linux-System installiert ist.

Bei den meisten Linux-Distributionen ist dieses Tool normalerweise vorinstalliert. Wenn es nicht auf Ihrem System installiert ist, kann es einfach über den Paketmanager installiert werden.

Installieren Sie OpenSSH auf Debian/Ubuntu mit apt:

sudo apt update
sudo apt install openssh-client openssh-server
Nach dem Login kopieren

Installieren Sie OpenSSH mit yum unter Red Hat/CentOS:

sudo yum install openssh-clients openssh-server
Nach dem Login kopieren

Schlüsselpaar generieren mit ssh-keygen

Sobald OpenSSH installiert ist, können Sie mit dem Befehl ssh-keygen ein SSH-Schlüsselpaar generieren.

Die grundlegende Verwendung des Befehls

ist wie folgt:

ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
Nach dem Login kopieren
  • -t rsaGeben Sie den Schlüsseltyp als RSA an.
  • -b 4096Geben Sie die Schlüssellänge auf 4096 Bit an, um die Sicherheit zu verbessern.
  • -C "your_email@example.com" Um einen Kommentar hinzuzufügen, verwenden Sie normalerweise Ihre E-Mail-Adresse.

Nachdem Sie das Schlüsselpaar generiert haben, können Sie es am Standardspeicherort (unter dem ~/.ssh/-Verzeichnis) speichern oder einen anderen Speicherort auswählen.

Das generierte Schlüsselpaar umfasst zwei Dateien: die private Schlüsseldatei (id_rsa)和公钥文件(id_rsa.pub). Die private Schlüsseldatei wird lokal gespeichert, während die öffentliche Schlüsseldatei auf den Remote-Server kopiert werden muss.

Private Schlüssel sind vertrauliche Informationen und müssen ordnungsgemäß aufbewahrt werden. Der öffentliche Schlüssel ist eine öffentliche Information, die zur Authentifizierung verwendet wird.

Schlüsselspeicherung und -verwaltung

Standardmäßig wird das generierte SSH-Schlüsselpaar im Verzeichnis ~/.ssh/ 目录下。这个目录包含了两个主要文件:id_rsa(私钥)和 id_rsa.pub des Benutzers gespeichert. Dieses Verzeichnis enthält zwei Hauptdateien: id_rsa (privater Schlüssel) und id_rsa.pub (öffentlicher Schlüssel). Dieses Setup soll Benutzern das Auffinden und Verwalten von Schlüsseln bei der Verwendung von SSH erleichtern.

Aber manchmal möchten Sie Ihre Schlüssel aus Sicherheits- oder Organisationsgründen woanders aufbewahren. Dies kann durch die Angabe des Speicherpfades bei der Schlüsselpaargenerierung erreicht werden.

Zum Beispiel:

ssh-keygen -t rsa -b 4096 -f /path/to/your/keys/my_key -C "your_email@example.com"
Nach dem Login kopieren

Dadurch wird der private Schlüssel als /path/to/your/keys/my_key,公钥存储为 /path/to/your/keys/my_key.pub gespeichert.

SSH Key Agent ist ein Programm, das private SSH-Schlüssel verwalten und das entschlüsselte Passwort des privaten Schlüssels nach einer Anmeldung zwischenspeichern kann, sodass nachfolgende SSH-Vorgänge keine erneute Eingabe des Passworts erfordern.

1. SSH-Agent starten:

eval "$(ssh-agent -s)"
Nach dem Login kopieren

2. Privaten Schlüssel zum Agenten hinzufügen:

ssh-add ~/.ssh/id_rsa
Nach dem Login kopieren

Auf diese Weise müssen Sie nicht jedes Mal, wenn Sie sich über SSH anmelden, das Passwort für den privaten Schlüssel eingeben, was den Komfort und die Sicherheit der Nutzung erhöht.

Bei der tatsächlichen Verwendung verfügen Sie möglicherweise über mehrere Schlüsselpaare für verschiedene Server oder Zwecke.

Um diese Schlüsselpaare besser zu verwalten, können Sie SSH-Konfigurationsdateien oder Aliase für Schlüsseldateien verwenden.

SSH-Server konfigurieren

Melden Sie sich beim Zielserver an

Bevor Sie sich mithilfe der SSH-Schlüsselauthentifizierung beim Zielserver anmelden können, stellen Sie sicher, dass der SSH-Dienst auf dem Zielserver aktiviert ist. In den meisten Linux-Systemen ist der SSH-Dienst standardmäßig gestartet.

ssh username@your_server_ip
Nach dem Login kopieren
Nach dem Login kopieren

Stellen Sie sicher, dass Sie username 为你的用户名,your_server_ip durch die IP-Adresse Ihres Zielservers ersetzen. Dadurch wird versucht, sich mit der Standard-Passwortauthentifizierung anzumelden.

Installieren Sie den öffentlichen Schlüssel manuell

Die manuelle Installation eines öffentlichen Schlüssels ist eine grundlegende Methode, bei der der Inhalt Ihres öffentlichen Schlüssels zu einer ~/.ssh/authorized_keys-Datei auf dem Zielserver hinzugefügt wird.

1. Kopieren Sie den Inhalt des lokalen öffentlichen Schlüssels in die Zwischenablage:

cat ~/.ssh/id_rsa.pub
Nach dem Login kopieren

2. Öffnen Sie auf dem Zielserver die ~/.ssh/authorized_keys-Datei mit einem Texteditor:

nano ~/.ssh/authorized_keys
Nach dem Login kopieren

3、将剪贴板上的公钥内容粘贴到文件末尾,并保存文件。

4、回到本地机器,尝试使用密钥身份验证登录:

ssh username@your_server_ip
Nach dem Login kopieren
Nach dem Login kopieren

通过ssh-copy-id简化公钥部署

ssh-copy-id 命令可以简化将本地公钥复制到远程服务器的过程。

这个命令会自动处理将公钥添加到目标服务器的 ~/.ssh/authorized_keys 文件中。

ssh-copy-id username@your_server_ip
Nach dem Login kopieren

确保替换 username 为你的用户名,your_server_ip 为目标服务器的 IP 地址。这个命令将提示你输入用户密码,然后将本地公钥复制到目标服务器上。

通过这两种方法,你可以在目标服务器上配置 SSH 密钥身份验证,提高登录的安全性和便利性。

SSH 配置文件详解

~/.ssh/config 文件的作用和结构

~/.ssh/config 文件是一个用于配置 SSH 客户端行为的配置文件。

它允许你为不同的主机设置自定义的配置选项,从而简化 SSH 连接的管理。

创建 ~/.ssh/config 文件:

touch ~/.ssh/config
Nach dem Login kopieren

编辑 ~/.ssh/config 文件:

nano ~/.ssh/config
Nach dem Login kopieren

使用别名、端口号等配置项简化SSH连接

配置文件中可以包含多个主机条目,每个条目定义了连接到远程主机的配置选项。

以下是一个简单的例子:

Host example
HostName your_server_ip
User username
Port 2222
IdentityFile ~/.ssh/id_rsa
Nach dem Login kopieren
  • Host:设置别名,用于代替实际的主机名。
  • HostName:远程主机的 IP 地址或域名。
  • User:连接时使用的用户名。
  • Port:SSH 连接的端口号。
  • IdentityFile:指定用于身份验证的私钥文件路径。

实际场景中的示例配置文件

以下是一个更为复杂的 ~/.ssh/config 文件,涵盖了多个主机和配置选项:

Host work
HostName work.example.com
User alice
Port 22
IdentityFile ~/.ssh/work_key

Host personal
HostName personal.example.org
User bob
Port 2222
IdentityFile ~/.ssh/personal_key

Host github
HostName github.com
User git
IdentityFile ~/.ssh/github_key
Nach dem Login kopieren

这样,你只需要使用别名就能够轻松连接到相应的主机,而不必记住每个主机的详细信息。

限制和加固SSH访问

禁用密码身份验证

禁用密码身份验证是提高 SSH 安全性的重要步骤之一。

这样,用户只能通过密钥身份验证进行访问,而不再依赖弱密码。

sshd_config中禁用密码身份验证:

1、打开 sshd_config 文件:

sudo nano /etc/ssh/sshd_config
Nach dem Login kopieren

2、找到并修改以下行:

PasswordAuthentication no
Nach dem Login kopieren

3、保存文件并重新启动 SSH 服务:

sudo service ssh restart
Nach dem Login kopieren

使用sshd_config文件设置访问限制

sshd_config 文件包含了用于配置 SSH 服务器的各种选项。

通过适当配置,你可以限制用户访问、定义允许登录的用户、设置登录时的认证方式等。

一些常用的 sshd_config 选项:
  • AllowUsers:指定允许登录的用户列表。
  • DenyUsers:指定禁止登录的用户列表。
  • AllowGroups:指定允许登录的用户组列表。
  • DenyGroups:指定禁止登录的用户组列表。
  • PermitRootLogin:禁用或限制 root 用户的远程登录。
示例:
AllowUsers alice bob
DenyUsers mallory
AllowGroups sshusers
DenyGroups badusers
PermitRootLogin no
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonSo richten Sie die SSH-Schlüsselauthentifizierung im Linux-System ein. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So erhalten Sie den BitLocker-Wiederherstellungsschlüssel von CMD ohne Microsoft-Konto So erhalten Sie den BitLocker-Wiederherstellungsschlüssel von CMD ohne Microsoft-Konto Feb 19, 2024 pm 09:00 PM

In dieser Anleitung wird erklärt, wie Sie einen BitLocker-Wiederherstellungsschlüssel erhalten, um bei Bedarf den Zugriff auf verschlüsselte Daten wiederherzustellen. BitLocker ist eine Sicherheitsfunktion von Windows-Geräten, die dazu dient, Daten vor unbefugtem Zugriff zu schützen. Wiederherstellungsschlüssel sind eine Sicherungsmethode, wenn Sie nicht auf normale Weise auf Ihre Daten zugreifen können. Sie können einen 48-stelligen BitLocker-Wiederherstellungsschlüssel ohne Microsoft-Konto oder über CMD erhalten und so sicherstellen, dass Sie jederzeit auf Ihre wichtigen Daten zugreifen und diese wiederherstellen können. Wie erhalte ich den BitLocker-Wiederherstellungsschlüssel von CMD ohne Microsoft-Konto? Befolgen Sie diese Vorschläge, um einen BitLocker-Wiederherstellungsschlüssel zu erhalten: Klicken Sie in der Eingabeaufforderung auf „Start“, suchen Sie nach „cmd“ und klicken Sie auf „Verwalten“.

So deaktivieren Sie die Authentifizierung beim privaten Surfen in Safari: Anleitung für iOS 17 So deaktivieren Sie die Authentifizierung beim privaten Surfen in Safari: Anleitung für iOS 17 Sep 11, 2023 pm 06:37 PM

Mit iOS 17 hat Apple mehrere neue Datenschutz- und Sicherheitsfunktionen in sein mobiles Betriebssystem eingeführt, darunter die Möglichkeit, eine zweistufige Authentifizierung für private Browser-Tabs in Safari zu verlangen. Hier erfahren Sie, wie es funktioniert und wie Sie es ausschalten. Wenn Sie auf einem iPhone oder iPad mit iOS 17 oder iPadOS 17 eine Registerkarte „Privates Surfen“ in Safari geöffnet haben und dann die Sitzung oder App beenden, erfordert der Browser von Apple jetzt eine Face ID/TouchID-Authentifizierung oder einen Passcode, um erneut darauf zugreifen zu können. Mit anderen Worten: Wenn jemand Ihr entsperrtes iPhone oder iPad in die Hände bekommt, kann er es trotzdem nicht ansehen, ohne Ihren Passcode zu kennen

OpenSSH unter Windows: Installations-, Konfigurations- und Nutzungshandbuch OpenSSH unter Windows: Installations-, Konfigurations- und Nutzungshandbuch Mar 08, 2024 am 09:31 AM

Für die meisten Windows-Benutzer war Remote Desktop Protocol (RDP) schon immer die erste Wahl für die Fernverwaltung, da es eine benutzerfreundliche grafische Oberfläche bietet. Für Systemadministratoren, die eine detailliertere Kontrolle benötigen, ist SSH jedoch möglicherweise besser geeignet. Über SSH können Administratoren über die Befehlszeile mit Remote-Geräten interagieren, was die Verwaltungsarbeit effizienter gestalten kann. Der Vorteil von SSH liegt in seiner Sicherheit und Flexibilität, die es Administratoren erleichtert, Remote-Verwaltungs- und Wartungsarbeiten durchzuführen, insbesondere wenn sie mit einer großen Anzahl von Geräten arbeiten oder automatisierte Aufgaben ausführen. Während sich RDP in puncto Benutzerfreundlichkeit auszeichnet, ist SSH für Systemadministratoren hinsichtlich Leistung und Kontrolle überlegen. Bisher mussten Windows-Benutzer etwas ausleihen

Konfiguration der gegenseitigen Vertrauensstellung bei der Linux-SSH-Anmeldung Konfiguration der gegenseitigen Vertrauensstellung bei der Linux-SSH-Anmeldung Feb 19, 2024 pm 07:48 PM

1. Der Zweck des gegenseitigen SSH-Vertrauens 1. Beim Aufbau eines Clusters ist gegenseitiges SSH-Vertrauen erforderlich, was einem bequemen Betrieb auf einem anderen Knoten förderlich ist. 2. Wenn Sie den SCP-Remote-Kopiervorgang verwenden, müssen Sie den Benutzernamen und das Kennwort des Zielservers eingeben. Zu diesem Zeitpunkt können Sie die gegenseitige SSH-Vertrauensstellung zwischen Linux-Servern konfigurieren, sodass Sie sich beim Betrieb zwischen mehreren Servern ohne Kennwort anmelden können Linux-Server. 2. Das Prinzip der gegenseitigen SSH-Vertrauenskonfiguration Kurz gesagt: Der Server speichert das Zertifikat des Zielhosts, sodass die Authentifizierung automatisch durchgeführt werden kann, ohne dass ein Kennwort eingegeben werden muss. 3. Schritte zur Konfiguration der gegenseitigen SSH-Vertrauensstellung 1. Jeder Knoten generiert sein eigenes öffentliches Schlüssel- und privates Schlüsselpaar. 2. Senden Sie Ihre öffentliche Schlüsseldatei an die andere Partei. 3. Überprüfen Sie, ob die gegenseitige Vertrauenskonfiguration erfolgreich ist. 4. Konfigurieren Sie hier die gegenseitige SSH-Vertrauensstellung mit MYDB01 und

Implementierung der Benutzerauthentifizierung mithilfe von Middleware im Slim-Framework Implementierung der Benutzerauthentifizierung mithilfe von Middleware im Slim-Framework Jul 29, 2023 am 10:22 AM

Implementierung der Benutzerauthentifizierung mithilfe von Middleware im Slim-Framework Mit der Entwicklung von Webanwendungen ist die Benutzerauthentifizierung zu einem entscheidenden Merkmal geworden. Um die persönlichen Informationen und sensiblen Daten der Benutzer zu schützen, benötigen wir eine zuverlässige Methode zur Überprüfung der Identität des Benutzers. In diesem Artikel stellen wir vor, wie Sie die Benutzerauthentifizierung mithilfe der Middleware des Slim-Frameworks implementieren. Das Slim-Framework ist ein leichtes PHP-Framework, das eine einfache und schnelle Möglichkeit zum Erstellen von Webanwendungen bietet. Eine der leistungsstarken Funktionen ist die Mitte

Tokenbasierte Authentifizierung mit Angular und Node Tokenbasierte Authentifizierung mit Angular und Node Sep 01, 2023 pm 02:01 PM

Die Authentifizierung ist einer der wichtigsten Teile jeder Webanwendung. In diesem Tutorial werden tokenbasierte Authentifizierungssysteme und ihre Unterschiede zu herkömmlichen Anmeldesystemen erläutert. Am Ende dieses Tutorials sehen Sie eine voll funktionsfähige Demo, die in Angular und Node.js geschrieben wurde. Traditionelle Authentifizierungssysteme Bevor wir zu tokenbasierten Authentifizierungssystemen übergehen, werfen wir einen Blick auf traditionelle Authentifizierungssysteme. Der Benutzer gibt seinen Benutzernamen und sein Passwort im Anmeldeformular ein und klickt auf „Anmelden“. Nachdem Sie die Anfrage gestellt haben, authentifizieren Sie den Benutzer im Backend, indem Sie die Datenbank abfragen. Wenn die Anfrage gültig ist, wird eine Sitzung mit den aus der Datenbank erhaltenen Benutzerinformationen erstellt und die Sitzungsinformationen werden im Antwortheader zurückgegeben, sodass die Sitzungs-ID im Browser gespeichert wird. Bietet Zugriff auf Anwendungen, die unterliegen

CentOS 7.9-Installation und Centos 7.9-Installations-SSH CentOS 7.9-Installation und Centos 7.9-Installations-SSH Feb 13, 2024 pm 10:30 PM

CentOS7.9 ist eine sehr häufig verwendete Betriebssystemversion beim Erstellen von Servern oder bei der Systemverwaltung. In diesem Artikel finden Sie detaillierte Schritte und Anweisungen zur Installation von CentOS7.9 und zur Installation von SSH. CentOS7.9 ist ein kostenloses und quelloffenes Linux-Betriebssystem. Es handelt sich um eine binärkompatible Version, die auf Red Hat Enterprise Linux (RHEL) basiert. Die folgenden Schritte sind für die Installation von CentOS7.9 erforderlich: 1. Sie müssen die ISO-Image-Datei herunterladen von CentOS7.9. Sie können es von der offiziellen CentOS-Website herunterladen. 2. Erstellen Sie eine neue virtuelle Maschine oder physische Maschine auf Ihrem Computer und installieren Sie sie

Installieren Sie SSH auf dem Linux Debian11-Server, erstellen Sie einen neuen Benutzer, erlauben Sie die SSH-Remote-Anmeldung und konfigurieren Sie die sichere SSH-Anmeldung! Installieren Sie SSH auf dem Linux Debian11-Server, erstellen Sie einen neuen Benutzer, erlauben Sie die SSH-Remote-Anmeldung und konfigurieren Sie die sichere SSH-Anmeldung! Mar 01, 2024 pm 07:16 PM

Die Schritte zum Installieren von SSH auf Ihrem Debian11-Server und zum Erstellen eines neuen Benutzers, um die SSH-Remote-Anmeldung zu ermöglichen, sind wie folgt: Schritt 1: SSH installieren Um den SSH-Server zu installieren, müssen Sie sich als Root-Benutzer oder bei Ihrem Debian11-Server anmelden ein Benutzer mit Sudo-Berechtigungen. Führen Sie im Terminal den folgenden Befehl aus, um den SSH-Server zu installieren: sudoaptupdatesudoaptinstallopenssh-server Schritt 2: Neuen Benutzer erstellen Um einen neuen Benutzer zu erstellen, können Sie den Befehl adduser verwenden. Ersetzen Sie den folgenden Befehl durch Ihren gewünschten Benutzernamen: sudoaddusernew_username Sie werden aufgefordert, das Passwort des neuen Benutzers und andere festzulegen

See all articles