Linux-Server erfordern während des Betriebs und der Wartung häufig eine Fernverwaltung. SSH ist eines der am häufigsten verwendeten Remote-Management-Tools. Es ermöglicht Administratoren, sich remote bei Linux-Servern anzumelden, Befehle auszuführen und Dateien zu bearbeiten. In diesem Artikel besprechen wir, wie Sie SSH verwenden, um eine Verbindung zu einem Linux-Server herzustellen, und geben einige praktische Tipps für SSH.
Als Systemadministrator planen Sie, OpenSSH unter Linux zu verwenden, um tägliche Aufgaben wie Dateiübertragungen, Sicherung von Datenbank-Dump-Dateien auf einem anderen Server usw. zu automatisieren. Um dies zu erreichen, müssen Sie sich automatisch von Host A aus bei Host B anmelden können. Automatische Anmeldung bedeutet die Verwendung von ssh in einem Shell-Skript ohne Eingabe eines Passworts.
In diesem Artikel erfahren Sie, wie Sie die passwortfreie SSH-Anmeldung unter CentOS/RHEL einrichten. Sobald die automatische Anmeldung konfiguriert ist, können Sie damit Dateien mithilfe von SSH (Secure Shell) und Secure Copy (SCP) verschieben.
SSH ist Open Source und das zuverlässigste Netzwerkprotokoll für die Remote-Anmeldung. Systemadministratoren verwenden es, um über das SCP-Protokoll Befehle auszuführen und Dateien über das Netzwerk an einen anderen Computer zu übertragen.
Durch die Konfiguration der passwortfreien SSH-Anmeldung können Sie die folgenden Annehmlichkeiten genießen:
◆Verwenden Sie Skripte, um die tägliche Arbeit zu automatisieren.
◆Erhöhte Linux-Serversicherheit. Dies ist eine empfohlene Methode, um Ihren Virtual Private Server (VPS) vor Brute-Force-Angriffen zu schützen, da SSH-Schlüssel allein durch Brute-Force-Angriffe nahezu unzerbrechlich sind.
Was ist Ssh-Keygen
ssh-keygen ist ein Tool zum Generieren, Erstellen und Verwalten öffentlicher und privater Schlüssel für die SSH-Authentifizierung. Mit dem Befehl ssh-keygen können Benutzer Schlüssel erstellen, die sowohl die Protokolle SSH1 als auch SSH2 unterstützen. ssh-keygen erstellt RSA-Schlüssel für das SSH1-Protokoll, das RSA oder DSA für SSH2 sein kann.
Was ist SSH-Copy-Id?
ssh-copy-id ist ein Skriptbefehl, der zum Kopieren des lokalen öffentlichen Schlüssels in die Remote-authorized_keys-Datei verwendet wird. Außerdem wird die Identitätsdatei an die ~/.ssh/authorized_keys-Datei des Remote-Computers angehängt und dem Benutzer bereitgestellt Der Remote-Host verfügt über entsprechende Berechtigungen für das Home-Verzeichnis.
SSH-Schlüssel
SSH-Schlüssel bieten einen besseren und sicheren Mechanismus für die Anmeldung bei Linux-Servern. Nach dem Ausführen von ssh-keygen wird ein öffentliches und privates Schlüsselpaar generiert. Sie können den öffentlichen Schlüssel auf einem beliebigen Server ablegen und ihn zum Entsperren verwenden, wenn Sie von einem Client, der den privaten Schlüssel besitzt, eine Verbindung zum Server herstellen. Wenn beide übereinstimmen, kann das System ohne Passwort entsperrt werden.
Richten Sie eine passwortfreie SSH-Anmeldung unter CentOS und RHEL ein
Die folgenden Schritte wurden auf CentOS 5/6/7, RHEL 5/6/7 und Oracle Linux 6/7 getestet.
Knoten 1: 192.168.0.9 Knoten 2: 192.168.0.10
Verzeichnisstruktur dieses Kapitels
Testen Sie die Verbindung und den Zugriff von Knoten 1 zu Knoten 2:
[root@node1 ~]# ssh root@192.168.0.10 The authenticity of host '192.168.0.10 (192.168.0.10)' can't be established. RSA key fingerprint is 6d:8f:63:9b:3b:63:e1:72:b3:06:a4:e4:f4:37:21:42. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added '192.168.0.10' (RSA) to the list of known hosts. root@192.168.0.10's password: Last login: Thu Dec 10 22:04:55 2015 from 192.168.0.1 [root@node2 ~]#
Verwenden Sie den Befehl ssh-key-gen, um öffentliche und private Schlüssel zu generieren. Beachten Sie, dass der private Schlüssel zur Erhöhung der Sicherheit verschlüsselt werden kann.
[root@node1 ~]# ssh-keygen Generating public/private rsa key pair. Enter file in which to save the key (/root/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /root/.ssh/id_rsa. Your public key has been saved in /root/.ssh/id_rsa.pub. The key fingerprint is: b4:51:7e:1e:52:61:cd:fb:b2:98:4b:ad:a1:8b:31:6d root@node1.ehowstuff.local The key's randomart image is: +--[ RSA 2048]----+ | . ++ | | o o o | | o o o . | | . o + .. | | S . . | | . .. .| | o E oo.o | | = ooo. | | . o.o. | +-----------------+
Verwenden Sie den Befehl ssh-copy-id, um den öffentlichen Schlüssel auf den Remote-Host zu kopieren oder hochzuladen, und hängen Sie die Identitätsdatei an ~/.ssh/authorized_keys auf Knoten 2 an:
[root@node1 ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.0.10 root@192.168.0.10's password: Now try logging into the machine, with "ssh '192.168.0.10'", and check in: .ssh/authorized_keys to make sure we haven't added extra keys that you weren't expecting.
Verifizierung passwortfreier SSH-Anmeldeknoten 2:
[root@node1 ~]# ssh root@192.168.0.10 Last login: Sun Dec 13 14:03:20 2015 from www.ehowstuff.local
Zusammenfassend lässt sich sagen, dass SSH ein sehr wichtiges Fernverwaltungstool in Linux-Systemen ist. Es kann eine sichere und effiziente Fernzugriffsmethode bieten. Achten Sie bei der Verwendung von SSH auf verstärkte Sicherheitsmaßnahmen, z. B. die Verwendung einer Authentifizierung mit öffentlichem Schlüssel und die Festlegung angemessener Konfigurationsparameter. Gleichzeitig haben wir auch einige praktische SSH-Tipps geteilt, wie z. B. die Verwendung von Proxys, Weiterleitungsports usw., die uns helfen können, Linux-Server besser zu verwalten. Ich glaube, dass diese Inhalte für das Linux-Betriebs- und Wartungspersonal hilfreich sein werden.
Das obige ist der detaillierte Inhalt vonVerwalten Sie Linux-Server aus der Ferne, beginnen Sie mit SSH. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!