Halaman ini menjelaskan cara menggunakan CLI gcloud
untuk terhubung ke workstation Anda dari mesin lokal menggunakan SSH (atau protokol TCP lainnya).
Cloud Workstations menggunakan tunnel untuk meneruskan traffic TCP antara port di mesin lokal Anda dan port di workstation Anda tanpa mengekspos workstation Anda secara terbuka ke internet. Koneksi diautentikasi menggunakan
kredensial dari CLI gcloud
dan diizinkan sesuai dengan
kebijakan IAM workstation target.
Setelah tunnel TCP dibuat antara port lokal dan workstation, Anda dapat menggunakannya untuk meneruskan traffic dari klien SSH, curl, atau aplikasi lain yang menggunakan TCP.
Untuk mempermudah, Cloud Workstations menyediakan perintah
gcloud workstations ssh
yang membuat tunnel TCP dan menjalankan klien SSH dengan satu perintah CLI gcloud
.
Untuk semua kasus penggunaan lainnya, gunakan perintah
gcloud workstations start-tcp-tunnel
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.
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the
gcloud
CLI with your federated identity.Pastikan Anda memiliki peran IAM Pengguna Cloud Workstations di workstation yang akan Anda hubungkan.
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 akan menerima traffic. Jika tidak ditentukan, traffic akan dikirim ke port22
. Semua image Cloud Workstations yang telah dikonfigurasi menyertakan server SSH yang berjalan di port workstation22
.LOCAL_PORT
(Opsional): port localhost yang menjadi asal pengiriman traffic. Nomor port yang valid adalah1024
hingga65535
. Jika Anda menghilangkan flag--local-host-port
atau menentukan port0
, port yang tidak digunakan akan dipilih secara otomatis.WORKSTATION_NAME
: nama workstation.Jalankan perintah CLI
gcloud
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_PORT
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.LOCAL_PORT
(Opsional): port localhost yang menjadi asal pengiriman traffic. Nomor port yang valid adalah1024
hingga65535
. Jika Anda menghilangkan tanda--local-host-port
atau menentukan port0
, port yang tidak digunakan akan dipilih secara otomatis.WORKSTATION_NAME
: nama workstation.WORKSTATION_PORT
: port workstation tempat traffic harus dikirim. Image Cloud Workstations yang telah dikonfigurasi sebelumnya mencakup server SSH yang berjalan di port workstation22
.
Perintah CLI
gcloud
melakukan uji konektivitas dengan workstation, membuka tunnel, lalu menampilkan nomor port:Listening on port [LOCAL_PORT].
Semua traffic yang dikirim ke
localhost:LOCAL_PORT
diteruskan ke workstation. Port hanya dapat diakses oleh aplikasi yang berjalan di komputer lokal Anda.Biarkan CLI
gcloud
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
curl
di mesin lokal untuk terhubung ke server di workstation:curl localhost:LOCAL_PORT Hello, world!
Setelah selesai, kembali ke terminal tempat Anda memulai tunnel TCP dan hentikan CLI
gcloud
dengan menekan Control+C.- Menetapkan variabel lingkungan container dalam sesi SSH untuk image container kustom
- Mengaktifkan penerusan X11 untuk image container kustom
Menghubungkan ke workstation menggunakan SSH
Untuk membuat koneksi SSH yang aman ke workstation Anda, gunakan perintah
gcloud workstations ssh
, 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:
Opsional: Untuk meneruskan tanda dan posisi ke penerapan 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
:
Menggunakan server SSH di port yang berbeda
Image container kustom
juga dapat menggunakan server SSH di port mana pun. Untuk mendukung koneksi dari tunnel CLI gcloud
, Anda harus mengonfigurasi server SSH kustom untuk mengizinkan autentikasi sandi dan menetapkan target pengguna dengan sandi kosong.
Cloud Workstations menggunakan
Cloud IAM
untuk membantu memastikan bahwa hanya traffic yang sah yang dikirim ke server SSH.