Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Schlüsselverwaltung
In diesem Abschnitt finden Sie Informationen zu SSH Schlüsseln, einschließlich Informationen darüber, wie Sie sie generieren und wie Sie sie rotieren können. Einzelheiten zur Verwendung von Transfer Family with AWS Lambda zur Schlüsselverwaltung finden Sie im Blogbeitrag Aktivieren der Self-Service-Schlüsselverwaltung für Benutzer mit A AWS Transfer Family und AWS Lambda
Anmerkung
AWS Transfer Family akzeptiert RSAECDSA, und ED25519 Schlüssel.
In diesem Abschnitt wird auch beschrieben, wie Pretty Good Privacy (PGP) -Schlüssel generiert und verwaltet werden.
Themen
Unterstützte Algorithmen für Benutzer- und Serverschlüssel
Die folgenden Schlüsselalgorithmen werden für Benutzer- und Serverschlüsselpaare innerhalb unterstützt. AWS Transfer Family
Anmerkung
Informationen zu Algorithmen zur Verwendung bei der PGP Entschlüsselung in Workflows finden Sie unter Unterstützte Algorithmen für Schlüsselpaare. PGP
-
Für: ED25519
ssh-ed25519
-
FürRSA:
-
rsa-sha2-256
-
rsa-sha2-512
-
-
FürECDSA:
-
ecdsa-sha2-nistp256
-
ecdsa-sha2-nistp384
-
ecdsa-sha2-nistp521
-
Anmerkung
Wir unterstützen ssh-rsa
mit SHA1 unseren älteren Sicherheitsrichtlinien. Details hierzu finden Sie unter Kryptografische Algorithmen.
Generieren Sie SSH Schlüssel für vom Service verwaltete Benutzer
Sie können Ihren Server so einrichten, dass Benutzer mithilfe der vom Dienst verwalteten Authentifizierungsmethode authentifiziert werden, bei der Benutzernamen und SSH Schlüssel innerhalb des Dienstes gespeichert werden. Der öffentliche SSH Schlüssel des Benutzers wird als Eigentum des Benutzers auf den Server hochgeladen. Dieser Schlüssel wird vom Server als Teil eines standardmäßigen schlüsselbasierten Authentifizierungsprozesses verwendet. Jeder Benutzer kann mehrere öffentliche SSH Schlüssel auf einem einzelnen Server gespeichert haben. Informationen zur Begrenzung der Anzahl der Schlüssel, die pro Benutzer gespeichert werden können, finden Sie unter AWS Transfer Family Endpunkte und Kontingente in der Allgemeine Amazon Web Services-Referenz.
Als Alternative zur vom Dienst verwalteten Authentifizierungsmethode können Sie Benutzer mithilfe eines benutzerdefinierten Identitätsanbieters authentifizieren, oder. AWS Directory Service for Microsoft Active Directory Weitere Informationen finden Sie unter Mit Anbietern benutzerdefinierter Identitäten arbeiten oder Verwenden des AWS Verzeichnisdienst-Identitätsanbieters.
Ein Server kann Benutzer nur mit einer Methode authentifizieren (vom Dienst verwaltet, Verzeichnisdienst oder benutzerdefinierter Identitätsanbieter), und diese Methode kann nicht geändert werden, nachdem der Server erstellt wurde.
Themen
SSHSchlüssel unter macOS, Linux oder Unix erstellen
Auf den Betriebssystemen macOS, Linux oder Unix verwenden Sie den ssh-keygen
Befehl, um einen SSH öffentlichen Schlüssel und einen SSH privaten Schlüssel zu erstellen, die auch als key pair bezeichnet werden.
So erstellen Sie SSH Schlüssel auf einem macOS-, Linux- oder Unix-Betriebssystem
-
Öffnen Sie auf macOS-, Linux- oder Unix-Betriebssystemen ein Befehlsterminal.
-
AWS Transfer Family akzeptiert mit RSA -, ECDSA - und ED25519 -formatierte Schlüssel. Wählen Sie den entsprechenden Befehl basierend auf dem Typ des Schlüsselpaars, das Sie generieren.
Anmerkung
In den folgenden Beispielen geben wir keine Passphrase an: In diesem Fall fordert das Tool Sie auf, Ihre Passphrase einzugeben und sie dann zur Überprüfung zu wiederholen. Die Erstellung einer Passphrase bietet einen besseren Schutz für Ihren privaten Schlüssel und kann auch die allgemeine Systemsicherheit verbessern. Sie können Ihre Passphrase nicht wiederherstellen: Wenn Sie sie vergessen, müssen Sie einen neuen Schlüssel erstellen.
Wenn Sie jedoch einen Server-Hostschlüssel generieren, müssen Sie eine leere Passphrase angeben, indem Sie die
-N ""
Option im Befehl angeben (oder indem SieEnter
zweimal drücken, wenn Sie dazu aufgefordert werden), da Transfer Family Family-Server beim Start kein Passwort anfordern können.-
Um ein RSA 4096-Bit-Schlüsselpaar zu generieren:
ssh-keygen -t rsa -b 4096 -f
key_name
-
Um ein ECDSA 521-Bit-Schlüsselpaar zu generieren (ECDSAhat Bitgrößen von 256, 384 und 521):
ssh-keygen -t ecdsa -b 521 -f
key_name
-
Um ein ED25519 key pair zu generieren:
ssh-keygen -t ed25519 -f
key_name
Anmerkung
ist der Dateiname des SSH key pair.key_name
Im Folgenden wird ein Beispiel für die
ssh-keygen
Ausgabe gezeigt.ssh-keygen -t rsa -b 4096 -f key_name Generating public/private rsa key pair. Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in key_name. Your public key has been saved in key_name.pub. The key fingerprint is: SHA256:8tDDwPmanTFcEzjTwPGETVWOGW1nVz+gtCCE8hL7PrQ bob.amazon.com The key's randomart image is: +---[RSA 4096]----+ | . ....E | | . = ... | |. . . = ..o | | . o + oo = | | + = .S.= * | | . o o ..B + o | | .o.+.* . | | =o*+*. | | ..*o*+. | +----[SHA256]-----+
Anmerkung
Wenn Sie den Befehl
ssh-keygen
ausführen (siehe oben), erstellt er die öffentlichen und privaten Schlüssel als Dateien im aktuellen Verzeichnis.Ihr SSH key pair ist jetzt einsatzbereit. Folgen Sie den Schritten 3 und 4, um den SSH öffentlichen Schlüssel für Ihre vom Service verwalteten Benutzer zu speichern. Diese Benutzer verwenden die Schlüssel, wenn sie Dateien auf Transfer Family Family-Serverendpunkten übertragen.
-
-
Navigieren Sie zu der
Datei und öffnen Sie sie.key_name
.pub -
Kopieren Sie den Text und fügen Sie ihn in den SSHöffentlichen Schlüssel für den vom Service verwalteten Benutzer ein.
-
Öffnen Sie die AWS Transfer Family Konsole unter https://console.aws.amazon.com/transfer/
und wählen Sie dann im Navigationsbereich Server aus. -
Wählen Sie auf der Seite Server die Server-ID für den Server aus, der den Benutzer enthält, den Sie aktualisieren möchten.
-
Wählen Sie den Benutzer aus, für den Sie einen öffentlichen Schlüssel hinzufügen möchten.
-
Wählen Sie im Bereich SSHÖffentliche Schlüssel die Option SSHÖffentlichen Schlüssel hinzufügen aus.
-
Fügen Sie den Text des öffentlichen Schlüssels, den Sie generiert haben, in das Textfeld für den SSH öffentlichen Schlüssel ein und wählen Sie dann Schlüssel hinzufügen aus.
Der neue Schlüssel ist im Bereich mit SSH öffentlichen Schlüsseln aufgeführt.
-
SSHSchlüssel unter Microsoft Windows erstellen
Windows verwendet ein etwas anderes SSH Schlüsselpaarformat. Der öffentliche Schlüssel muss im PUB
-Format und der private Schlüssel im PPK
-Format vorliegen. Unter Windows können Sie P verwenden, uTTYgen um ein SSH key pair in den entsprechenden Formaten zu erstellen. Sie können P auch verwendenuTTYgen , um einen mit Hilfe generierten privaten Schlüssel ssh-keygen
in eine .ppk
Datei zu konvertieren.
Anmerkung
Wenn Sie Win eine Datei SCP mit einem privaten Schlüssel vorlegen, die nicht im .ppk
Format vorliegen, bietet dieser Client an, den Schlüssel für Sie in ein .ppk
anderes Format zu konvertieren.
Ein Tutorial zum Erstellen von SSH Schlüsseln mithilfe von P unter Windows finden Sie uTTYgen auf der Website SSH .com
Konvertiert einen SSH2 öffentlichen Schlüssel in ein PEM Format
AWS Transfer Family akzeptiert nur PEM formatierte öffentliche Schlüssel. Wenn Sie einen SSH2 öffentlichen Schlüssel haben, müssen Sie ihn konvertieren. Ein SSH2 öffentlicher Schlüssel hat das folgende Format:
---- BEGIN SSH2 PUBLIC KEY ---- Comment: "rsa-key-20160402" AAAAB3NzaC1yc2EAAAABJQAAAgEAiL0jjDdFqK/kYThqKt7THrjABTPWvXmB3URI : : ---- END SSH2 PUBLIC KEY ----
Ein PEM öffentlicher Schlüssel hat das folgende Format:
ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAA...
Führen Sie den folgenden Befehl aus, um einen öffentlichen Schlüssel im SSH2 -Format in einen öffentlichen Schlüssel im PEM -Format zu konvertieren. Ersetzen ssh2-key
mit dem Namen Ihres Schlüssels und SSH2 PEM-key
mit dem Namen Ihres PEM Schlüssels.
ssh-keygen -i -f
ssh2-key
.pub >PEM-key
.pub
SSHTasten drehen
Aus Sicherheitsgründen empfehlen wir die bewährte Methode, Ihre SSH Schlüssel rotieren zu lassen. In der Regel wird diese Rotation als Teil einer Sicherheitsrichtlinie festgelegt und automatisiert implementiert. Je nach Sicherheitsstufe kann ein SSH key pair für eine hochsensible Kommunikation nur einmal verwendet werden. Dadurch werden Risiken vermieden, die aus dem Speichern von Schlüsseln erwachsen. Es ist jedoch viel üblicher, SSH Anmeldeinformationen für einen bestimmten Zeitraum zu speichern und ein Intervall festzulegen, das die Benutzer nicht übermäßig belastet. Dieser Zeitraum hat typischerweise eine Länge von drei Monaten.
Es gibt zwei Methoden, um die SSH Schlüsselrotation durchzuführen:
-
Auf der Konsole können Sie einen neuen SSH öffentlichen Schlüssel hochladen und einen vorhandenen SSH öffentlichen Schlüssel löschen.
-
Mithilfe von können Sie bestehende Benutzer aktualisierenAPI, indem Sie DeleteSshPublicKeyAPIden öffentlichen Secure Shell (SSH) -Schlüssel eines Benutzers löschen und ImportSshPublicKeyAPIdem Konto des Benutzers einen neuen öffentlichen Secure Shell (SSH) -Schlüssel hinzufügen.
PGPSchlüssel generieren und verwalten
Sie können die Entschlüsselung mit Pretty Good Privacy (PGP) für die Dateien verwenden, die Transfer Family mit Workflows verarbeitet. Um die Entschlüsselung in einem Workflow-Schritt zu verwenden, müssen Sie einen PGP Schlüssel angeben.
Der AWS Speicher-Blog enthält einen Beitrag, in dem beschrieben wird, wie Dateien ver- und entschlüsselt werden. Verschlüsseln und Entschlüsseln von Dateien mit und
Schlüssel generieren PGP
Die Methode, mit der Sie Ihre PGP Schlüssel generieren, hängt von Ihrem Betriebssystem und der Version der verwendeten Software zur Schlüsselgenerierung ab.
Wenn Sie Linux oder Unix verwenden, verwenden Sie zur Installation Ihr Paketinstallationsprogramm. gpg
Abhängig von Ihrer Linux-Distribution sollte einer der folgenden Befehle für Sie funktionieren.
sudo yum install gnupg
sudo apt-get install gnupg
Für Windows oder macOS können Sie alles, was Sie benötigen, von https://gnupg.org/download/
Nachdem Sie Ihre PGP Schlüsselgenerator-Software installiert haben, führen Sie den gpg --gen-key
Befehl gpg
--full-gen-key
oder aus, um ein key pair zu generieren.
Anmerkung
Wenn Sie GnuPG
Version 2.3.0 oder neuer verwenden, müssen Sie Folgendes ausführengpg --full-gen-key
. Wenn Sie nach dem Typ des zu erstellenden Schlüssels gefragt werden, wählen Sie RSA oderECC. Wenn Sie sich jedoch dafür entscheidenECC, stellen Sie sicher, dass Sie eine der beiden Optionen wählen NIST or BrainPool für die elliptische Kurve. Wähle nicht Curve 25519.
Für PGP Schlüsselpaare unterstützte Algorithmen
Die folgenden Algorithmen werden für PGP Schlüsselpaare unterstützt:
-
RSA
-
Elgamal
-
ECC:
-
NIST
-
BrainPool
-
Anmerkung
Curve25519-Schlüssel werden nicht unterstützt.
Nützliche gpg
Unterbefehle
Im Folgenden finden Sie einige nützliche Unterbefehle für: gpg
-
gpg --help
— Dieser Befehl listet die verfügbaren Optionen auf und kann einige Beispiele enthalten. -
gpg --list-keys
— Dieser Befehl listet die Details für alle Schlüsselpaare auf, die Sie erstellt haben. -
gpg --fingerprint
— Dieser Befehl listet die Details für alle Ihre Schlüsselpaare auf, einschließlich des Fingerabdrucks jedes Schlüssels. -
gpg --export -a
— Dieser Befehl exportiert den öffentlichen Schlüsselteil des Schlüssels für denuser-name
, der bei der Generierung des Schlüssels verwendet wurde.user-name
Verwalten von PGP-Schlüsseln
Um Ihre PGP Schlüssel zu verwalten, müssen Sie verwenden AWS Secrets Manager.
Anmerkung
Ihr geheimer Name beinhaltet Ihre Transfer Family Family-Server-ID. Das bedeutet, dass Sie bereits einen Server identifiziert oder erstellt haben sollten, bevor Sie Ihre PGP Schlüsselinformationen darin speichern können AWS Secrets Manager.
Wenn Sie einen Schlüssel und eine Passphrase für alle Ihre Benutzer verwenden möchten, können Sie die PGP Schlüsselblockinformationen unter dem geheimen Namen speichernaws/transfer/
, wo sich die ID für Ihren Transfer Family Family-Server server-id
/@pgp-default
befindet. Dieser Standardschlüssel wird verwendet, wenn es keinen Schlüssel gibt, der dem Benutzer server-id
entspricht, der den Workflow ausführt. user-name
Alternativ können Sie einen Schlüssel für einen bestimmten Benutzer erstellen. In diesem Fall lautet das Format für den geheimen Namenaws/transfer/
, wobei dem Benutzer server-id
/user-name
entspricht, der den Workflow für einen Transfer Family Family-Server ausführt.user-name
Anmerkung
Sie können maximal 3 PGP private Schlüssel pro Transfer Family Family-Server pro Benutzer speichern.
Um PGP Schlüssel für die Verwendung bei der Entschlüsselung zu konfigurieren
-
Führen Sie je nach GPG verwendeter Version einen der folgenden Befehle aus, um ein PGP key pair zu generieren, das keinen Curve 25519-Verschlüsselungsalgorithmus verwendet.
-
Wenn Sie
GnuPG
Version 2.3.0 oder neuer verwenden, führen Sie den folgenden Befehl aus:gpg --full-gen-key
Sie können wählen
RSA
, oder, falls Sie möchtenECC
, können Sie entwederNIST
oderBrainPool
für die elliptische Kurve wählen. Wenn Siegpg --gen-key
stattdessen ausführen, erstellen Sie ein key pair, das den ECC Curve 25519-Verschlüsselungsalgorithmus verwendet, den wir derzeit nicht für PGP Schlüssel unterstützen. -
Für Versionen
GnuPG
vor 2.3.0 können Sie den folgenden Befehl verwenden, da dies der Standardverschlüsselungstyp RSA ist.gpg --gen-key
Wichtig
Während der Schlüsselgenerierung müssen Sie eine Passphrase und eine E-Mail-Adresse angeben. Achten Sie darauf, diese Werte zu notieren. Sie müssen die Passphrase angeben, wenn Sie die Schlüsseldetails AWS Secrets Manager später in diesem Verfahren eingeben. Und Sie müssen dieselbe E-Mail-Adresse angeben, um den privaten Schlüssel im nächsten Schritt zu exportieren.
-
-
Führen Sie den folgenden Befehl aus, um den privaten Schlüssel zu exportieren. Um diesen Befehl zu verwenden,
ersetzen Sie ihn durch den Namen der Datei, in der der private Schlüsselblock gespeichert werden soll, undprivate.pgp
durch die E-Mail-Adresse, die Sie bei der Generierung des key pair verwendet haben.marymajor@example.com
gpg --output
private.pgp
--armor --export-secret-keymarymajor@example.com
-
Verwenden Sie AWS Secrets Manager , um Ihren PGP Schlüssel zu speichern.
-
Melden Sie sich bei der an AWS Management Console und öffnen Sie die AWS Secrets Manager Konsole unter https://console.aws.amazon.com/secretsmanager/
. -
Wählen Sie im linken Navigationsbereich Secrets aus.
-
Wählen Sie auf der Seite Secrets die Option Neues Geheimnis speichern aus.
-
Wählen Sie auf der Seite Geheimtyp auswählen für Geheimtyp die Option Anderer Geheimtyp aus.
-
Wählen Sie im Abschnitt Schlüssel/Wert-Paare die Registerkarte Schlüssel/Wert aus.
-
Schlüssel — Geben Sie ein.
PGPPrivateKey
Anmerkung
Sie müssen die
PGPPrivateKey
Zeichenfolge exakt eingeben: Fügen Sie vor oder zwischen den Zeichen keine Leerzeichen hinzu. -
Wert — Fügen Sie den Text Ihres privaten Schlüssels in das Wertfeld ein. Sie finden den Text Ihres privaten Schlüssels in der Datei (z. B.
private.pgp
), die Sie beim Exportieren Ihres Schlüssels zu Beginn dieses Verfahrens angegeben haben. Der Schlüssel beginnt mit-----BEGIN PGP PRIVATE KEY BLOCK-----
und endet mit-----END PGP PRIVATE KEY BLOCK-----
.Anmerkung
Stellen Sie sicher, dass der Textblock nur den privaten Schlüssel und nicht auch den öffentlichen Schlüssel enthält.
-
-
Wählen Sie Zeile hinzufügen und wählen Sie im Abschnitt Schlüssel/Wert-Paare die Registerkarte Schlüssel/Wert-Paare aus.
-
Schlüssel — Geben Sie ein.
PGPPassphrase
Anmerkung
Sie müssen die
PGPPassphrase
Zeichenfolge exakt eingeben: Fügen Sie vor oder zwischen den Zeichen keine Leerzeichen hinzu. -
Wert — Geben Sie die Passphrase ein, die Sie bei der Generierung Ihres PGP key pair verwendet haben.
Anmerkung
Sie können bis zu 3 Sätze von Schlüsseln und Passphrasen hinzufügen. Um einen zweiten Satz hinzuzufügen, fügen Sie zwei neue Zeilen hinzu, geben Sie und
PGPPassphrase2
für die Schlüssel einPGPPrivateKey2
und fügen Sie einen weiteren privaten Schlüssel und eine Passphrase ein. Um einen dritten Satz hinzuzufügen, müssen die Schlüsselwerte und sein.PGPPrivateKey3
PGPPassphrase3
-
-
Wählen Sie Weiter.
-
Geben Sie auf der Seite Geheim konfigurieren einen Namen und eine Beschreibung für Ihr Geheimnis ein.
-
Wenn Sie einen Standardschlüssel erstellen, d. h. einen Schlüssel, der von jedem Transfer Family Family-Benutzer verwendet werden kann, geben Sie ein
aws/transfer/
.server-id
/@pgp-default
Ersetzen Sie ihn durch die ID des Servers, der den Workflow enthält, der einen Entschlüsselungsschritt enthält.server-id
-
Wenn Sie einen Schlüssel erstellen, der von einem bestimmten Transfer Family Family-Benutzer verwendet werden soll, geben Sie ein
aws/transfer/
.server-id
/user-name
Ersetzen Sie ihn durch die ID des Servers, der den Workflow enthält, der einen Entschlüsselungsschritt enthält, undserver-id
ersetzen Sie ihn durch den Namen des Benutzers, der den Workflow ausführt. Dasuser-name
wird in dem Identitätsanbieter gespeichert, den der Transfer Family Family-Server verwendet.user-name
-
-
Wählen Sie Weiter und akzeptieren Sie die Standardeinstellungen auf der Seite „Rotation konfigurieren“. Wählen Sie anschließend Weiter.
-
Wählen Sie auf der Seite „Überprüfen“ die Option Speichern aus, um das Geheimnis zu erstellen und zu speichern.
-
Der folgende Screenshot zeigt die Details für den Benutzer marymajor
für einen bestimmten Transfer Family Family-Server. Dieses Beispiel zeigt drei Schlüssel und die entsprechenden Passphrasen.
Unterstützte Clients PGP
Die folgenden Clients wurden mit Transfer Family getestet und können zum Generieren von PGP Schlüsseln und zum Verschlüsseln von Dateien verwendet werden, die Sie mit einem Workflow entschlüsseln möchten.
-
Gpg4win + Kleopatra.
Anmerkung
Wenn Sie Dateien signieren/verschlüsseln auswählen, stellen Sie sicher, dass Sie die Auswahl für Signieren als deaktivieren: Derzeit unterstützen wir das Signieren von verschlüsselten Dateien nicht.
-
Hauptversionen von GnuPG: 2.4, 2.3, 2.2, 2.0 und 1.4.
Beachten Sie, dass andere PGP Clients möglicherweise auch funktionieren, aber nur die hier genannten Clients wurden mit Transfer Family getestet.