Halaman ini menjelaskan cara menggunakan gcloud CLI untuk terhubung ke workstation Anda dari komputer lokal menggunakan SSH (atau protokol TCP lainnya).
Cloud Workstations menggunakan tunnel untuk meneruskan traffic TCP antara port di komputer lokal Anda dan port di workstation Anda tanpa mengekspos workstation Anda secara terbuka ke internet. Koneksi diautentikasi menggunakan kredensial dari gcloud CLI dan diotorisasi sesuai dengan kebijakan IAM workstation target.
Setelah tunnel TCP dibuat antara port lokal dan workstation Anda, Anda dapat menggunakannya untuk meneruskan traffic dari klien SSH, curl, atau aplikasi lain yang menggunakan TCP.
Untuk memudahkan, Cloud Workstations menyediakan perintah
gcloud workstations ssh, yang membuat tunnel TCP dan menjalankan klien SSH dengan satu
perintah gcloud CLI.
Untuk semua kasus penggunaan lainnya, gunakan
gcloud workstations start-tcp-tunnel
perintah untuk membuat tunnel TCP dan menjalankan aplikasi yang akan menggunakan
tunnel (misalnya, curl) di terminal terpisah.
Sebelum memulai
Jika Anda belum memiliki workstation untuk terhubung, siapkan workstation.
Instal Google Cloud CLI. Setelah penginstalan, inisialisasi Google Cloud CLI dengan menjalankan perintah berikut:
gcloud initPastikan Anda memiliki peran IAM Pengguna Cloud Workstations di workstation yang akan Anda hubungkan.
Menghubungkan ke workstation Anda menggunakan SSH
Untuk membuat koneksi SSH yang aman ke workstation Anda, gunakan
gcloud workstations ssh
perintah, yang memulai tunnel TCP dan menjalankan klien SSH.
Untuk menyalin perintah ke buffer salin-tempel, klik Salin contoh kode , lalu tempel perintah ke jendela terminal lokal:
gcloud workstations ssh \
--project=PROJECT_ID \
--region=REGION \
--cluster=CLUSTER_NAME \
--config=CONFIG_NAME \
--port=WORKSTATION_PORT \
--local-host-port=localhost:LOCAL_PORT \
WORKSTATION_NAME
Ganti nilai berikut:
PROJECT_ID: Google Cloud project ID untuk project yang berisi workstation. Jika dihilangkan, project saat ini akan digunakan.REGION: region tempat cluster workstation berada—misalnya,us-central1.CLUSTER_NAME: nama cluster workstation yang berisi workstation.CONFIG_NAME: nama konfigurasi workstation yang berisi workstation ini.WORKSTATION_PORT(Opsional): port di workstation yang menjadi tujuan pengiriman traffic. Jika dihilangkan, traffic akan dikirim ke port22. Semua image Cloud Workstations yang telah dikonfigurasi sebelumnya menyertakan server SSH yang berjalan di port workstation22.LOCAL_PORT(Opsional): port localhost yang menjadi sumber pengiriman traffic. Nomor port yang valid adalah1024hingga65535. Jika Anda menghapus flag--local-host-portatau menentukan port0, port yang tidak digunakan akan dipilih secara otomatis.WORKSTATION_NAME: nama workstation.
Opsional: Untuk meneruskan flag dan posisi ke implementasi ssh yang mendasarinya, tambahkan ke perintah setelah tanda hubung ganda (--).
Menggunakan tunnel TCP untuk meneruskan traffic TCP arbitrer ke workstation Anda
Untuk terhubung ke workstation menggunakan aplikasi TCP selain ssh, gunakan perintah
gcloud workstations start-tcp-tunnel:
Jalankan perintah
gcloudCLI berikut untuk membuat tunnel TCP yang diautentikasi.Untuk menyalin perintah ke buffer salin-tempel, klik Salin contoh kode , lalu tempel perintah ke jendela terminal lokal:
gcloud workstations start-tcp-tunnel \ --project=PROJECT_ID \ --region=REGION \ --cluster=CLUSTER_NAME \ --config=CONFIG_NAME \ --local-host-port=localhost:LOCAL_PORT \ WORKSTATION_NAME \ WORKSTATION_PORTGanti nilai berikut:
PROJECT_ID: Google Cloud project ID untuk project yang berisi workstation. Jika dihilangkan, project saat ini akan digunakan.REGION: region tempat cluster workstation berada—misalnya,us-central1.CLUSTER_NAME: nama cluster workstation yang berisi workstation.CONFIG_NAME: nama konfigurasi workstation yang berisi workstation ini.LOCAL_PORT(Opsional): port localhost yang menjadi sumber pengiriman traffic. Nomor port yang valid adalah1024hingga65535. Jika Anda menghapus flag--local-host-portatau menentukan port0, port yang tidak digunakan akan dipilih secara otomatis.WORKSTATION_NAME: nama workstation.WORKSTATION_PORT: port workstation yang menjadi tujuan pengiriman traffic. Image Cloud Workstations yang telah dikonfigurasi sebelumnya menyertakan server SSH yang berjalan di port workstation22.
Perintah
gcloudCLI melakukan uji konektivitas dengan workstation, membuka tunnel, lalu menampilkan nomor port:Listening on port [LOCAL_PORT].Semua traffic yang dikirim ke
localhost:LOCAL_PORTditeruskan ke workstation. Port hanya dapat diakses oleh aplikasi yang berjalan di komputer lokal Anda.Biarkan
gcloudCLI berjalan dan buka terminal lain untuk menjalankan aplikasi yang terhubung ke workstation Anda.Misalnya, jika Anda menjalankan server di workstation yang melayani port WORKSTATION_PORT, dan pada langkah sebelumnya Anda membuat tunnel TCP yang meneruskan traffic antara port lokal LOCAL_PORT dan port workstation WORKSTATION_PORT, Anda dapat menjalankan
curldi komputer lokal untuk terhubung ke server di workstation Anda:curl localhost:LOCAL_PORT Hello, world!Setelah selesai, kembali ke terminal tempat Anda memulai tunnel TCP dan hentikan
gcloudCLI dengan menekan Control+C.
Menggunakan server SSH di port yang berbeda
Image container kustom
juga dapat menggunakan server SSH di port mana pun. Untuk mendukung koneksi dari tunnel gcloud CLI, Anda harus mengonfigurasi server SSH kustom untuk mengizinkan autentikasi sandi dan menetapkan pengguna target dengan sandi kosong.
Cloud Workstations uses
Cloud IAM
untuk membantu memastikan bahwa hanya traffic yang diotorisasi yang dikirim ke server SSH.
Langkah berikutnya
- Menetapkan variabel lingkungan container dalam sesi SSH untuk image container kustom
- Mengaktifkan penerusan X11 untuk image container kustom