Sichere Verbindungen zu Remote-Umgebungen
Secure Shell (SSH) ist ein gängiges Protokoll, das zur sicheren Anmeldung bei Remote-Servern und -Systemen verwendet wird. Sie können SSH verwenden, um auf Ihre Remote-Umgebungen zuzugreifen, um die Adobe Commerce-Anwendung zu verwalten und auf Remote-Umgebungsprotokolle zuzugreifen. Adobe unterstützt nur sichere FTP-Verbindungen (sFTP) mit Ihrem öffentlichen SSH-Schlüssel. FTP-Verbindungen werden nicht unterstützt.
Generieren eines SSH-Schlüsselpaars
Erstellen Sie auf jedem Computer und Arbeitsbereich ein SSH-Schlüsselpaar, das Zugriff auf Ihren Projektquell-Code und Ihre Umgebungen erfordert. Mit dem SSH-Schlüssel können Sie eine Verbindung zu GitHub herstellen, um Quellcode zu verwalten und eine Verbindung zu Cloud-Servern herzustellen, ohne ständig Ihren Benutzernamen und Ihr Passwort angeben zu müssen. Weitere Informationen zum Erstellen eines SSH-Schlüsselpaars finden Sie unter Herstellen einer Verbindung zu GitHub mit SSH .
- Der öffentliche Schlüssel ist sicher, um auf eine Site, SSH und sFTP zuzugreifen.
- Der private Schlüssel bleibt auf der Workstation privat.
Hinzufügen eines öffentlichen SSH-Schlüssels zu Ihrem Konto
Nachdem Sie Ihren öffentlichen SSH-Schlüssel zu Ihrem Adobe Commerce-Konto für die Cloud-Infrastruktur hinzugefügt haben, stellen Sie alle aktiven Umgebungen auf Ihrem Konto erneut bereit, um den Schlüssel zu installieren.
Sie können Ihrem Konto SSH-Schlüssel mit einer der folgenden Methoden hinzufügen: Cloud CLI oder Cloud Console.
SSH-Schlüssel mithilfe der Cloud CLI hinzufügen
-
Wechseln Sie auf Ihrer lokalen Workstation zum Projektverzeichnis.
-
Melden Sie sich bei Ihrem Projekt an:
code language-bash magento-cloud login
-
Fügen Sie den öffentlichen Schlüssel hinzu.
code language-bash magento-cloud ssh-key:add ~/.ssh/id_rsa.pub
note tip |
---|
TIP |
Sie können SSH-Schlüssel mit den Cloud CLI-Befehlen ssh-key:list und ssh-key:delete auflisten und löschen. |
Fügen Sie Ihren SSH-Schlüssel mit dem Cloud Console hinzu.
So fügen Sie einem neuen Projekt einen SSH-Schlüssel hinzu:
-
Melden Sie sich bei Cloud Console an.
-
Klicken Sie auf No SSH key. Dieses Symbol befindet sich rechts neben dem Befehlsfeld und ist sichtbar, wenn das Projekt keinen SSH-Schlüssel enthält.
-
Kopieren Sie den Inhalt Ihres öffentlichen SSH-Schlüssels und fügen Sie ihn in das Feld Öffentlicher Schlüssel ein.
-
Befolgen Sie die restlichen Anweisungen.
So fügen Sie Ihrem Cloud-Profil einen SSH-Schlüssel hinzu:
-
Melden Sie sich bei Cloud Console an.
-
Klicken Sie oben rechts im Kontomenü auf Mein Profil.
-
Klicken Sie in der Ansicht SSH-Schlüssel auf öffentlichen Schlüssel hinzufügen.
-
Geben Sie im Formular SSH-Schlüssel hinzufügen Ihrem Schlüssel einen Titel und fügen Sie den öffentlichen SSH-Schlüssel in das Feld Schlüssel ein.
-
Klicken Sie auf Speichern.
Herstellen einer Verbindung zu einer Remote-Umgebung
Sie können eine Verbindung zu einer Remote-Umgebung über den Befehl magento-cloud
CLI oder SSH herstellen. Die magento-cloud
CLI-Befehle können nur in Starter- und Pro-Integrationsumgebungen verwendet werden.
Verwenden der Cloud-CLI
Anmelden bei einer Remote-Integrationsumgebung:
-
Wechseln Sie auf Ihrer lokalen Workstation zum Projektverzeichnis.
-
Geben Sie die Umgebungen in diesem Projekt an.
code language-bash magento-cloud environment:list -p <project-ID>
-
Verwenden Sie SSH, um sich bei der Remote-Umgebung anzumelden.
code language-bash magento-cloud ssh -p <project-ID> -e <environment-ID>
SSH-Befehl verwenden
Die Cloud Console enthält eine Liste der Web- und SSH-Zugriffsbefehle für jede Umgebung.
So kopieren Sie den SSH-Befehl:
-
Melden Sie sich bei Cloud Console an.
-
Wählen Sie ein Projekt aus der Liste Alle Projekte aus.
-
Wählen Sie eine Umgebung aus.
-
Klicken Sie auf SSH.
-
Klicken Sie auf der Registerkarte SSH auf die Schaltfläche "Kopieren", um den vollständigen SSH-Befehl in die Zwischenablage zu kopieren.
-
Öffnen Sie ein Terminal und fügen Sie den SSH-Befehl ein, um eine Verbindung zu erstellen.
code language-bash ssh abcdefg123abc-branch-a12b34c--mymagento@ssh.us-2.magento.cloud
code language-bash |
---|
|
sFTP
Adobe Commerce in der Cloud-Infrastruktur unterstützt den Zugriff auf Ihre Umgebungen über sFTP (sicheres FTP) mit SSH-Authentifizierung. Verwenden Sie einen Client, der die SSH-Schlüsselauthentifizierung für sFTP unterstützt, und verwenden Sie Ihren öffentlichen SSH-Schlüssel. Ihr öffentlicher SSH-Schlüssel muss zur Zielumgebung hinzugefügt werden. Bei Starterumgebungen und Pro-Integrationsumgebungen können Sie über den Abschnitt Cloud Console hinzufügen.
Schreibgeschützte sFTP-Verbindungen werden nicht unterstützt. Der sFTP-Zugriff wird standardmäßig mit der Berechtigung write versehen.
Verwenden Sie beim Konfigurieren von sFTP die Informationen aus Ihrem SSH-Zugriffsumgebungsbefehl: <project-id>-<environment-id>--<app-name>@ssh<cloud-host>
- Benutzername: Alle Inhalte vor dem
@
in Ihrem SSH-Zugriffsziel. - Kennwort: Sie benötigen kein Kennwort für sFTP. Der FTP-Zugriff verwendet die SSH-Schlüsselauthentifizierung.
- Host: Alle Inhalte nach dem
@
in Ihrem SSH-Zugriff. - Port: 22, der standardmäßige SSH-Port.
- SSH Privater Schlüssel: Geben Sie bei Bedarf den Speicherort Ihres privaten Schlüssels für den sFTP-Client an. Standardmäßig werden private Schlüssel im Verzeichnis
~/.ssh
gespeichert.
Je nach Client sind möglicherweise zusätzliche Optionen erforderlich, um die SSH-Authentifizierung für sFTP abzuschließen. Überprüfen Sie die Dokumentation für Ihren ausgewählten Client.
Bei Starterumgebungen und Pro-Integrationsumgebungen sollten Sie auch erwägen, eine mount
für den Zugriff auf einen bestimmten Ordner hinzuzufügen. Sie würden das -Reittier zu Ihrer .magento.app.yaml
-Datei hinzufügen. Eine Liste der beschreibbaren Ordner finden Sie unter Projektstruktur. Dieser Bereitstellungspunkt funktioniert nur in diesen Umgebungen.
Wenn Sie für Pro Staging- und Produktionsumgebungen keinen SSH-Zugriff auf die Umgebung haben, müssen Sie ein Adobe Commerce-Support-Ticket senden, um den SFTP-Zugriff und einen Bereitstellungspunkt für den Zugriff auf den jeweiligen Ordner anzufordern, z. B. pub/media
.
SSH-Tunnel
Sie können SSH-Tunnel verwenden, um von Ihrer lokalen Entwicklungsumgebung aus eine Verbindung zu einem Dienst herzustellen, als wäre der Dienst lokal. Konfigurieren Sie vor dem Tunneln Ihre SSH.
Verwenden Sie eine Terminal-Anwendung, um sich anzumelden und Befehle auszugeben.
magento-cloud login
Überprüfen Sie, ob Tunnel mit geöffnet sind.
magento-cloud tunnel:list
Um einen Tunnel zu erstellen, müssen Sie den Anwendungsnamen kennen. Sie können den Anwendungsnamen mithilfe der CLI überprüfen:
magento-cloud apps
Einrichten des SSH-Tunnels
magento-cloud tunnel:open -e <environment-ID> --app <app-name>
Um beispielsweise einen Tunnel zum Zweig sprint5
in einem Projekt mit einer App namens mymagento
zu öffnen, geben Sie
magento-cloud tunnel:open -e sprint5 --app mymagento
Beispielantwort:
SSH tunnel opened on port 30004 to relationship: redis
SSH tunnel opened on port 30005 to relationship: database
Logs are written to: /home/magento_user/.magento/tunnels.log
List tunnels with: magento-cloud tunnels
View tunnel details with: magento-cloud tunnel:info
Close tunnels with: magento-cloud tunnel:close
So zeigen Sie Informationen zu Ihrem Tunnel an:
magento-cloud tunnel:info -e <environment-ID>
Verbindung zu Diensten
Nach der Einrichtung eines SSH-Tunnels können Sie eine Verbindung zu Diensten herstellen, als ob sie lokal ausgeführt würden. Verwenden Sie beispielsweise den folgenden Befehl, um eine Verbindung zur Datenbank herzustellen:
mysql --host=127.0.0.1 --user='<database-username>' --pass='<user-password>' --database='<name>' --port='<port>'