

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.

# Wie man den lokalen Proxy benutzt
<a name="how-use-local-proxy"></a>

Sie können den lokalen Proxy auf den Quell- und Zielgeräten ausführen, um Daten an die sicheren Tunneling-Endpunkte zu übertragen. Wenn sich Ihre Geräte in einem Netzwerk befinden, das einen Web-Proxy verwendet, kann der Web-Proxy die Verbindungen abfangen, bevor er sie an das Internet weiterleitet. In diesem Fall müssen Sie Ihren lokalen Proxy so konfigurieren, dass er den Web-Proxy verwendet. Weitere Informationen finden Sie unter [Konfigurieren Sie den lokalen Proxy für Geräte, die einen Web-Proxy verwenden](configure-local-proxy-web-proxy.md). 

## Workflow des lokalen Proxy
<a name="local-proxy-workflow"></a>

Die folgenden Schritte zeigen, wie der lokale Proxy auf den Quell- und Zielgeräten ausgeführt wird.

1. 

**Lokalen Proxy mit Secure Tunneling verbinden**  
Der lokale Proxy stellt zunächst eine Verbindung zum Secure Tunneling her. Wenn Sie den lokalen Proxy starten, verwenden Sie die folgenden Argumente:
   + Das `-r` Argument zur Angabe des, AWS-Region in dem der Tunnel geöffnet wird.
   + Verwenden Sie das `-t`-Argument, um entweder das vom `OpenTunnel` zurückgegebene Quell- oder Zielclient-Zugriffstoken zu übergeben.
**Anmerkung**  
Zwei lokale Proxys, die dasselbe Client-Zugriffstoken verwenden, können nicht gleichzeitig verbunden werden.

1. 

**Quell- oder Zielaktionen ausführen**  
Nachdem die WebSocket Verbindung hergestellt wurde, führt der lokale Proxy je nach Konfiguration entweder Aktionen im Quellmodus oder im Zielmodus aus.

   Standardmäßig versucht der lokale Proxy, erneut eine Verbindung zum Secure Tunneling herzustellen, wenn irgendwelche input/output (I/O-) Fehler auftreten oder wenn die WebSocket Verbindung unerwartet geschlossen wird. Dadurch wird die TCP-Verbindung geschlossen. Wenn TCP-Socket-Fehler auftreten, sendet der lokale Proxy eine Nachricht über den Tunnel, um die andere Seite zu benachrichtigen, dass die TCP-Verbindung geschlossen wird. Standardmäßig verwendet der lokale Proxy immer die SSL-Kommunikation.

1. 

**Lokalen Proxy stoppen**  
Nachdem Sie den Tunnel verwendet haben, ist es sicher, den lokalen Proxyprozess zu stoppen. Wir empfehlen Ihnen, den Tunnel explizit durch Aufrufen von `CloseTunnel` zu schließen. Aktive Tunnelclients werden möglicherweise nicht sofort nach dem Aufruf geschlossen. `CloseTunnel`

Weitere Informationen zur Verwendung von zum Öffnen eines Tunnels und AWS-Managementkonsole zum Starten einer SSH-Sitzung finden Sie unter[Öffnen Sie einen Tunnel und starten Sie eine SSH-Sitzung zum Remote-Gerät](secure-tunneling-tutorial-open-tunnel.md).

## Bewährte Methoden des lokalen Proxy
<a name="local-proxy-security"></a>

Befolgen Sie beim Ausführen des lokalen Proxy die folgenden bewährten Methoden:
+ Vermeiden Sie beim Übergeben von Zugriffstoken die Verwendung des lokalen Proxy-Arguments `-t`. Es wird empfohlen, dass Sie die `AWSIOT_TUNNEL_ACCESS_TOKEN`-Umgebungsvariable verwenden, um das Zugriffstoken für den lokalen Proxy festzulegen.
+ Führen Sie die ausführbare Datei des lokalen Proxys mit den geringsten Berechtigungen im Betriebssystem oder in der Umgebung aus.
  + Führen Sie den lokalen Proxy nicht als Administrator unter Windows aus.
  + Führen Sie den lokalen Proxy als Root unter Linux und macOS aus.
+ Erwägen Sie, den lokalen Proxy auf separaten Hosts, Containern, Sandboxen, Chroot-Jail oder einer virtualisierten Umgebung auszuführen.
+ Erstellen Sie den lokalen Proxy mit relevanten Sicherheits-Flags, abhängig von Ihrer Toolchain.
+ Verwenden Sie auf Geräten mit mehreren Netzwerkschnittstellen das `-b`-Argument, um den TCP-Socket an die Netzwerkschnittstelle zu binden, die zur Kommunikation mit der Zielanwendung verwendet wird. 

## Beispielbefehl und Ausgabe
<a name="example-cmd-output-localproxy"></a>

Hier ein Beispiel für einen Befehl, den Sie ausführen, und die entsprechende Ausgabe. Das Beispiel zeigt, wie der lokale Proxy sowohl im `source`- als auch im `destination`-Modus konfiguriert werden kann. Der lokale Proxy aktualisiert das HTTPS-Protokoll, WebSockets um eine langlebige Verbindung herzustellen, und beginnt dann mit der Übertragung von Daten über die Verbindung an die Endpunkte der sicheren Tunneling-Geräte.

**Bevor Sie diese Befehle ausführen:**  
Müssen Sie einen Tunnel geöffnet und die Client-Zugriffstoken für die Quelle und das Ziel abgerufen haben. Müssen Sie auch den lokalen Proxy wie zuvor beschrieben erstellt haben. Um den lokalen Proxy zu erstellen, öffnen Sie den [lokalen Proxy-Quellcode](https://github.com/aws-samples/aws-iot-securetunneling-localproxy) im GitHub Repository und folgen Sie den Anweisungen zum Erstellen und Installieren des lokalen Proxys.

**Anmerkung**  
Die folgenden Befehle, die in den Beispielen verwendet werden, verwenden das `verbosity`-Flag, um einen Überblick über die verschiedenen zuvor beschriebenen Schritte zu veranschaulichen, nachdem Sie den lokalen Proxy ausgeführt haben. Wir empfehlen, dass Sie das Flag nur für Tests verwenden.

**Lokalen Proxy im Quellmodus betreiben**  
Die folgenden Befehle zeigen, wie der lokale Proxy im Quellmodus ausgeführt wird.

------
#### [ Linux/macOS ]

Führen Sie unter Linux oder macOS die folgenden Befehle im Terminal aus, um den lokalen Proxy auf Ihrer Quelle zu konfigurieren und zu starten.

```
export AWSIOT_TUNNEL_ACCESS_TOKEN=${access_token}
./localproxy -s 5555 -v 5 -r us-west-2
```

Wobei Folgendes gilt:
+ `-s` ist der Quell-Listen-Port, der den lokalen Proxy im Quellmodus startet.
+ `-v` ist die Ausführlichkeit der Ausgabe, die ein Wert zwischen null und dechs sein kann.
+ `-r` ist die Endpunktregion, in der der Tunnel geöffnet ist.

Weitere Informationen zu den Parametern finden Sie unter [Mit Befehlszeilenargumenten festgelegte Optionen](https://github.com/aws-samples/aws-iot-securetunneling-localproxy#options-set-via-command-line-arguments).

------
#### [ Windows ]

In Windows konfigurieren Sie den lokalen Proxy ähnlich wie für Linux oder macOS, aber die Art und Weise, wie Sie die Umgebungsvariablen definieren, unterscheidet sich von den anderen Plattformen. Führen Sie die folgenden Befehle im `cmd`-Fenster aus, um den lokalen Proxy auf Ihrer Quelle zu konfigurieren und zu starten.

```
set AWSIOT_TUNNEL_ACCESS_TOKEN=${access_token}
.\localproxy -s 5555 -v 5 -r us-west-2
```

Wobei Folgendes gilt:
+ `-s` ist der Quell-Listen-Port, der den lokalen Proxy im Quellmodus startet.
+ `-v` ist die Ausführlichkeit der Ausgabe, die ein Wert zwischen null und dechs sein kann.
+ `-r` ist die Endpunktregion, in der der Tunnel geöffnet ist.

Weitere Informationen zu den Parametern finden Sie unter [Mit Befehlszeilenargumenten festgelegte Optionen](https://github.com/aws-samples/aws-iot-securetunneling-localproxy#options-set-via-command-line-arguments).

------

**Anmerkung**  
Wenn Sie die neueste Version des lokalen Proxys im Quellmodus verwenden, müssen Sie den AWS CLI Parameter aus Gründen der Abwärtskompatibilität `--destination-client-type V1` auf dem Quellgerät angeben. Dies gilt, wenn Sie eine Verbindung zu einem der folgenden Zielmodi herstellen:  
AWS IoT Geräte-Client
AWS IoT Komponente für sicheres Tunneling oder Komponente für AWS IoT Greengrass Version 2 sicheres Tunneling
Beliebiger AWS IoT Secure Tunneling-Democode, der vor 2022 geschrieben wurde
1.X-Versionen des lokalen Proxys
Dieser Parameter gewährleistet die korrekte Kommunikation zwischen dem aktualisierten Quell-Proxy und älteren Zielclients. Weitere Informationen zu lokalen Proxyversionen finden Sie unter [AWS IoT Secure Tunneling on. *GitHub*](https://github.com/aws-samples/aws-iot-securetunneling-localproxy/blob/main/README.md#as-of-312-may-2024-update---destination-client-type-v1-will-be-a-required-parameter-when-connecting-with-the-following)

Im Folgenden finden Sie ein Beispiel 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-west-2.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-west-2.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
```

**Lokalen Proxy im Zielmodus betreiben**  
Die folgenden Befehle zeigen, wie der lokale Proxy im Zielmodus ausgeführt wird.

------
#### [ Linux/macOS ]

Führen Sie unter Linux oder macOS die folgenden Befehle im Terminal aus, um den lokalen Proxy auf Ihrem Ziel zu konfigurieren und zu starten.

```
export AWSIOT_TUNNEL_ACCESS_TOKEN=${access_token}
./localproxy -d 22 -v 5 -r us-west-2
```

Wobei Folgendes gilt:
+ `-d` ist die Zielanwendung, die den lokalen Proxy im Zielmodus startet.
+ `-v` ist die Ausführlichkeit der Ausgabe, die ein Wert zwischen null und dechs sein kann.
+ `-r` ist die Endpunktregion, in der der Tunnel geöffnet ist.

Weitere Informationen zu den Parametern finden Sie unter [Mit Befehlszeilenargumenten festgelegte Optionen](https://github.com/aws-samples/aws-iot-securetunneling-localproxy#options-set-via-command-line-arguments).

------
#### [ Windows ]

In Windows konfigurieren Sie den lokalen Proxy ähnlich wie für Linux oder macOS, aber die Art und Weise, wie Sie die Umgebungsvariablen definieren, unterscheidet sich von den anderen Plattformen. Führen Sie die folgenden Befehle im `cmd`-Fenster aus, um den lokalen Proxy auf Ihrem Ziel zu konfigurieren und zu starten.

```
set AWSIOT_TUNNEL_ACCESS_TOKEN=${access_token}
.\localproxy -d 22 -v 5 -r us-west-2
```

Wobei Folgendes gilt:
+ `-d` ist die Zielanwendung, die den lokalen Proxy im Zielmodus startet.
+ `-v` ist die Ausführlichkeit der Ausgabe, die ein Wert zwischen null und dechs sein kann.
+ `-r` ist die Endpunktregion, in der der Tunnel geöffnet ist.

Weitere Informationen zu den Parametern finden Sie unter [Mit Befehlszeilenargumenten festgelegte Optionen](https://github.com/aws-samples/aws-iot-securetunneling-localproxy#options-set-via-command-line-arguments).

------

**Anmerkung**  
Wenn Sie die neueste Version des lokalen Proxys im Zielmodus verwenden, müssen Sie den AWS CLI Parameter aus Gründen der Abwärtskompatibilität `--destination-client-type V1` auf dem Zielgerät angeben. Dies gilt, wenn Sie eine Verbindung zu einem der folgenden Quellmodi herstellen:  
Browserbasiertes Secure Tunneling von der Konsole aus. AWS 
1.X-Versionen des lokalen Proxys
Dieser Parameter gewährleistet die korrekte Kommunikation zwischen dem aktualisierten Ziel-Proxy und älteren Quellclients. Weitere Informationen zu lokalen Proxyversionen finden Sie unter [AWS IoT Secure Tunneling on. *GitHub*](https://github.com/aws-samples/aws-iot-securetunneling-localproxy/blob/main/README.md#as-of-312-may-2024-update---destination-client-type-v1-will-be-a-required-parameter-when-connecting-with-the-following)

Im Folgenden finden Sie ein Beispiel für die Ausführung des lokalen Proxys im `destination` Modus.

```
...
...

Starting proxy in destination mode
Attempting to establish web socket connection with endpoint wss://data.tunneling.iot.us-west-2.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-west-2.amazonaws.com:443
Setting up web socket pings for every 5000 milliseconds
Scheduled next read:

...

Starting web socket read loop continue reading...
```