全部产品
Search
文档中心

Elastic Compute Service:Akses instans tanpa alamat IP publik menggunakan penerusan port Session Manager CLI

更新时间:Jan 16, 2026

Session Manager CLI (ali-instance-cli) memanfaatkan Cloud Assistant dan WebSocket untuk mengaktifkan penerusan port TCP. Fitur ini memungkinkan Anda mengakses layanan pada instans yang tidak memiliki alamat IP publik secara langsung, serta menggunakan instans tersebut sebagai jump server untuk mengakses layanan jaringan pribadi lainnya.

Kasus penggunaan

Kasus penggunaan 1: Akses layanan pada instans ECS tanpa alamat IP publik.

Petakan port layanan pada instans ECS tanpa alamat IP publik (misalnya port 80 untuk Nginx, 22 untuk SSH, 3389 untuk RDP, atau 3306 untuk MySQL) ke port tertentu pada mesin lokal Anda. Anda kemudian dapat terhubung ke port lokal tersebut untuk mengakses layanan pada instans pribadi tersebut.

image

Kasus penggunaan 2: Gunakan instans sebagai jump server untuk mengakses layanan pada host pribadi lainnya.

Untuk layanan yang tidak dapat diakses secara langsung, seperti database ApsaraDB RDS for MySQL, gunakan instans ECS yang memiliki akses jaringan ke layanan target sebagai jump server. Sesi penerusan port akan menembus instans ini untuk mencapai layanan jaringan pribadi lainnya.

image
Penting

Sesi penerusan port hanya tetap aktif selama jendela command-line sedang berjalan. Jika Anda menutup jendela tersebut, sesi akan segera dihentikan.

Kasus penggunaan 1: Akses layanan pada instans ECS tanpa alamat IP publik

Selesaikan persiapan dan instal serta konfigurasikan Session Manager CLI, lalu ikuti langkah-langkah berikut.

Pada Windows

Buka PowerShell, navigasi ke direktori tempat ali-instance-cli.exe berada, lalu jalankan perintah berikut.

# Ganti INSTANCE_ID dengan ID instans tempat Anda ingin mengatur penerusan port, TARGET_PORT dengan port instans ECS target, dan LOCAL_PORT dengan port yang akan dipetakan pada mesin lokal Anda.
.\ali-instance-cli.exe portforward -i INSTANCE_ID -r TARGET_PORT -l LOCAL_PORT

Output Waiting for connections menunjukkan bahwa saluran data telah aktif. Anda kini dapat mengakses layanan pada TARGET_PORT instans tersebut dengan terhubung ke 127.0.0.1:<local_port>.

Sebagai contoh, untuk meneruskan port Nginx default 80 pada instans ECS target i-bp1****** ke port 8080 pada mesin lokal Anda, jalankan .\ali-instance-cli.exe portforward -i i-bp1****** -r 80 -l 8080.

Pada macOS atau Linux

Buka terminal, navigasi ke direktori tempat ali-instance-cli berada, lalu jalankan perintah berikut.

#Ganti INSTANCE_ID dengan ID instans tempat Anda ingin mengatur penerusan port, TARGET_PORT dengan port instans ECS target, dan LOCAL_PORT dengan port yang akan dipetakan pada mesin lokal Anda.
./ali-instance-cli portforward -i INSTANCE_ID -r TARGET_PORT -l LOCAL_PORT

Output Waiting for connections menunjukkan bahwa saluran data telah aktif. Anda kini dapat mengakses layanan pada TARGET_PORT instans tersebut dengan terhubung ke 127.0.0.1:<local_port>.

Sebagai contoh, untuk meneruskan port Nginx default 80 pada instans ECS target i-bp1****** ke port 8080 pada mesin lokal Anda, jalankan ./ali-instance-cli portforward -i i-bp1****** -r 80 -l 8080.

Kasus penggunaan 2: Gunakan instans sebagai jump server untuk mengakses layanan pada host pribadi lainnya

Selesaikan persiapan dan instal serta konfigurasikan Session Manager CLI, lalu ikuti langkah-langkah berikut.

Pada Windows

Buka PowerShell, navigasi ke direktori tempat ali-instance-cli.exe berada, lalu jalankan perintah berikut:

# Ganti INSTANCE_ID dengan ID instans jump server, TARGET_IP dengan alamat IP host target, TARGET_PORT dengan port host target, dan LOCAL_PORT dengan port yang akan dipetakan pada mesin lokal Anda.
.\ali-instance-cli.exe portforward -i INSTANCE_ID -r TARGET_IP:TARGET_PORT -l LOCAL_PORT

Output Waiting for connections menunjukkan bahwa saluran data melalui jump server telah dibuat. Trafik ke 127.0.0.1:<local_port> kini diarahkan melalui jump server menuju TARGET_IP:TARGET_PORT.

Sebagai contoh, untuk mengarahkan trafik ke instans RDS for MySQL dengan titik akhir pribadi rm-******.mysql.rds.aliyuncs.com:3306 melalui jump server ECS i-bp1****** dan memetakannya ke port 13306 pada mesin lokal Anda, jalankan .\ali-instance-cli.exe portforward -i i-bp1****** -r rm-******.mysql.rds.aliyuncs.com:3306 -l 13306.

Pada macOS atau Linux

Buka terminal, navigasi ke direktori tempat ali-instance-cli berada, lalu jalankan perintah berikut.

#Ganti INSTANCE_ID dengan ID instans jump server, TARGET_IP dengan alamat IP host target, TARGET_PORT dengan port host target, dan LOCAL_PORT dengan port yang akan dipetakan pada mesin lokal Anda.
./ali-instance-cli portforward -i INSTANCE_ID -r TARGET_IP:TARGET_PORT -l LOCAL_PORT

Output Waiting for connections menunjukkan bahwa saluran data melalui jump server telah dibuat. Trafik ke 127.0.0.1:<local_port> kini diarahkan melalui jump server menuju TARGET_IP:TARGET_PORT.

Sebagai contoh, untuk memetakan instans RDS for MySQL (titik akhir pribadi rm-******.mysql.rds.aliyuncs.com:3306) ke port 13306 pada mesin lokal Anda melalui jump server ECS i-bp1******, jalankan ./ali-instance-cli portforward -i i-bp1****** -r rm-******.mysql.rds.aliyuncs.com:3306 -l 13306.

FAQ

Command line tidak merespons setelah menjalankan perintah (Instans tidak dalam status Running)

Jika command line tidak merespons setelah Anda menjalankan perintah ali-instance-cli, instans mungkin tidak dalam status Running. Untuk melihat status instans, lihat Periksa apakah instans berada dalam status Running dalam topik ini.

Command line tidak merespons setelah menjalankan perintah (Masalah konfigurasi security group)

Jika command line tidak merespons setelah Anda menjalankan perintah ali-instance-cli, hal ini mungkin disebabkan oleh port yang diperlukan untuk trafik outbound belum dibuka dalam security group. Secara default, basic security groups mengizinkan seluruh trafik outbound. Masalah ini dapat terjadi jika Anda mengubah aturan outbound atau menggunakan advanced security group. Aturan security group dijelaskan sebagai berikut:

Saat Anda menggunakan Session Manager untuk terhubung ke instans ECS, pastikan Cloud Assistant Agent yang berjalan pada instans ECS terhubung ke server Cloud Assistant dengan menambahkan aturan berikut ke security group outbound:

Dibandingkan metode koneksi seperti SSH dan Remote Desktop Protocol (RDP), Cloud Assistant Agent secara aktif membuat koneksi WebSocket ke server Session Manager. Anda hanya perlu membuka port outbound WebSocket dari server Cloud Assistant dalam aturan security group. Untuk informasi tentang cara kerja Session Manager, lihat bagian Cara Kerja Session Manager dalam topik ini.
Penting
  • Jika Anda menggunakan basic security groups, termasuk default security group, seluruh trafik outbound diizinkan. Tidak diperlukan konfigurasi tambahan.

  • Jika Anda menggunakan advanced security group, seluruh trafik outbound ditolak. Anda harus mengonfigurasi aturan yang relevan. Tabel berikut menjelaskan aturan tersebut. Untuk informasi lebih lanjut tentang security group, lihat Basic security groups dan advanced security groups.

Untuk informasi tentang cara menambahkan aturan ke security group, lihat Tambahkan aturan security group.

Action

Priority

Protocol type

Port range

Authorization object

Description

Allow

1

Custom TCP

443

100.100.0.0/16

Port ini digunakan untuk mengakses server Cloud Assistant.

Allow

1

Custom TCP

443

100.0.0.0/8

Port ini digunakan untuk mengakses server tempat paket instalasi Cloud Assistant Agent disimpan saat Anda ingin menginstal atau memperbarui Cloud Assistant Agent.

Allow

1

Custom UDP

53

0.0.0.0/0

Port ini digunakan untuk menyelesaikan nama domain.

Jika Anda hanya ingin mengakses instans menggunakan Session Manager, hapus aturan inbound yang mengizinkan port SSH (default 22) dan port RDP (default 3389) dari security group untuk meningkatkan keamanan instans ECS.

Error DeliveryTimeout: Cloud Assistant Agent offline

Error DeliveryTimeout menunjukkan bahwa Cloud Assistant Agent mungkin sedang offline. Untuk memeriksa status agent, lihat Periksa apakah Cloud Assistant Agent telah diinstal pada instans.

Terjadi error "session manager is disabled, please enable first" setelah menjalankan perintah

Jika error session manager is disabled, please enable first muncul setelah Anda menjalankan perintah ali-instance-cli, artinya Session Manager dinonaktifkan. Anda dapat mengaktifkan Session Manager di Konsol. Untuk informasi lebih lanjut, lihat Aktifkan Session Manager.

Cara menganalisis log ali-instance-cli

Saat terjadi masalah dengan Session Manager CLI, Anda dapat menganalisis log untuk mengidentifikasi penyebabnya.

  • Lihat log tool Session Manager CLI: Saat Anda menggunakan Session Manager CLI (ali-instance-cli), folder log seperti ~/log/aliyun_ecs_session_log.2022XXXX akan dibuat di direktori tempat tool tersebut berada. Anda dapat menemukan log yang relevan di folder tersebut.

  • Lihat log Cloud Assistant Agent:

    • Linux

      /usr/local/share/aliyun-assist/<Cloud Assistant Agent version>/log/
    • Windows

      C:\ProgramData\aliyun\assist\<Cloud Assistant Agent version>\log