

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Cara menggunakan proxy lokal
<a name="how-use-local-proxy"></a>

Anda dapat menjalankan proxy lokal pada perangkat sumber dan tujuan untuk mengirimkan data ke titik akhir tunneling yang aman. Jika perangkat Anda berada dalam jaringan yang menggunakan proxy web, proxy web dapat mencegat koneksi sebelum meneruskannya ke internet. Dalam hal ini, Anda harus mengonfigurasi proxy lokal Anda untuk menggunakan proxy web. Untuk informasi selengkapnya, lihat [Konfigurasikan proxy lokal untuk perangkat yang menggunakan proxy web](configure-local-proxy-web-proxy.md). 

## Alur kerja proxy lokal
<a name="local-proxy-workflow"></a>

Langkah-langkah berikut menunjukkan bagaimana proxy lokal dijalankan pada perangkat sumber dan tujuan.

1. 

**Connect proxy lokal untuk mengamankan tunneling**  
Pertama, proxy lokal harus membuat koneksi untuk mengamankan tunneling. Saat Anda memulai proxy lokal, gunakan argumen berikut:
   + `-r`Argumen untuk menentukan Wilayah AWS di mana terowongan dibuka.
   + `-t`Argumen untuk meneruskan token akses klien sumber atau tujuan dikembalikan dari`OpenTunnel`.
**catatan**  
Dua proxy lokal yang menggunakan nilai token akses klien yang sama tidak dapat dihubungkan pada saat yang bersamaan.

1. 

**Lakukan tindakan sumber atau tujuan**  
Setelah WebSocket koneksi dibuat, proxy lokal melakukan mode sumber atau tindakan mode tujuan, tergantung pada konfigurasinya.

   Secara default, proxy lokal mencoba untuk menyambung kembali untuk mengamankan tunneling jika terjadi kesalahan input/output (I/O) atau jika WebSocket koneksi ditutup secara tidak terduga. Hal ini menyebabkan koneksi TCP ditutup. Jika terjadi kesalahan soket TCP, proxy lokal mengirim pesan melalui terowongan untuk memberi tahu pihak lain untuk menutup koneksi TCP-nya. Secara default, proxy lokal selalu menggunakan komunikasi SSL.

1. 

**Hentikan proxy lokal**  
Setelah Anda menggunakan terowongan, aman untuk menghentikan proses proxy lokal. Kami menyarankan Anda menutup terowongan secara eksplisit dengan menelepon. `CloseTunnel` Klien terowongan aktif mungkin tidak ditutup tepat setelah menelepon`CloseTunnel`.

Untuk informasi lebih lanjut tentang cara menggunakan Konsol Manajemen AWS untuk membuka terowongan dan memulai sesi SSH, lihat[Buka terowongan dan mulai sesi SSH ke perangkat jarak jauh](secure-tunneling-tutorial-open-tunnel.md).

## Praktik terbaik proxy lokal
<a name="local-proxy-security"></a>

Saat menjalankan proxy lokal, ikuti praktik terbaik berikut:
+ Hindari penggunaan argumen proxy `-t` lokal untuk meneruskan token akses. Kami menyarankan Anda menggunakan variabel `AWSIOT_TUNNEL_ACCESS_TOKEN` lingkungan untuk mengatur token akses untuk proxy lokal.
+ Jalankan proxy lokal yang dapat dieksekusi dengan hak istimewa paling sedikit di sistem operasi atau lingkungan.
  + Hindari menjalankan proxy lokal sebagai administrator di Windows.
  + Hindari menjalankan proxy lokal sebagai root di Linux dan macOS.
+ Pertimbangkan untuk menjalankan proxy lokal pada host, kontainer, kotak pasir, penjara chroot, atau lingkungan virtual yang terpisah.
+ Buat proxy lokal dengan flag keamanan yang relevan, tergantung pada toolchain Anda.
+ Pada perangkat dengan beberapa antarmuka jaringan, gunakan `-b` argumen untuk mengikat soket TCP ke antarmuka jaringan yang digunakan untuk berkomunikasi dengan aplikasi tujuan. 

## Contoh perintah dan output
<a name="example-cmd-output-localproxy"></a>

Berikut ini menunjukkan contoh perintah yang Anda jalankan dan output yang sesuai. Contoh menunjukkan bagaimana proxy lokal dapat dikonfigurasi dalam keduanya `source` dan `destination` mode. Proxy lokal meningkatkan protokol HTTPS WebSockets untuk membuat koneksi berumur panjang dan kemudian mulai mentransmisikan data melalui koneksi ke titik akhir perangkat tunneling aman.

**Sebelum Anda menjalankan perintah ini:**  
Anda harus telah membuka terowongan dan memperoleh token akses klien untuk sumber dan tujuan. Anda juga harus membangun proxy lokal seperti yang dijelaskan sebelumnya. Untuk membangun proxy lokal, buka [kode sumber proxy lokal](https://github.com/aws-samples/aws-iot-securetunneling-localproxy) di GitHub repositori dan ikuti instruksi untuk membangun dan menginstal proxy lokal.

**catatan**  
Perintah berikut yang digunakan dalam contoh menggunakan `verbosity` bendera untuk mengilustrasikan ikhtisar berbagai langkah yang dijelaskan sebelumnya setelah Anda menjalankan proxy lokal. Kami menyarankan Anda menggunakan bendera ini hanya untuk tujuan pengujian.

**Menjalankan proxy lokal dalam mode sumber**  
Perintah berikut menampilkan cara menjalankan proxy lokal dalam mode sumber.

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

Di Linux atau macOS, jalankan perintah berikut di terminal untuk mengonfigurasi dan memulai proxy lokal di sumber Anda.

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

Di mana:
+ `-s`adalah port mendengarkan sumber, yang memulai proxy lokal dalam mode sumber.
+ `-v`adalah verbositas output, yang bisa menjadi nilai antara nol dan enam.
+ `-r`adalah wilayah titik akhir tempat terowongan dibuka.

Untuk informasi selengkapnya tentang parameter, lihat [Opsi yang disetel menggunakan argumen baris perintah](https://github.com/aws-samples/aws-iot-securetunneling-localproxy#options-set-via-command-line-arguments).

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

Di Windows, Anda mengonfigurasi proxy lokal yang mirip dengan yang Anda lakukan untuk Linux atau macOS, tetapi bagaimana Anda mendefinisikan variabel lingkungan berbeda dari platform lain. Jalankan perintah berikut di `cmd` jendela untuk mengkonfigurasi dan memulai proxy lokal di sumber Anda.

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

Di mana:
+ `-s`adalah port mendengarkan sumber, yang memulai proxy lokal dalam mode sumber.
+ `-v`adalah verbositas output, yang bisa menjadi nilai antara nol dan enam.
+ `-r`adalah wilayah titik akhir tempat terowongan dibuka.

Untuk informasi selengkapnya tentang parameter, lihat [Opsi yang disetel menggunakan argumen baris perintah](https://github.com/aws-samples/aws-iot-securetunneling-localproxy#options-set-via-command-line-arguments).

------

**catatan**  
Saat menggunakan versi terbaru proxy lokal dalam mode sumber, Anda harus menyertakan AWS CLI parameter `--destination-client-type V1` pada perangkat sumber untuk kompatibilitas mundur. Ini berlaku saat menghubungkan ke salah satu mode tujuan berikut:  
AWS IoT Klien Perangkat
AWS IoT Komponen Tunneling Aman atau Komponen Tunneling AWS IoT Greengrass Version 2 Aman
Kode demo Tunneling AWS IoT Aman apa pun yang ditulis sebelum 2022
Versi 1.X dari proxy lokal
Parameter ini memastikan komunikasi yang tepat antara proxy sumber yang diperbarui dan klien tujuan yang lebih lama. Untuk informasi selengkapnya tentang versi proxy lokal, lihat [Terowongan AWS IoT Aman](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) aktif. *GitHub*

Berikut ini adalah contoh output menjalankan proxy lokal dalam `source` mode.

```
...
...

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
```

**Menjalankan proxy lokal dalam mode tujuan**  
Perintah berikut menampilkan cara menjalankan proxy lokal dalam mode tujuan.

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

Di Linux atau macOS, jalankan perintah berikut di terminal untuk mengonfigurasi dan memulai proxy lokal di tujuan Anda.

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

Di mana:
+ `-d`adalah aplikasi tujuan yang memulai proxy lokal dalam mode tujuan.
+ `-v`adalah verbositas output, yang bisa menjadi nilai antara nol dan enam.
+ `-r`adalah wilayah titik akhir tempat terowongan dibuka.

Untuk informasi selengkapnya tentang parameter, lihat [Opsi yang disetel menggunakan argumen baris perintah](https://github.com/aws-samples/aws-iot-securetunneling-localproxy#options-set-via-command-line-arguments).

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

Di Windows, Anda mengonfigurasi proxy lokal yang mirip dengan yang Anda lakukan untuk Linux atau macOS, tetapi bagaimana Anda mendefinisikan variabel lingkungan berbeda dari platform lain. Jalankan perintah berikut di `cmd` jendela untuk mengkonfigurasi dan memulai proxy lokal di tujuan Anda.

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

Di mana:
+ `-d`adalah aplikasi tujuan yang memulai proxy lokal dalam mode tujuan.
+ `-v`adalah verbositas output, yang bisa menjadi nilai antara nol dan enam.
+ `-r`adalah wilayah titik akhir tempat terowongan dibuka.

Untuk informasi selengkapnya tentang parameter, lihat [Opsi yang disetel menggunakan argumen baris perintah](https://github.com/aws-samples/aws-iot-securetunneling-localproxy#options-set-via-command-line-arguments).

------

**catatan**  
Saat menggunakan versi terbaru proxy lokal dalam mode tujuan, Anda harus menyertakan AWS CLI parameter `--destination-client-type V1` pada perangkat tujuan untuk kompatibilitas mundur. Ini berlaku saat menghubungkan ke salah satu mode sumber ini:  
Tunneling Aman berbasis browser dari Konsol. AWS 
Versi 1.X dari proxy lokal
Parameter ini memastikan komunikasi yang tepat antara proxy tujuan yang diperbarui dan klien sumber lama. Untuk informasi selengkapnya tentang versi proxy lokal, lihat [Terowongan AWS IoT Aman](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) aktif. *GitHub*

Berikut ini adalah contoh output menjalankan proxy lokal dalam `destination` mode.

```
...
...

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...
```