Heim >Betrieb und Instandhaltung >Betrieb und Wartung von Linux >Welche Methoden verwendet Linux SSH?
openssh-Softwarepaket enthält die folgenden Befehle:
sshd – SSH-Serverprogramm
sftp-Server – SFTP-Serverprogramm (ein FTP-ähnliches Protokoll, das jedoch Datenverschlüsselung bietet)
scp – nicht interaktiver SFTP-Server-Client , wird zum Hoch-/Herunterladen von Dateien auf den Server verwendet
sftp – interaktiver SFTP-Server-Client, die Verwendung ist die gleiche wie beim FTP-Befehl.
slogin —— Alias von ssh
ssh —— Das Client-Programm des SSH-Protokolls, das zum Anmelden am Remote-System oder zum Ausführen von Befehlen aus der Ferne verwendet wird.
ssh-add —— SSH-Agent-bezogenes Programm, das zum Hinzufügen des DSA-Schlüssels zum hinzugefügt wird SSH-Agent
SSH-Agent ―― SSH-Agent-Programm
SSH-Keyscan ―― SSH-Public-Key-Generator
Die am häufigsten verwendete Methode zur Verwendung von SSH besteht darin, Telnet für die Remote-Anmeldung zu ersetzen. Im Gegensatz zur Passwortanmeldung von Telnet unterstützt ssh auch mehrere Anmeldemethoden wie Publickey, Keyboard Interactive, GSAPI usw. Im Gegensatz zu Telnet gibt es nur eine Möglichkeit, das Systempasswort einzugeben. Derzeit sind die am häufigsten verwendeten Anmeldemethoden die herkömmlichen Anmeldemethoden mit Passwort und öffentlichem Schlüssel. Im Folgenden wird Redhat AS4 als Beispiel verwendet, um die Verwendung dieser beiden Anmeldemethoden zu veranschaulichen.
[root@mail ~]# ssh 172.18.6.227
Die Authentizität des Hosts „172.18.6.227 (172.18.6.227)“ kann nicht festgestellt werden.
Der Fingerabdruck des RSA-Schlüssels lautet 43:80:f2:e1:9b:b6 :6e:c0:e2:dd:57:8f:ed:89:b3:81.
Sind Sie sicher, dass Sie die Verbindung fortsetzen möchten (ja/nein)?Warnung: dauerhaft hinzugefügt '172.18.6.227′ (rsa) zur Liste der bekannten Hosts.
root@172.18.6.227s Passwort:
letzte Anmeldung: Do. 12. Juli 18:47:47 2007 von 172.18.6.130
[root@qmail ~]#
ssh-Remote-Ausführungsbefehl:
[root@mail ~]# ssh 172.18.6.227 ls -l /root@172.18.6.227's Passwort:
total 1244
drwxr-xr-x 2 root root 4096 jun 26 04:02 bin
drwxr-xr-x 4 root root 4096 29. März 11:17 boot
drwxr-xr-x 2 root root 4096 25. Jan. 11:26 command
drwxr-xr-x 15 root root 4096 12. Juni 20 :09 data
drwxr-xr-x 9 root root 5360 2. Juli 13:38 dev
drwxr-xr-x 87 root root 12288 11. Juli 04:02 usw.
drwxr-xr-x 20 root root 4096 10. April 10 :5 4 home
drwxr-xr-x 2 root root 4096 13. August 2004 initrd
ls –l / auf dem aus Remote-Server und geben Sie die an den lokalen Server übertragenen Ergebnisse ein. Dies entspricht der Anmeldung beim Remote-Server, der anschließenden Ausführung des Befehls ls –l / und der abschließenden Abmeldung vom Server. Denken Sie daran, dass Sie den Befehl in einfache oder doppelte Anführungszeichen setzen müssen, wenn Sie sich beim Server anmelden und mehr als einen Befehl ausführen müssen:
Verwenden Sie den öffentlichen Schlüssel zum Anmelden:
Der Befehl ssh-keygen von openssh wird verwendet, um solche privaten und öffentlichen Schlüssel zu generieren.[root@mail ~]# ssh-keygen -b 1024 -t dsa -c gucuiwen@myserver.com
öffentliches/privates DSA-Schlüsselpaar wird generiert.
#Die Eingabeaufforderung wird generiert Es dauert lange. Geben Sie die Datei ein, in der der Schlüssel gespeichert werden soll (/root/.ssh/id_dsa): ):
# Bitten Sie um die Eingabe der Passphrase für den privaten Schlüssel. Um eine automatische Anmeldung zu erreichen, sollten Sie die Passphrase nicht direkt eingeben.
Geben Sie die Passphrase erneut ein wurde in /root/.ssh/id_dsa gespeichert
Ihr öffentlicher Schlüssel wurde in /root/.ssh/id_dsa.pub gespeichert.
# Eingabeaufforderung, dass der öffentliche Schlüssel und der private Schlüssel in /root/.ssh/ gespeichert wurden. Verzeichnis
Der Fingerabdruck des Schlüssels lautet:
71:e5:cb: 15:d3:8c:05:ed:05:84:85:32:ce:b1:31:ce gucuiwen@myserver.com
# Prompt-Schlüsselfingerabdruck
Anweisungen:
-b 1024 Verwenden Sie eine Länge von 1024 Bytes. Das Paar aus öffentlichem Schlüssel und privatem Schlüssel kann bis zu 4096 Bytes lang sein. Wenn es zu lang ist, dauert die Ver- und Entschlüsselung lange.
-t dsa Ein Paar aus öffentlichem Schlüssel und privatem Schlüssel mit der DSA-Verschlüsselungsmethode. Zusätzlich zur DSA-Methode gibt es auch die RSA-Methode. Die Mindestlänge der RSA-Methode darf nicht weniger als 768 Bytes betragen.
-c gucuiwen@myserver.com Ein Kommentar und eine Beschreibung dieses Paars aus öffentlichem Schlüssel und privatem Schlüssel, normalerweise ersetzt durch die E-Mail-Adresse des Besitzers. Sie können es weglassen, um weitere Parameter zu erhalten.
[root@mail ~]# ls -l /root/.ssh
total 16
-rw——- 1 root root 668 12. Juli 20:07 id_dsa
-rw-r–r– 1 root root 611 12. Juli 20:07 id_dsa.pub
generierten öffentlichen/privaten Schlüsseldateien befinden sich im .ssh-Verzeichnis des Home-Verzeichnisses des Benutzers, wo id_dsa.pub liegt ist die öffentliche Schlüsseldatei. Laden Sie den generierten öffentlichen Schlüssel in das .ssh-Verzeichnis des Home-Verzeichnisses hoch, das dem Benutzerverzeichnis des anzumeldenden Servers entspricht. Es wird noch einmal betont, dass es sich um das eigene Verzeichnis des Benutzers (Home-Verzeichnis) handelt. Das .ssh-Verzeichnis darf nicht über die Berechtigung 700 verfügen, d. h. niemand außer dem Benutzer selbst hat die Berechtigung, das Verzeichnis zu lesen, zu schreiben oder anzuzeigen . Die standardmäßige öffentliche Schlüsseldatei von ssh ist die Datei „authorized_keys“ im Verzeichnis „.ssh“ im Home-Verzeichnis des Benutzers. Daher muss der generierte öffentliche Schlüssel im Verzeichnis „/root/.ssh/“ des Servers unter diesem Dateinamen abgelegt werden Dateien können in dieser Datei gespeichert werden. Die Datei mit dem öffentlichen Schlüssel eines Clients ist wie eine Tür, die viele Schlösser und verschiedene Schlüssel haben kann, um zu versuchen, das Schloss zu öffnen. Wenn es auf dem Server abgelegt wird, sollte es so aussehen:
Der private Schlüssel muss 600 Berechtigungen haben, sonst verweigert der SSH-Server dem Benutzer die Anmeldung.
/etc/ssh/ssh_config:
host *Die Option „host“ ist nur für Computer gültig, die mit der folgenden Zeichenfolge übereinstimmen können. „*“ bezeichnet alle Computer.
forwardagent no „forwardagent“ legt fest, ob die Verbindung über einen Authentifizierungsagenten (falls vorhanden) an den Remotecomputer weitergeleitet wird.
forwardx11 no
rhostsauthentication no
rhostsrsaauthentication no
rsaauthentication ja
passwordauthentication ja
fallbacktorsh no
usersh no
Batchmodus nein
checkhostip ja
stricthostkeychecking no
identityfile ~/.ssh/identity
Port 22
cipher blowfish
escapechar ~
/etc/ssh/sshd_config:
port 22
„listenaddress“ legt die an den SSHD-Server gebundene IP-Adresse fest.
hostkey /etc/ssh/ssh_host_key
Die Einstellung „hostkey“ enthält die Datei mit dem privaten Schlüssel des Computers.
serverkeybits 1024
„serverkeybits“ definiert die Anzahl der Bits im Serverschlüssel.
loggingracetime 600
„loggingracetime“ legt die Zeitspanne (in Sekunden) fest, die der Server warten muss, bevor er die Verbindung trennt, wenn sich der Benutzer nicht erfolgreich anmelden kann.
keyregenerationinterval 3600
„keyregenerationinterval“ legt die Anzahl der Sekunden fest, nach denen der Schlüssel des Servers automatisch neu generiert wird (sofern ein Schlüssel verwendet wird). Der Schlüssel wird neu generiert, um zu verhindern, dass abgefangene Informationen mit einem gestohlenen Schlüssel entschlüsselt werden.
permitrootlogin no
„permitrootlogin“ legt fest, ob sich Root über SSH anmelden kann. Diese Option darf nicht auf „ja“ stehen.
ignorerhosts ja
„ignorerhosts“ legt fest, ob bei der Überprüfung die Dateien „rhosts“ und „shosts“ verwendet werden sollen.
ignoreuserknownhosts ja
„ignoreuserknownhosts“ legt fest, ob der SSH-Daemon das „$home/.ssh/known_hosts“ des Benutzers ignoriert, wenn er die Rhostsrsauthentication-Sicherheitsüberprüfung durchführt Berechtigungen und Besitz von Verzeichnissen und Rhosts-Dateien. Dies ist oft notwendig, da Neulinge ihre Verzeichnisse und Dateien oft so einstellen, dass jeder Schreibzugriff hat.
x11forwarding nein
"x11forwarding" legt fest, ob x11-Weiterleitung zugelassen werden soll.
printmotd ja
„printmotd“ legt sshd fest, ob die Informationen in „/etc/motd“ angezeigt werden sollen, wenn sich der Benutzer anmeldet.
syslogfacility auth
„syslogfacility“ legt fest, ob beim Protokollieren von Nachrichten von SSHD „Facility Code“ angegeben werden soll.
loglevel info
„loglevel“ legt die Ebene fest, auf der SSHD-Protokollmeldungen aufgezeichnet werden. info ist eine gute Wahl. Weitere Informationen finden Sie auf der SSHD-Manpage.
rhostsauthentication nein
Reicht die Einstellung „rhostsauthentication“ aus, um nur Rhosts oder „/etc/hosts.equiv“ zur Sicherheitsüberprüfung zu verwenden?
rhostsrsaauthentication no
„rhostsrsa“ legt fest, ob die Sicherheitsüberprüfung mit rhosts oder „/etc/hosts.equiv“ plus rsa zugelassen werden soll.
rsaauthentication ja
Die Einstellung „rsaauthentication“ ermöglicht nur die RSA-Sicherheitsüberprüfung.
passwordauthentication ja
"passwordauthentication" legt fest, ob die Passwortüberprüfung zugelassen werden soll.
permitemptypasswords no
„permitemptypasswords“ legt fest, ob die Anmeldung mit einem Konto mit leerem Passwort zulässig ist.
allowusers admin
"allowusers" kann eine beliebige Anzahl von mit dem Benutzernamen übereinstimmenden Zeichenfolgen (Mustern) oder übereinstimmenden Zeichenfolgen wie user@host folgen. Diese Zeichenfolgen werden durch Leerzeichen getrennt. Der Hostname kann ein DNS-Name oder eine IP-Adresse sein.
Konvertieren Sie den öffentlichen Schlüssel im SSH2-kompatiblen Format in das OpenSh-kompatible Format
ssh-keygen -i -f Identity.pub >> /root/.ssh/authorized_keys2
Das obige ist der detaillierte Inhalt vonWelche Methoden verwendet Linux SSH?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!