

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.

# Öffnen Sie mithilfe der manuellen Einrichtung einen Tunnel und stellen Sie eine Verbindung zum Remote-Gerät her
<a name="tunneling-tutorial-manual-setup"></a>

Wenn Sie einen Tunnel öffnen, können Sie die Quick Setup Methode oder die manuelle Einrichtungsmethode wählen, um einen Tunnel zum Remote-Gerät zu öffnen. Dieses Tutorial zeigt, wie Sie einen Tunnel mithilfe der manuellen Einrichtungsmethode öffnen und den lokalen Proxy konfigurieren und starten, um eine Verbindung zum Remote-Gerät herzustellen.

Wenn Sie die manuelle Einrichtungsmethode verwenden, müssen Sie die Tunnelkonfigurationen bei der Erstellung des Tunnels manuell angeben. Nachdem Sie den Tunnel erstellt haben, können Sie SSH im Browser verwenden oder ein Terminal außerhalb der AWS IoT Konsole öffnen. Dieses Tutorial zeigt, wie Sie das Terminal außerhalb der Konsole verwenden, um auf das Remote-Gerät zuzugreifen. Sie erfahren auch, wie Sie den lokalen Proxy konfigurieren und dann eine Verbindung zum lokalen Proxy herstellen, um mit dem Remote-Gerät zu interagieren. Um eine Verbindung zum lokalen Proxy herzustellen, müssen Sie beim Erstellen des Tunnels das Quellzugriffstoken herunterladen.

Sie können diese Methode verwenden, um über andere Dienste als SSH eine Verbindung zum Remote-Gerät herzustellen. Weitere Informationen zu den verschiedenen Einrichtungsmethoden finden Sie unter [Methoden zur Tunneleinrichtung](secure-tunneling-tutorial-open-tunnel.md#tunneling-tutorial-setup-methods).

## Voraussetzungen für die manuelle Einrichtungsmethode
<a name="tunneling-tutorial-manual-prerequisites"></a>
+ Die Firewalls, hinter denen sich das Remote-Gerät befindet, müssen ausgehenden Datenverkehr an Port 443 zulassen. Der Tunnel, den Sie erstellen, verwendet diesen Port, um eine Verbindung zum Remote-Gerät herzustellen.
+ Auf dem Remote-Gerät läuft ein IoT-Geräteagent (siehe[IoT-Agent-Snippet](configure-remote-device.md#agent-snippet)), der eine Verbindung zum AWS IoT Gerätegateway herstellt und mit einem MQTT-Themenabonnement konfiguriert ist. Weitere Informationen finden Sie unter [Ein Gerät mit dem AWS IoT Geräte-Gateway verbinden](https://docs.aws.amazon.com/iot/latest/developerguide/sdk-tutorials.html).
+ Auf dem Remote-Gerät muss ein SSH-Daemon ausgeführt werden.
+ Sie haben den lokalen Proxy-Quellcode von der Plattform Ihrer Wahl heruntergeladen [GitHub](https://github.com/aws-samples/aws-iot-securetunneling-localproxy)und ihn für die Plattform Ihrer Wahl erstellt. In diesem Tutorial verweisen wir auf die erstellte lokale ausführbare Proxy-Datei als `localproxy`.

## Tunnel öffnen
<a name="open-tunnel"></a>

Sie können einen sicheren Tunnel mit dem AWS-Managementkonsole, der AWS IoT API-Referenz oder dem öffnen AWS CLI. Sie können optional einen Zielnamen konfigurieren, der für dieses Tutorial jedoch nicht erforderlich ist. Wenn Sie das Ziel konfigurieren, übermittelt Secure Tunneling das Zugriffstoken automatisch mithilfe von MQTT an das Remote-Gerät. Weitere Informationen finden Sie unter [Methoden zur Tunnelerstellung in der AWS IoT Konsole](secure-tunneling-tutorial-open-tunnel.md#tunneling-tutorial-flows).

**Um einen Tunnel mit der Konsole zu öffnen,**

1. Gehen Sie zum [Tunnel-Hub der AWS IoT -Konsole](https://console.aws.amazon.com/iot/home#/tunnelhub) und wählen Sie **Tunnel erstellen**.  
![\[AWS IoT Konsole mit einer leeren Liste von Tunneln mit Optionen zum Erstellen, Schließen oder Löschen von Tunneln.\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/images/tunnels-page.png)

1. Wählen Sie für dieses Tutorial **Manuelle Einrichtungsmethode** zur Erstellung des Tunnels und wählen Sie dann **Weiter**. Informationen zur Verwendung der **Quick Setup Methode** zum Erstellen eines Tunnels finden Sie unter [Öffnen Sie einen Tunnel und verwenden Sie browserbasiertes SSH, um auf das Remote-Gerät zuzugreifen](tunneling-tutorial-quick-setup.md).
**Anmerkung**  
Wenn Sie auf der Detailseite eines von Ihnen erstellten Objekts einen sicheren Tunnel erstellen, können Sie wählen, ob Sie einen neuen Tunnel erstellen oder einen vorhandenen verwenden möchten. Weitere Informationen finden Sie unter [Öffnen Sie einen Tunnel und verwenden Sie browserbasiertes SSH, um auf das Remote-Gerät zuzugreifen](tunneling-tutorial-existing-tunnel.md).  
![\[Zwei Optionen für die Einrichtung einer Tunnelverbindung: Quick Setup (SSH) oder Manuelles Setup, das die Konfiguration eines lokalen Proxys und die Verwaltung von Zugriffstoken erfordert.\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/images/tunnels-choose-manual.PNG)

1. (Optional) Geben Sie die Konfigurationseinstellungen für Ihren Tunnel ein. Sie können diesen Schritt auch überspringen und mit dem nächsten Schritt fortfahren, um einen Tunnel zu erstellen. 

   Geben Sie eine Tunnelbeschreibung, eine Dauer des Tunnel-Timeouts und Ressourcen-Tags als Schlüssel-Wert-Paare ein, um Ihre Ressource leichter identifizieren zu können. Für dieses Tutorial können Sie die Zielkonfiguration überspringen.
**Anmerkung**  
Für die Dauer der Offenhaltung eines Tunnels werden Ihnen keine Gebühren in Rechnung gestellt. Gebühren fallen nur an, wenn Sie einen neuen Tunnel erstellen. Preisinformationen finden Sie im Abschnitt **Secure Tunneling** unter [AWS IoT Device Management -Preise](https://aws.amazon.com/iot-device-management/pricing/).

1. Laden Sie die Client-Zugriffstoken herunter und wählen Sie dann **Fertig** aus. Die Token können nicht heruntergeladen werden, nachdem Sie **Fertig** ausgewählt haben.

   Diese Token können nur einmal verwendet werden, um eine Verbindung zum Tunnel herzustellen. Wenn Sie die Token verlegen oder die Verbindung zum Tunnel unterbrochen wird, können Sie neue Token erzeugen und an Ihr Remote-Gerät senden, um die Verbindung zum Tunnel wiederherzustellen.  
![\[Quell- und Zielzugriffstoken zum Erstellen einer sicheren Tunnelverbindung mit Anweisungen zum Rotieren und erneuten Senden von Token, falls erforderlich.\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/images/tunnel-success.png)

**So öffnen Sie einen Tunnel über die API**  
Um einen neuen Tunnel zu öffnen, können Sie die [OpenTunnel](https://docs.aws.amazon.com/iot/latest/apireference/API_iot-secure-tunneling_OpenTunnel.html)API-Operation verwenden. Sie können mithilfe der API auch zusätzliche Konfigurationen angeben, z. B. die Tunneldauer und die Zielkonfiguration.

```
aws iotsecuretunneling open-tunnel \ 
    --region us-east-1 \ 
    --endpoint https://api.us-east-1.tunneling.iot.amazonaws.com
```

Wenn Sie diesen Befehl ausführen, wird ein neuer Tunnel erstellt und Sie erhalten die Quell- und Zielzugriffstoken. 

```
{
    "tunnelId": "01234567-89ab-0123-4c56-789a01234bcd",
    "tunnelArn": "arn:aws:iot:us-east-1:123456789012:tunnel/01234567-89ab-0123-4c56-789a01234bcd",
    "sourceAccessToken": "<SOURCE_ACCESS_TOKEN>",
    "destinationAccessToken": "<DESTINATION_ACCESS_TOKEN>"
}
```

## Tunnelzugriffstoken erneut senden
<a name="resend-access-tokens"></a>

Die Token, die Sie beim Erstellen eines Tunnels erhalten haben, können nur einmal verwendet werden, um eine Verbindung zum Tunnel herzustellen. Wenn Sie das Zugriffstoken verlegen oder der Tunnel unterbrochen wird, können Sie neue Zugriffstoken mit MQTT ohne zusätzliche Kosten erneut an das Remote-Gerät senden. AWS IoT Sicheres Tunneling widerruft die aktuellen Token und gibt neue Zugriffstoken zurück, um die Verbindung zum Tunnel wiederherzustellen.

**Um die Token von der Konsole aus zu rotieren,**

1. Gehen Sie zum [Tunnel-Hub der AWS IoT Konsole und wählen Sie den](https://console.aws.amazon.com/iot/home#/tunnels) Tunnel aus, den Sie erstellt haben.

1. Wählen Sie auf der Seite mit den Tunneldetails die Option **Neue Zugriffstoken generieren** und dann **Weiter** aus.

1. Laden Sie die neuen Zugriffstoken für Ihren Tunnel herunter und wählen Sie **Fertig**. Diese Token können nur einmal verwendet werden. Wenn Sie die Token verlegen oder der Tunnel unterbrochen wird, können Sie neue Zugriffstoken senden, um die Verbindung zum Tunnel wiederherzustellen.  
![\[Zugriffstoken für Quell- und Zielgeräte mit Optionen zum Kopieren oder Herunterladen. In Text wird erklärt, dass durch rotierende Token aktuelle Token gesperrt und neue Einmal-Tokens für die Wiederverbindung eines unterbrochenen Tunnels generiert werden.\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/images/tunnel-token-rotated.PNG)

**So rotieren Sie Zugriffstokens über die API**  
Um die Tunnelzugriffstoken rotieren zu lassen, können Sie den [RotateTunnelAccessToken](https://docs.aws.amazon.com/iot/latest/apireference/API_iot-secure-tunneling_RotateTunnelAccessToken.html)API-Vorgang verwenden, um die aktuellen Token zu widerrufen und neue Zugriffstoken für die erneute Verbindung mit dem Tunnel zurückzugeben. Mit dem folgenden Befehl werden beispielsweise die Zugriffstoken für das Zielgerät rotiert, *`RemoteThing1`*. 

```
aws iotsecuretunneling rotate-tunnel-access-token \ 
    --tunnel-id <tunnel-id> \ 
    --client-mode DESTINATION \ 
    --destination-config thingName=<RemoteThing1>,services=SSH \ 
    --region <region>
```

Wenn Sie diesen Befehl ausführen, wird das neue Zugriffstoken generiert, siehe folgendes Beispiel. Das Token wird dann über MQTT an das Gerät übermittelt, um eine Verbindung zum Tunnel herzustellen, sofern der Geräteagent korrekt eingerichtet ist.

```
{
    "destinationAccessToken": "destination-access-token", 
    "tunnelArn": "arn:aws:iot:region:account-id:tunnel/tunnel-id"
}
```

Beispiele, die zeigen, wie und wann die Zugriffstoken rotiert werden müssen, finden Sie unter [Lösung von Verbindungsproblemen beim AWS IoT sicheren Tunneling durch rotierende Client-Zugriffstoken](iot-secure-tunneling-troubleshooting.md).

## Konfigurieren und Starten des lokalen Proxys
<a name="start-local-proxy"></a>

Um eine Verbindung zum Remote-Gerät herzustellen, öffnen Sie ein Terminal auf Ihrem Laptop und konfigurieren und starten Sie den lokalen Proxy. Der lokale Proxy überträgt Daten, die von der auf dem Quellgerät ausgeführten Anwendung gesendet werden, mithilfe von sicherem Tunneling über eine WebSocket sichere Verbindung. Sie können die lokale Proxyquelle von herunterladen. [GitHub](https://github.com/aws-samples/aws-iot-securetunneling-localproxy)

Öffnen Sie ein Terminal auf Ihrem Laptop, kopieren Sie das Zugriffstoken für den Quell-Client und starten Sie den lokalen Proxy im Quellmodus. Im Folgenden finden Sie einen Beispielbefehl zum Starten des lokalen Proxys. Im folgenden Befehl ist der lokale Proxy so konfiguriert, dass er auf neue Verbindungen an Port 5555 wartet. In diesem Befehl gilt Folgendes:
+ `-r`gibt die an AWS-Region, was dieselbe Region sein muss, in der Ihr Tunnel erstellt wurde.
+ `-s` gibt den Port an, zu dem der Proxy eine Verbindung herstellen soll.
+ `-t` gibt den Client-Token-Text an.

```
./localproxy -r us-east-1 -s 5555 -t source-client-access-token
```

Wenn Sie diesen Befehl ausführen, wird der lokale Proxy im Quellmodus gestartet. Wenn Sie nach der Ausführung des Befehls die folgende Fehlermeldung erhalten, richten Sie den CA-Pfad ein. Weitere Informationen finden Sie unter [Lokaler Proxy für sicheres Tunneling](https://github.com/aws-samples/aws-iot-securetunneling-localproxy) auf. GitHub

```
Could not perform SSL handshake with proxy server: certificate verify failed
```

Im Folgenden finden Sie eine Beispielausgabe für die Ausführung des lokalen Proxys im `source`-Modus.

```
...
...

Starting proxy in source mode
Attempting to establish web socket connection with endpoint wss://data.tunneling.iot.us-east-1.amazonaws.com:443
Resolved proxy  server IP: 10.10.0.11
Connected successfully with proxy server
Performing SSL handshake with proxy server	
Successfully completed SSL handshake with proxy server
HTTP/1.1 101 Switching Protocols

...

Connection: upgrade
channel-id: 01234567890abc23-00001234-0005678a-b1234c5de677a001-2bc3d456
upgrade: websocket

...

Web socket session ID: 01234567890abc23-00001234-0005678a-b1234c5de677a001-2bc3d456
Web socket subprotocol selected: aws.iot.securetunneling-2.0
Successfully established websocket connection with proxy server: wss://data.tunneling.iot.us-east-1.amazonaws.com:443
Setting up web socket pings for every 5000 milliseconds
Scheduled next read:

...

Starting web socket read loop continue reading...
Resolved bind IP: 127.0.0.1
Listening for new connection on port 5555
```

## Starten einer SSH-Sitzung
<a name="start-ssh-session"></a>

Öffnen Sie ein anderes Terminal und verwenden Sie den folgenden Befehl, um eine neue SSH-Sitzung zu starten, indem Sie eine Verbindung zum lokalen Proxy auf Port 5555 herstellen.

```
ssh username@localhost -p 5555
```

Möglicherweise werden Sie zur Eingabe eines Passworts für die SSH-Sitzung aufgefordert. Wenn Sie mit der SSH-Sitzung fertig sind, geben Sie **exit** ein, um die Sitzung zu schließen.

## Bereinigen
<a name="tunnel-cleanup-manual"></a>
+ 

**Tunnel schließen**  
Wir empfehlen, den Tunnel zu schließen, wenn Sie ihn nicht mehr verwenden. Ein Tunnel kann auch geschlossen werden, wenn er länger als die angegebene Tunneldauer geöffnet blieb. Ein Tunnel kann nicht wieder geöffnet werden, wenn er einmal geschlossen wurde. Sie können einen Tunnel trotzdem duplizieren, indem Sie den geschlossenen Tunnel öffnen und dann **Tunnel duplizieren** auswählen. Geben Sie die Tunneldauer an, die Sie verwenden möchten, und erstellen Sie dann den neuen Tunnel.
  + Um einen einzelnen Tunnel oder mehrere Tunnel von der AWS IoT -Konsole aus zu schließen, wechseln Sie zum [Tunnel-Hub](https://console.aws.amazon.com/iot/home#/tunnels), wählen Sie die Tunnel aus, die Sie schließen möchten, und wählen Sie dann **Tunnel schließen** aus.
  + Verwenden Sie den API-Vorgang, um einen einzelnen Tunnel oder mehrere Tunnel mithilfe der AWS IoT API-Referenz-API zu schließen. [CloseTunnel](https://docs.aws.amazon.com/iot/latest/apireference/API_iot-secure-tunneling_CloseTunnel.html)

    ```
    aws iotsecuretunneling close-tunnel \ 
        --tunnel-id "01234567-89ab-0123-4c56-789a01234bcd"
    ```
+ 

**Löschen eines Tunnels**  
Sie können einen Tunnel dauerhaft aus Ihrem löschen AWS-Konto.
**Warnung**  
Dieser Löschvorgang ist dauerhaft und kann nicht rückgängig gemacht werden.
  + Um einen einzelnen Tunnel oder mehrere Tunnel von der AWS IoT -Konsole aus zu löschen, wechseln Sie zum [Tunnel-Hub](https://console.aws.amazon.com/iot/home#/tunnels), wählen Sie die Tunnel aus, die Sie löschen möchten, und wählen Sie dann **Tunnel löschen** aus.
  + Verwenden Sie den API-Vorgang, um einen einzelnen Tunnel oder mehrere Tunnel mithilfe der AWS IoT [CloseTunnel](https://docs.aws.amazon.com/iot/latest/apireference/API_iot-secure-tunneling_CloseTunnel.html)API-Referenz-API zu löschen. Wenn Sie die API verwenden, setzen Sie das `delete`-Flag auf `true`.

    ```
    aws iotsecuretunneling close-tunnel \ 
        --tunnel-id "01234567-89ab-0123-4c56-789a01234bcd"
        --delete true
    ```