ProxyClient adalah alat proxy sisi klien yang disediakan oleh DSW. Alat ini memungkinkan Anda menghubungkan ke instans DSW melalui SSH tanpa perlu mengonfigurasi VPC atau gerbang NAT. Metode ini ideal untuk pengembangan pembelajaran mesin menggunakan alat lokal seperti VS Code atau terminal.
Prosedur
Langkah 1: Unduh dan instal DSW ProxyClient
-
Unduh alat DSW ProxyClient dan simpan ke direktori home Anda.
Simpan alat tersebut ke direktori berikut sesuai sistem operasi Anda:
-
Sistem operasi Windows: Simpan di folder pribadi pengguna, misalnya C:\Users\<username> atau C:\用户\<username>.
-
Linux: Simpan ke /root untuk pengguna root, atau /home/<username> untuk pengguna standar.
-
macOS: Simpan ke /Users/<username>.
Ganti <username> dengan username aktual Anda.
Unduh klien sesuai sistem operasi Anda:
-
-
Di terminal Anda, ubah file klien yang telah diunduh menjadi executable. Langkah ini dapat dilewati untuk versi Windows (x86-64).
chmod 755 <proxyclient>Ganti
<proxyclient>dengan nama file klien yang telah diunduh. -
Buat file konfigurasi.
-
Jalankan perintah konfigurasi.
# macOS atau Linux ./proxyclient config # Windows proxyclient.exe configPentingSaat menjalankan perintah
./proxyclientdi macOS untuk pertama kalinya, Anda mungkin melihat prompt:"proxyclient" cannot be opened because the developer cannot be verified.Untuk melanjutkan, buka System Preferences > Security & Privacy dan izinkanproxyclientuntuk dijalankan. -
Ikuti petunjuk untuk menetapkan path file konfigurasi.
Masukkan nama untuk file konfigurasi. Anda dapat menyertakan path.
Catatan-
Disarankan: Tekan Enter untuk menggunakan path dan nama file default:
~/.proxyclientconfig. -
Anda juga dapat menentukan path dan nama file kustom. Misalnya, di Windows:
C:/Users/<username>/xxx/.proxyclientconfig. -
Jika Anda menetapkan path kustom, Anda harus menentukannya menggunakan flag
-catau--config-filesaat menjalankan perintah./proxyclient addpada Langkah 3.
-
-
Ikuti petunjuk untuk menetapkan parameter RegionId, AccessKey ID, AccessKey Secret, dan STSToken.
Tabel berikut menjelaskan parameter-parameter tersebut.
Parameter
Deskripsi
RegionId
ID wilayah tempat instans DSW Anda berada, misalnya cn-shanghai untuk China (Shanghai). Untuk daftar ID wilayah, lihat Wilayah dan zona.
PentingID wilayah harus sesuai dengan wilayah instans DSW Anda.
AccessKey ID
Pasangan Kunci Akses untuk Akun Alibaba Cloud Anda. Untuk informasi selengkapnya, lihat Buat Pasangan Kunci Akses.
AccessKey Secret
STSToken
-
Jika Anda menggunakan Akun Alibaba Cloud atau Pengguna RAM, biarkan parameter ini kosong.
-
Saat Anda menggunakan Peran RAM untuk login, Anda harus menggunakan kredensial identitas temporary dan mengonfigurasi parameter ini. Untuk informasi tentang cara menghasilkan token STS, lihat Dapatkan token temporary STS.
PentingPastikan token STS masih valid.
-
-
Langkah 2: Konfigurasi autentikasi SSH
Anda dapat menghubungkan ke instans DSW menggunakan pasangan kunci SSH atau password.
Untuk instans DSW dalam kelompok sumber daya khusus, setelah mengonfigurasi autentikasi, klik Save Image di kolom Actions untuk instans DSW tersebut. Kunci publik atau password yang Anda tambahkan akan disimpan ke image instans dan tetap berlaku setelah instans direstart.
Metode 1: Autentikasi berbasis kunci (disarankan)
-
Buat pasangan kunci.
-
Di terminal lokal Anda, jalankan perintah berikut untuk membuat pasangan kunci guna login tanpa password. Secara default, pasangan kunci RSA akan dibuat.
ssh-keygen -
Tentukan lokasi penyimpanan pasangan kunci.
-
Disarankan: Tekan Enter tanpa menentukan nama file. File pasangan kunci default adalah
~/.ssh/id_rsa(kunci privat) dan~/.ssh/id_rsa.pub(kunci publik). -
Opsional: Tentukan nama file kustom untuk pasangan kunci, misalnya
example_id_rsa.CatatanJika Anda menentukan nama file kustom, Anda harus menentukan path file kunci privat dengan parameter IdentityFile di file
~/.ssh/config, yang dibuat dalam Langkah 3: Tambahkan proxy instans DSW.
-
-
Ikuti petunjuk untuk menetapkan passphrase dan simpan secara lokal. Anda akan menggunakan passphrase ini untuk menghubungkan ke instans DSW.
-
-
Di instans DSW yang ingin Anda hubungkan, buka terminal dan jalankan perintah berikut. Skrip setup_ssh.sh akan mengunduh dan menginstal server SSH secara otomatis.
wget https://dsw-resource.oss-cn-beijing.aliyuncs.com/tools/setup_ssh.sh bash setup_ssh.sh -
Ikuti petunjuk untuk mengonfigurasi kunci publik SSH dan mulai server SSH.
Metode 2: Autentikasi berbasis password
-
Buka instans DSW yang ingin Anda hubungkan dan buka terminal.
-
Jalankan perintah berikut untuk menetapkan password bagi pengguna root.
passwd root -
Ubah file konfigurasi SSH agar mengizinkan login root dengan password.
-
Buka file konfigurasi SSH.
vi /etc/ssh/sshd_config -
Ubah pengaturan
#PermitRootLogin prohibit-passwordmenjadiPermitRootLogin yes, lalu simpan file tersebut.Konfigurasi yang telah dimodifikasi adalah sebagai berikut.
# Authentication: #LoginGraceTime 2m PermitRootLogin yes #StrictModes yes #MaxAuthTries 6 #MaxSessions 10
-
-
Restart server SSH untuk menerapkan perubahan.
service ssh stop service ssh start
Langkah 3: Tambahkan proxy instans DSW
-
Dari daftar instans, salin ID instans DSW yang ingin Anda hubungkan.
Klik instans target untuk membuka panel detailnya. Di panel tersebut, temukan bidang Instance ID (berformat seperti
dsw-xxxxxxd6) dan salin ID instans tersebut untuk digunakan dalam konfigurasi proxy. -
Di terminal lokal Anda, jalankan perintah berikut untuk menambahkan instans DSW sebagai host target SSH.
Ganti <instance_id> dengan ID instans yang telah Anda salin.
# macOS atau Linux ./proxyclient add -i=<instance_id> # Windows proxyclient.exe add -i=<instance_id> -
Lihat isi file
.ssh/configuntuk memastikan pengaturan proxy telah diterapkan.# macOS atau Linux cat .ssh/config # Windows # Di terminal lokal Anda, navigasi ke direktori home pengguna Anda dan jalankan perintah berikut. # Anda juga dapat mengklik ganda file config untuk membukanya. explorer .ssh\config -
Opsi: Jika Anda menggunakan nama file kustom, seperti
example_id_rsa, saat membuat pasangan kunci, ubah file~/.ssh/configseperti pada contoh berikut. Gunakan parameterIdentityFileuntuk menentukan path ke file kunci privat yang digunakan untuk koneksi.Host dsw-b7a2765b267e**** HostName dsw-b7a2765b267e**** User root ProxyCommand ~/proxyclient connect --region-id=cn-hangzhou --instance-id=dsw-b7a2765b267e**** --config-file=*** ServerAliveInterval 30 IdentityFile ~/.ssh/example_id_rsa
Langkah 4: Hubungkan ke instans DSW
Hubungkan dari terminal
Buka alat terminal, seperti antarmuka baris perintah lokal Anda, dan jalankan perintah berikut untuk login ke instans jarak jauh.
Ganti <instance_id> dengan ID instans DSW Anda.
ssh <instance_id>
Anda juga dapat menggunakan perintah scp untuk menyalin file atau direktori antara mesin lokal dan instans jarak jauh.
# Salin file lokal ke instans jarak jauh.
scp local_file_path root@<instance_id>:<remote_file_path>
# Salin direktori lokal ke instans jarak jauh.
scp -r local_dir root@<instance_id>:<remote_dir>
# Salin file dari instans jarak jauh ke mesin lokal Anda.
scp root@<instance_id>:<remote_file_path> <local_file_path>
# Salin direktori dari instans jarak jauh ke mesin lokal Anda.
scp -r root@<instance_id>:<remote_dir> <local_dir>
Hubungkan dari VS Code
Langkah-langkahnya dapat berbeda tergantung versi VS Code Anda. Untuk informasi selengkapnya, lihat dokumentasi Visual Studio Code.
-
Buka VS Code di mesin lokal Anda dan instal ekstensi Remote Connection.
Klik ikon Extensions di Activity Bar untuk membuka pasar. Di kotak pencarian, masukkan
Remote - SSH. Temukan ekstensi Remote - SSH dan klik Install. -
Di Activity Bar VS Code, klik ikon Remote Explorer
.Panel Remote Explorer terbuka. Anda dapat melihat host jarak jauh yang telah dikonfigurasi, seperti
dsw-*, di bawah node SSH. -
Tambahkan koneksi jarak jauh baru ke instans tersebut.
-
Klik ikon Add New
di sebelah Remote Connection. Di kotak teks yang muncul, masukkan ID instans DSW dan tekan Enter. -
Klik untuk memilih file konfigurasi yang akan diperbarui.
Kami menyarankan memilih file konfigurasi di
C:\Users\<username>\.ssh\config. -
Di dialog Host added yang muncul di pojok kanan bawah VS Code, klik Connect.
-
Klik Linux untuk memilih sistem operasi instans DSW.
-
Di kotak teks, masukkan passphrase yang telah Anda simpan secara lokal pada Langkah 2 dan tekan Enter.
Setelah koneksi berhasil, VS Code menampilkan halaman Welcome. Area konten utama mencakup pintasan Start (New File..., Open File..., Open Folder..., Clone Git Repository...) dan daftar Walkthroughs (seperti Get Started with VS Code dan Get Started with WSL). Hal ini menandakan bahwa Anda telah berhasil terhubung ke instans dari VS Code. Anda kini dapat membuka folder jarak jauh untuk memulai pengembangan lokal.
-
-
Untuk koneksi berikutnya ke instans DSW ini, Anda dapat mengklik kanan instans target, memilih metode koneksi, lalu mengikuti petunjuk.
Metode koneksi mencakup Connect to Host in Current Window dan Connect to Host in New Window.
FAQ
T: Apa perbedaan antara Direct SSH dan ProxyClient?
|
Metode A: Direct SSH |
Metode B: ProxyClient |
|
|
Fitur |
Memerlukan konfigurasi komponen jaringan seperti VPC dan gerbang NAT. Koneksi lebih cepat dan stabil. |
Tidak memerlukan komponen jaringan tambahan. Namun, kecepatan dan stabilitas koneksi mungkin buruk. |
|
Instans yang didukung |
Semua tipe instans didukung, kecuali instans dengan spesifikasi yang diawali |
Semua tipe instans. |
|
Metode autentikasi |
Mengotentikasi dengan pasangan kunci SSH. |
|
|
Metode akses |
|
Akses publik. |
|
Panduan konfigurasi |
||
|
Cara kerja |
PAI secara otomatis membuat aturan DNAT pada gerbang NAT untuk meneruskan permintaan SSH publik ke instans DSW Anda. |
Semua trafik diarahkan melalui server proxy PAI. |
|
Catatan penagihan |
Untuk akses publik, gerbang NAT dan EIP dikenai biaya berkelanjutan, bahkan saat instans DSW dihentikan. Jika tidak lagi diperlukan, segera hapus komponen tersebut. |
Konfigurasi ini tidak menimbulkan biaya tambahan. |
T: Mengapa koneksi gagal untuk Pengguna RAM?
Jika Anda menggunakan AccessKey Pengguna RAM untuk terhubung melalui ProxyClient, Anda harus memastikan akun utama telah memberikan izin paidsw:GetToken kepada Pengguna RAM tersebut. Jika tidak, autentikasi akan gagal. Langkah-langkah untuk menambahkan izin ini adalah sebagai berikut:
T: Mengapa koneksi timeout atau gagal?
Periksa apakah dalam file konfigurasi yang dihasilkan oleh proxyclient.exe, RegionId sama dengan wilayah instans DSW Anda.
T: Bisakah saya membuat beberapa pengguna untuk login SSH?
Secara default, instans DSW hanya menyediakan pengguna root untuk login SSH. Saat ini, DSW tidak mendukung secara native pembuatan beberapa pengguna independen dan konfigurasi login SSH terpisah yang terisolasi untuk mereka. Anda dapat mencoba membuat pengguna baru secara manual di dalam instans, tetapi metode ini tidak didukung resmi atau tidak merupakan metode standar.
T: Bagaimana cara menemukan file ruang kerja di IDE lokal?
Setelah login melalui SSH, direktori default mungkin merupakan direktori home pengguna root (/root). File kerja Anda biasanya berada di path disk data yang dipasang, seperti /mnt/workspace. Di VSCode, Anda dapat menggunakan fitur File > Open Folder di sidebar untuk memilih dan membuka direktori kerja yang benar di server secara manual. Anda kemudian dapat melihat file proyek Anda di file explorer.
Dokumen terkait
-
Penggunaan ProxyClient dapat menurunkan performa, menyebabkan masalah seperti seringnya koneksi terputus atau kecepatan lambat. Oleh karena itu, kami menyarankan menggunakan metode koneksi Direct SSH.