All Products
Search
Document Center

Elastic Compute Service:Hubungkan ke instans dengan pasangan kunci sementara menggunakan Session Manager CLI

Last Updated:May 16, 2026

Daftarkan kunci publik sementara berdurasi 60 detik menggunakan ali-instance-cli dan hubungkan ke Instance ECS dengan kunci privat alih-alih password.

Kunci publik sementara

Kunci publik sementara memungkinkan Anda menghubungkan ke instans melalui SSH tanpa mengonfigurasi pasangan kunci pada instans tersebut. Setiap kali terhubung, daftarkan kunci publik sementara yang berlaku selama 60 detik, lalu gunakan kunci privat yang sesuai alih-alih password.

Catatan

Kunci publik sementara disimpan di server Cloud Assistant.

Prasyarat

Aktifkan layanan Session Manager

Aktifkan layanan Session Manager untuk Akun Alibaba Cloud Anda di Konsol:

  1. Buka ECS console - Instances.

  2. Pada bilah navigasi atas, pilih wilayah dan kelompok sumber daya untuk instans tersebut.

  3. Pada halaman Instance, temukan instans target dan klik Connect di kolom Actions.

  4. Klik Show Other Logon Methods. Temukan Session Manager. Aktifkan sakelar di samping Session Management closed. Lalu, ikuti petunjuk di layar untuk mengaktifkan layanan tersebut.

    image

    image

Periksa apakah instans berada dalam status Running

Session Manager mengharuskan instans berada dalam status Running.

Konsol

Lihat status instans pada halaman Instance di Konsol ECS.

Lihat View instance information.

image

image

Alibaba Cloud CLI

Jika Anda telah mengonfigurasi Alibaba Cloud CLI, jalankan perintah berikut untuk mengecek status instans. Untuk detail parameter, lihat DescribeInstanceStatus.

Topik ini menggunakan contoh instans dengan ID i-bp1****** di wilayah China (Hangzhou).
aliyun ecs DescribeInstanceStatus --region cn-hangzhou --RegionId 'cn-hangzhou' --InstanceId.1 'i-bp1******'

Jika Status bernilai Running, maka instans sedang berjalan.

{
  "TotalCount": 1,
  "RequestId": "A413****-****-****-****-****611B",
  "PageSize": 1,
  "PageNumber": 1,
  "InstanceStatuses": {
    "InstanceStatus": [
      {
        "Status": "Running",
        "InstanceId": "i-bp1******"
      }
    ]
  }
}

Anda juga dapat menggunakan DescribeInstances untuk mengecek status instans.

API

Lihat DescribeInstanceStatus atau DescribeInstances.

Periksa apakah Cloud Assistant Agent telah terinstal

Session Manager memerlukan Cloud Assistant. Gunakan salah satu metode berikut untuk memeriksa apakah Cloud Assistant Agent telah terinstal pada instans.

Instance ECS yang dibuat dari gambar publik resmi setelah 1 Desember 2017 telah memiliki Cloud Assistant Agent pra-instal. Untuk instans yang dibuat sebelum tanggal tersebut atau dari gambar kustom yang diunggah, instal Cloud Assistant Agent secara manual.

Konsol

Session Manager bergantung pada Cloud Assistant. Instal Cloud Assistant Agent pada instans dan periksa statusnya di halaman Cloud Assistant ECS di Konsol ECS.

Cloud Assistant Agent telah pra-instal pada Instance ECS yang dibuat dari gambar publik Alibaba Cloud setelah 1 Desember 2017. Untuk instans yang lebih lama, instal Cloud Assistant Agent secara manual. Lihat Install the Cloud Assistant Agent.

image

image

Lihat Memeriksa status Asisten Cloud dan memecahkan masalah pengecualian.

Alibaba Cloud CLI

Jika Anda telah mengonfigurasi Alibaba Cloud CLI, jalankan perintah berikut untuk memeriksa instalasi Cloud Assistant Agent dan dukungan Session Manager. Untuk detail parameter, lihat DescribeCloudAssistantStatus.

Topik ini menggunakan contoh instans dengan ID i-bp1****** di wilayah China (Hangzhou).
aliyun ecs DescribeCloudAssistantStatus --region cn-hangzhou --RegionId 'cn-hangzhou' --InstanceId.1 'i-bp1******'

Jika CloudAssistantStatus bernilai true dan SupportSessionManager bernilai true, maka instans mendukung koneksi Session Manager.

{
  "TotalCount": 1,
  "PageSize": 1,
  "RequestId": "DB34****-****-****-****-****A749",
  "NextToken": "",
  "PageNumber": 1,
  "InstanceCloudAssistantStatusSet": {
    "InstanceCloudAssistantStatus": [
      {
        "CloudAssistantVersion": "2.2.3.857",
        "SupportSessionManager": true,
        "InstanceId": "i-bp1******",
        "InvocationCount": 4,
        "OSType": "Linux",
        "CloudAssistantStatus": "true",
        "LastHeartbeatTime": "2024-12-10T02:38:04Z",
        "LastInvokedTime": "2024-12-08T16:02:45Z",
        "ActiveTaskCount": 0
      }
    ]
  }
}

API

Lihat DescribeCloudAssistantStatus.

Siapkan kredensial Pengguna RAM untuk Session Manager

Saat menggunakan ali-instance-cli, Anda harus menentukan Pasangan Kunci Akses dan Token Layanan Keamanan (STS) dari Pengguna RAM. Saat Anda menghubungkan ke instans menggunakan Session Manager, sistem akan memverifikasi apakah Pengguna RAM yang memiliki kredensial tersebut juga memiliki izin ecs:StartTerminalSession.

Saat mengonfigurasi kebijakan kustom, Anda dapat mengatur parameter Resource untuk menentukan Instance ECS mana saja yang dapat diakses oleh Pengguna RAM melalui Session Manager. Contoh kebijakan:

{
  "Version": "1",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "ecs:StartTerminalSession",
      "Resource": "*"
    }
  ]
}

Untuk informasi tentang parameter CredentialsURI dan STS Token, lihat Create an AccessKey pair dan What is Security Token Service (STS)?

Untuk informasi tentang cara memberikan izin kepada Pengguna RAM, lihat Grant permissions to a RAM user.

1. Instal dan konfigurasikan Session Manager CLI

Catatan

Lewati langkah ini jika Anda telah menginstal dan mengonfigurasi Session Manager CLI.

1.1 Instal

Instal Session Manager CLI (ali-instance-cli) di komputer Anda. Metode instalasi berbeda-beda tergantung sistem operasinya.

Windows

Klik untuk mengunduh ali-instance-cli untuk Windows dan simpan ke folder lokal.

Topik ini menggunakan folder C:\Users\test sebagai contoh.

macOS

Di terminal macOS, unduh ali-instance-cli untuk macOS:

curl -O https://aliyun-client-assist.oss-accelerate.aliyuncs.com/session-manager/mac/ali-instance-cli

Berikan izin eksekusi:

chmod a+x ali-instance-cli

Linux

Instal ali-instance-cli untuk Linux:

arsitektur x86
curl -O https://aliyun-client-assist.oss-accelerate.aliyuncs.com/session-manager/linux/ali-instance-cli
arsitektur arm
curl -O https://aliyun-client-assist.oss-cn-beijing.aliyuncs.com/session-manager/linux_arm/ali-instance-cli

Berikan izin eksekusi:

chmod a+x ali-instance-cli

1.2 Konfigurasi

Untuk menghubungkan ke Instance ECS dengan ali-instance-cli, konfigurasikan kredensial identitas seperti AccessKey. Lihat Prepare the credentials of a RAM user for Session Manager.

Windows

  1. Klik Start > Run, masukkan cmd, lalu tekan tombol Enter untuk membuka jendela command prompt.

  2. Buka direktori ali-instance-cli.exe. Contoh ini menggunakan C:\Users\test.

    cd C:\Users\test
  3. Konfigurasikan kredensial menggunakan salah satu metode berikut:

    AccessKey

    Konfigurasikan ID AccessKey, Rahasia AccessKey, dan ID Wilayah sesuai permintaan:

    ali-instance-cli.exe configure --mode AK
    STS Token

    Lengkapi konfigurasi:

    ali-instance-cli.exe configure set --mode StsToken --region "<region>" --access-key-id "<ak>"  --access-key-secret "<sk>"   --sts-token "<sts_token>"

    Ganti <region>, <ak>, <sk>, dan <sts_token> dengan ID wilayah, ID AccessKey, Rahasia AccessKey, dan STS token aktual Anda.

    CredentialsURI

    Masukkan Credentials URI dan ID Wilayah sesuai permintaan:

    ali-instance-cli.exe configure --mode=CredentialsURI

    Output berikut menunjukkan konfigurasi berhasil.

    image

macOS/Linux

  1. Buka direktori ali-instance-cli. Contoh ini menggunakan direktori home ~.

    cd ~
  2. Konfigurasikan kredensial:

    AccessKey

    Konfigurasikan ID AccessKey, Rahasia AccessKey, dan ID Wilayah sesuai permintaan:

    ./ali-instance-cli configure --mode AK
    STS Token

    Lengkapi konfigurasi:

    ./ali-instance-cli configure set --mode StsToken --region "<region>" --access-key-id "<ak>"  --access-key-secret "<sk>"   --sts-token "<sts_token>"

    Ganti <region>, <ak>, <sk>, dan <sts_token> dengan ID wilayah, ID AccessKey, Rahasia AccessKey, dan STS token aktual Anda.

    CredentialsURI

    Konfigurasikan Credentials URI dan ID Wilayah sesuai permintaan:

    ./ali-instance-cli configure --mode=CredentialsURI

    Output berikut menunjukkan konfigurasi berhasil.

    image

2. Daftarkan kunci publik sementara ke instans

2.1 Dapatkan ID instans

Dapatkan ID instans target.

2.2 Hasilkan pasangan kunci

Hasilkan pasangan kunci di komputer Anda. File kunci publik akan digunakan sebagai kunci publik sementara pada Langkah 2.3.

Komputer Windows

Buka Command Prompt dan jalankan perintah berikut untuk menghasilkan pasangan kunci.

Pada contoh ini, klien OpenSSH digunakan untuk menghasilkan pasangan kunci di direktori C:\Users\test.
ssh-keygen -t rsa -b 2048 -f id_rsa
  • -t rsa: jenis kunci Rivest-Shamir-Adleman (RSA).

  • -b 2048: panjang kunci 2.048 bit.

  • -f id_rsa: menghasilkan file kunci bernama id_rsa ke direktori kerja.

Penting

Anda akan diminta memasukkan passphrase. Jika ditetapkan, passphrase tersebut diperlukan setiap kali kunci privat digunakan.

Tekan Enter untuk melewati jika tidak memerlukan passphrase.

File kunci publik id_rsa.pub dan file kunci privat id_rsa dihasilkan di direktori kerja. Pada contoh ini, direktori kerja adalah C:\Users\test.

Komputer macOS atau Linux

Buka Terminal dan jalankan perintah berikut untuk menghasilkan pasangan kunci.

Pada contoh ini, klien OpenSSH digunakan untuk menghasilkan pasangan kunci.
ssh-keygen -t rsa -b 2048 -f id_rsa
  • -t rsa: jenis kunci RSA.

  • -b 2048: panjang kunci 2.048 bit.

  • -f id_rsa: menghasilkan file kunci bernama id_rsa ke direktori kerja.

Penting

Anda akan diminta memasukkan passphrase. Jika ditetapkan, passphrase tersebut diperlukan setiap kali kunci privat digunakan.

Tekan Enter untuk melewati jika tidak memerlukan passphrase.

File kunci publik id_rsa.pub dan file kunci privat id_rsa dihasilkan di direktori kerja.

2.3 Kirim kunci publik sebagai kunci publik sementara ke instans

Komputer Windows

Buka Command Prompt, buka direktori ali-instance-cli.exe, lalu jalankan perintah berikut untuk mendaftarkan kunci publik sementara ke instans.

Ganti <instance_id> dengan ID instans, <public_key_path> dengan path file kunci publik yang dihasilkan pada Langkah 2.2, dan <ecs_username> dengan username yang akan diberi kunci publik sementara:
ali-instance-cli.exe send_public_key --instance <instance_id> --public-key <public_key_path> --user-name <ecs_username>

Contoh: daftarkan kunci publik di C:\Users\test\id_rsa.pub ke instans i-bp1****** dan tetapkan ke pengguna ecs-user:

ali-instance-cli.exe send_public_key --instance i-bp1****** --public-key C:\Users\test\id_rsa.pub --user-name ecs-user
Penting

Setelah perintah berhasil, hubungkan ke instans dengan kunci privat yang sesuai dalam waktu 60 detik.

Komputer macOS atau Linux

Buka Terminal, buka direktori ali-instance-cli, lalu jalankan perintah berikut untuk mendaftarkan kunci publik sementara ke instans.

Ganti <instance_id> dengan ID instans, <public_key_path> dengan path file kunci publik yang dihasilkan pada Langkah 2.2, dan <ecs_username> dengan username yang akan diberi kunci publik sementara:
./ali-instance-cli send_public_key --instance <instance_id> --public-key <public_key_path> --user-name <ecs_username>

Contoh: daftarkan kunci publik di ~/id_rsa.pub ke instans i-bp1****** dan tetapkan ke pengguna ecs-user:

./ali-instance-cli send_public_key --instance i-bp1****** --public-key ~/id_rsa.pub --user-name ecs-user
Penting
  • Setelah perintah berhasil, hubungkan ke instans dengan kunci privat yang sesuai dalam waktu 60 detik.

Setelah menjalankan perintah, muncul pesan error ERROR: 'install config_ecs_instance_connect' command failed

Jika error ini muncul, plug-in Cloud Assistant config_ecs_instance_connect gagal terinstal. Jalankan ulang perintah tersebut. Jika error tetap muncul, instal plug-in tersebut secara manual:

Gunakan Konsol ECS

Gunakan Cloud Assistant untuk mengirim perintah berikut ke instans guna menginstal dan menjalankan plug-in config_ecs_instance_connect.

Lihat Buat dan Jalankan Perintah.

acs-plugin-manager -e -P config_ecs_instance_connect --params --install

Gunakan CLI

Catatan

Pada contoh ini, i-bp15vhvt43ciprqkxxxx digunakan sebagai ID instans. Ganti dengan ID instans aktual Anda.

aliyun ecs RunCommand --RegionId 'cn-hangzhou' \
 --Type 'RunShellScript' \
 --CommandContent 'acs-plugin-manager -e -P config_ecs_instance_connect --params --install' \
 --InstanceId.1 'i-bp15vhvt43ciprqkxxxx'    

3. Hubungkan ke instans melalui SSH

Penting

Jika Anda diminta bahwa password atau kunci publik salah, kemungkinan kunci publik telah kedaluwarsa. Kunci publik sementara hanya berlaku selama 60 detik.

Buka Command Prompt atau Terminal dan jalankan perintah berikut untuk menghubungkan ke instans.

Ganti <private_key_path> dengan path file kunci privat yang dihasilkan pada Langkah 2.2, <ecs-username> dengan username yang ditentukan pada Langkah 2.3, dan <ecs_ip> dengan Alamat IP publik instans.
ssh -i <private_key_path> <ecs-username>@<ecs_ip>

Contoh: hubungkan ke instans 223.***.***.187 sebagai ecs-user dengan kunci privat ~/id_rsa:

ssh -i ~/id_rsa ecs-user@223.***.***.187

Anda juga dapat menggunakan fitur port forwarding dari ali-instance-cli untuk menghubungkan ke instans tanpa Alamat IP publik. Lihat Use the port forwarding feature of Session Manager CLI to connect to an instance without a public IP address.

FAQ

Baris perintah tidak merespons setelah menjalankan perintah (Instans tidak dalam status Running)

Jika baris perintah tidak merespons setelah menjalankan perintah ali-instance-cli, kemungkinan instans tidak dalam status Running. Untuk melihat status instans, lihat Check whether the instance is in the Running state dalam topik ini.

Baris perintah tidak merespons setelah menjalankan perintah (Masalah konfigurasi security group)

Jika baris perintah tidak merespons setelah menjalankan perintah ali-instance-cli, kemungkinan port outbound yang diperlukan belum dibuka di security group. Secara default, basic security groups mengizinkan semua lalu lintas outbound. Masalah ini dapat terjadi jika Anda mengubah aturan outbound atau menggunakan advanced security group.

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

Dibandingkan metode koneksi seperti SSH dan Protokol Desktop Jarak Jauh (RDP), Cloud Assistant Agent secara aktif membuat koneksi WebSocket ke server Session Manager. Anda hanya perlu membuka port outbound WebSocket server Cloud Assistant dalam aturan keamanan. Untuk informasi tentang cara kerja Session Manager, lihat bagian How Session Manager works dalam topik ini.
Penting
  • Jika Anda menggunakan basic security groups termasuk default security group, semua lalu lintas outbound diizinkan. Tidak diperlukan konfigurasi tambahan.

  • Jika Anda menggunakan advanced security group, semua lalu lintas outbound ditolak. Anda harus mengonfigurasi aturan yang relevan. Tabel berikut menjelaskan aturan tersebut. Untuk informasi tentang security group, lihat Basic and advanced security groups.

Untuk informasi tentang cara menambahkan aturan ke security group, lihat Add a security group rule.

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 menghubungkan ke instans menggunakan Session Manager, hapus aturan inbound yang mengizinkan port SSH (default 22) dan port RDP (default 3389) dari security group untuk meningkatkan keamanan Instance ECS.

Error DeliveryTimeout dilaporkan setelah menjalankan perintah (Cloud Assistant Agent offline)

Jika error DeliveryTimeout terjadi saat menjalankan perintah ali-instance-cli, Cloud Assistant Agent mungkin tidak tersedia. Periksa apakah Cloud Assistant Agent telah terinstal pada instans.

image

image

Error "session manager is disabled, please enable first" dilaporkan setelah menjalankan perintah

Jika error session manager is disabled, please enable first terjadi setelah menjalankan perintah ali-instance-cli, aktifkan Session Manager di Konsol.

Koneksi secara otomatis tertutup karena periode inaktivitas yang lama

Koneksi Session Manager akan tertutup setelah timeout idle. Nilai defaultnya adalah 3 menit. Gunakan parameter --idle-timeout untuk mengatur timeout idle khusus dalam satuan detik.

Contoh: hubungkan dengan timeout idle 10 menit:

./ali-instance-cli session --instance instance-id --idle-timeout 600
Catatan

Fitur ini memerlukan versi ali-instance-cli:

  • Linux: 1.2.0.48

  • Windows: 1.1.0.48

  • macOS: 1.3.0.48

Cara menganalisis log ali-instance-cli

Analisis log ali-instance-cli untuk mengidentifikasi masalah.

  • Log Session Manager CLI: Saat menggunakan ali-instance-cli, folder log (misalnya ~/log/aliyun_ecs_session_log.2022XXXX) dihasilkan di direktori tool tersebut.

  • Log Cloud Assistant Agent:

    • Linux

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

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