Deskripsi masalah
Saat Anda mencoba menghubung ke instans Linux menggunakan klien SSH pihak ketiga, koneksi ditolak meskipun kredensial yang digunakan sudah benar. Anda menerima salah satu pesan error berikut:
Permission denied (publickey,gssapi-keyex,gssapi-with-mic) # Pesan error 1: Server menolak semua metode autentikasi yang dicoba.
No supported authentication methods available (server sent: publickey,gssapi-keyex,gssapi-with-mic) # Pesan error 2: Tidak tersedia metode autentikasi yang didukung.
Connection closed by XX.XX.XX.XX # Pesan error 3: Server menutup koneksi selama proses autentikasi.Solusi
Kegagalan login menggunakan password: Pastikan autentikasi menggunakan password diaktifkan dalam konfigurasi instans.
Kegagalan login menggunakan kunci:
Pastikan autentikasi menggunakan kunci diaktifkan dalam konfigurasi instans.
Pastikan kunci publik telah ditambahkan dengan benar ke file
~/.ssh/authorized_keyspengguna.
Kasus penggunaan 1: Kegagalan login menggunakan password
Login ke instans Elastic Compute Service (ECS).
Buka ECS console - Instance. Di bilah navigasi atas, pilih region dan grup resource target.
Buka halaman detail instance, klik Connect dan pilih VNC. Masukkan username dan password untuk masuk ke instance ECS.
Aktifkan autentikasi menggunakan password.
Edit file konfigurasi SSH. Pastikan parameter
PasswordAuthenticationdiatur keyes. Jika baris tersebut dikomentari (diawali dengan#), hapus karakter#.sudo vim /etc/ssh/sshd_configRestart layanan SSH untuk menerapkan perubahan.
Untuk Alibaba Cloud Linux dan CentOS:
sudo systemctl restart sshd.serviceUntuk Debian dan Ubuntu:
sudo systemctl restart ssh.service
Verifikasi perubahan.
Dari klien SSH Anda, coba hubungkan kembali menggunakan password untuk mengecek apakah perubahan telah diterapkan.
Kasus penggunaan 2: Kegagalan login menggunakan kunci
Masuk ke instance ECS.
Buka ECS console - Instance. Di bilah navigasi atas, pilih wilayah dan grup resource target.
Pada halaman detail instans, klik Connect dan pilih Workbench. Ikuti petunjuk di layar untuk login dan mengakses terminal.
Aktifkan autentikasi menggunakan kunci.
Edit file konfigurasi SSH.
sudo vim /etc/ssh/sshd_configDalam mode edit, cari parameter
PubkeyAuthentication.Jika nilainya
noatau baris tersebut dikomentari, artinya autentikasi menggunakan kunci dinonaktifkan. Hapus komentar pada baris tersebut, ubah nilai menjadiyes, lalu simpan dan keluar dari file.Jika nilainya
yes, lanjutkan ke langkah copy kunci publik ke file authorized_keys pengguna.
Salin kunci publik ke file
authorized_keyspengguna.Pengguna root
Edit file
authorized_keys.sudo vim /root/.ssh/authorized_keysPaste kunci publik Anda ke dalam file — satu kunci per baris—lalu simpan dan tutup file.
Atur izin file.
Izin yang tidak tepat dapat menyebabkan kegagalan login SSH.
sudo chmod 700 /root/.ssh sudo chmod 600 /root/.ssh/authorized_keys
Pengguna non-root
Ganti
<username>pada perintah berikut dengan username target.Edit file
authorized_keys.sudo vim /home/<username>/.ssh/authorized_keysPaste kunci publik ke dalam file — satu kunci per baris— lalu simpan dan tutup file.
Atur izin file.
Izin yang tidak tepat dapat menyebabkan kegagalan login SSH.
sudo chown -R <username>:<username> /home/<username>/.ssh sudo chmod 700 /home/<username>/.ssh sudo chmod 600 /home/<username>/.ssh/authorized_keys
Restart layanan SSH untuk menerapkan perubahan.
Untuk Alibaba Cloud Linux dan CentOS:
sudo systemctl restart sshd.serviceUntuk Debian dan Ubuntu:
sudo systemctl restart ssh.service
Verifikasi perubahan.
Dari klien SSH Anda, coba hubungkan kembali dengan pasangan kunci untuk mengecek apakah perubahan telah diterapkan.