Cara Memperbaiki Error Permission Denied (Publickey)

Diterbitkan: 2024-01-10
Daftar isi
  • Mengapa Itu Penting
  • Dasar-dasar Koneksi Komputer yang Aman
  • Kunci Gembok: Kunci Publik
  • Mengapa Kesalahan Ini Terjadi?
  • Bagaimana memperbaikinya
  • Tips Tambahan Jika Masih Tidak Berfungsi
  • Menjaganya Berjalan Lancar
  • FAQ
  • Sumber Daya Lainnya
  • Membungkus

Pernahkah Anda menemukan pesan “Error: Izin Ditolak (Publickey)” saat menggunakan komputer Anda? Ini adalah kesalahan umum yang biasanya muncul selama koneksi SSH, yaitu cara komputer berkomunikasi satu sama lain dengan aman.

Anggap saja seperti mencoba menggunakan kunci yang tidak sesuai dengan gemboknya. Jika Anda melihat kesalahan ini, berarti komputer Anda mengalami masalah saat membuat tautan aman dengan komputer lain, karena ada sesuatu dalam pengaturan keamanan yang tidak cocok.

Cara memperbaiki Error: Izin Ditolak (Publickey)

Mengapa Itu Penting

Koneksi aman, seperti yang dibuat dengan SSH, seperti melakukan percakapan pribadi di ruangan yang bising. Anda tentu tidak ingin semua orang mendengarnya, terutama jika Anda berbagi rahasia atau informasi pribadi, bukan? Itu sebabnya memperbaiki kesalahan ini sangat penting.

Itu menjaga percakapan komputer Anda tetap pribadi dan aman, memastikan bahwa informasi sensitif seperti kata sandi tetap rahasia.

Dasar-dasar Koneksi Komputer yang Aman

Mari selami apa itu SSH.

SSH adalah singkatan dari Secure Shell, dan ini adalah cara khusus bagi komputer untuk berbicara satu sama lain melalui internet dengan cara yang sangat aman. Bayangkan SSH seperti terowongan pribadi khusus yang menghubungkan dua komputer.

Hanya kedua komputer tersebut yang dapat mengirim pesan satu sama lain melalui terowongan ini, menjaga percakapan mereka aman dari penyadap.

Kunci Gembok: Kunci Publik

Untuk membuat terowongan ini aman, SSH menggunakan sesuatu yang disebut 'otentikasi kunci publik'. Ibarat memiliki password khusus, namun berupa kunci. Komputer Anda memiliki kunci unik (disebut kunci publik) yang dibagikan dengan komputer lain.

Anggap saja seperti jabat tangan rahasia. Jika jabat tangan tidak cocok, koneksi tidak akan terjadi dan saat itulah Anda melihat pesan “Error: Permission Denied (Publickey)” .

Mengapa Kesalahan Ini Terjadi?

Jadi mengapa Anda melihat kesalahan ini? Ada beberapa alasan umum:

  1. Masalah Utama: Terkadang, kesalahan terjadi karena ada yang salah dengan pengaturan kunci khusus Anda. Mungkin kunci di komputer Anda tidak cocok dengan yang ada di komputer yang Anda coba ajak bicara. Ini seperti mencoba memasukkan pasak persegi ke dalam lubang bundar – tidak berhasil.
  2. Pengaturan Salah: Di lain waktu, pengaturan atau izin di komputer Anda mungkin tidak diatur dengan benar. Hal ini dapat menghentikan komputer Anda menggunakan kunci dengan benar, seperti memiliki kunci yang benar tetapi tidak dapat membuka kuncinya.

Bagaimana memperbaikinya

Sekarang setelah Anda memahami sedikit mengapa kesalahan ini terjadi, mari kita bahas cara memperbaikinya. Berikut beberapa langkah yang dapat Anda ikuti:

Verifikasi Izin Kunci SSH:

Tetapkan izin yang benar untuk kunci pribadi Anda.

 chmod 600 ~/.ssh/id_rsa chmod 600 ~/.ssh/autorized_keys

Pastikan kunci publik Anda ada di ~/.ssh/authorized_keys di server. Jika tidak, tambahkan menggunakan:

kucing ~/.ssh/id_rsa.pub | ssh pengguna@nama host 'kucing >> ~/.ssh/authorized_keys'.

Men-debug Koneksi SSH

Jalankan ssh -vvv user@hostname untuk mengaktifkan mode verbose, yang menyediakan diagnostik koneksi terperinci.

Periksa di server untuk mengetahui konfigurasi yang benar, terutama untuk PasswordAuthentication dan PubkeyAuthentication .

kucing dll/ssh/sshd_config

Solusi Tambahan:

Periksa kembali apakah Anda menggunakan nama pengguna yang benar untuk koneksi SSH.

Mulai ulang layanan SSH untuk menyegarkan koneksi.

 sudo systemctl restart sshd

Verifikasi port koneksi SSH di file konfigurasi SSH. Standarnya biasanya 22 tetapi mungkin telah diubah.

periksa port ssh

Periksa log server, seperti /var/log/auth.log atau /var/log/secure, untuk detail kesalahan.

Tips Tambahan Jika Masih Tidak Berfungsi

Jika Anda sudah mencoba langkah-langkah ini dan masih melihat kesalahan, berikut beberapa hal lagi yang dapat dicoba:

  1. Mode Bicara: Aktifkan mode verbose di SSH. Ini seperti meminta komputer Anda untuk memberi Anda lebih banyak petunjuk tentang apa yang salah. Anda melakukan ini dengan menambahkan -vvv ke perintah SSH Anda, seperti ssh -vvv [email protected] . Ini akan memberi Anda lebih banyak detail tentang apa yang terjadi ketika Anda mencoba terhubung.
  2. Masalah Agen: Terkadang, masalahnya mungkin ada pada agen SSH, alat yang menyimpan kunci Anda. Jika agen tidak bekerja dengan benar, kunci Anda tidak akan ditampilkan dengan benar. Memulai ulang agen SSH terkadang dapat membantu.

Menjaganya Berjalan Lancar

Untuk menghindari kesalahan ini di masa mendatang, berikut beberapa tip agar semuanya berfungsi dengan baik:

  1. Perawatan Kunci: Perlakukan kunci SSH Anda seperti Anda memperlakukan kunci rumah. Jaga keamanannya dan jangan membaginya dengan orang lain. Periksa secara teratur apakah mereka masih berfungsi sebagaimana mestinya.
  2. Pemeriksaan Reguler: Sama seperti Anda memeriksa mobil atau rumah secara rutin untuk mencari masalah, lakukan hal yang sama dengan pengaturan SSH Anda. Pastikan pengaturannya tidak berubah secara tiba-tiba dan kunci Anda sudah yang terbaru.

FAQ

Bagaimana cara mengatur otentikasi kunci publik di SSH?

Untuk menyiapkan autentikasi kunci publik di SSH, pertama-tama buat pasangan kunci SSH di mesin lokal Anda menggunakan perintah seperti ssh-keygen . Ini menciptakan kunci pribadi ( id_rsa ) dan kunci publik ( id_rsa.pub ). Selanjutnya, salin kunci publik ke file ~/.ssh/authorized_keys server menggunakan ssh-copy-id user@server_ip . Pastikan file authorized_keys memiliki izin yang benar (biasanya 600) untuk keamanan. Pengaturan ini memungkinkan SSH untuk menggunakan otentikasi berbasis kunci, bukan kata sandi.

Apa penyebab umum kesalahan 'Izin SSH Ditolak (Publickey)'?

  • Penyebab umum kesalahan ini meliputi:
  • Izin salah pada file kunci SSH. Kunci pribadi harus dapat dibaca hanya oleh pengguna (600).
  • Kesalahan konfigurasi pada file konfigurasi SSH ( sshd_config atau ssh_config ).
  • Perangkat lunak klien atau server SSH kedaluwarsa yang mungkin tidak mendukung protokol autentikasi saat ini.
  • Firewall atau perangkat lunak keamanan memblokir port atau koneksi SSH.
  • Salah menyiapkan kunci publik di file authorized_keys , atau menggunakan nama pengguna yang salah untuk koneksi SSH.

Bagaimana cara memverifikasi apakah kunci SSH saya telah ditambahkan dengan benar ke server?

Untuk memverifikasi, masuk ke server dan periksa file ~/.ssh/authorized_keys . Kunci publik Anda harus terdaftar di sana. Anda juga dapat menguji koneksi dengan mencoba melakukan SSH ke server. Jika tidak meminta kata sandi, kuncinya telah ditambahkan dengan benar.

Mengapa penting untuk membatasi izin pada file kunci SSH?

Membatasi izin pada file kunci SSH sangat penting untuk keamanan. Jika orang lain dapat membaca kunci pribadi Anda, mereka berpotensi mengakses server Anda. Menjaga keamanan kunci pribadi memastikan bahwa hanya Anda yang dapat menggunakannya untuk mengautentikasi.

Bisakah perubahan konfigurasi SSH server menyebabkan kesalahan 'Izin Ditolak'?

Ya, perubahan pada file konfigurasi SSH server ( etc/ssh/sshd_config ) dapat menyebabkan kesalahan seperti itu. Misalnya, jika PubkeyAuthentication disetel ke no , server tidak akan menerima autentikasi kunci publik, yang menyebabkan kesalahan izin ditolak.

Apa yang harus saya lakukan jika klien SSH saya sudah usang?

Jika klien SSH Anda sudah usang, klien tersebut mungkin tidak mendukung metode autentikasi yang lebih baru atau mungkin memiliki kerentanan keamanan yang belum ditambal. Penting untuk memperbarui klien SSH Anda ke versi terbaru yang tersedia untuk sistem operasi Anda.

Bagaimana firewall mempengaruhi koneksi SSH?

Firewall dapat memblokir koneksi SSH jika dikonfigurasi untuk membatasi akses ke port SSH (defaultnya adalah 22). Pastikan firewall Anda mengizinkan lalu lintas pada port yang digunakan untuk SSH untuk mencegah masalah koneksi.

Sumber Daya Lainnya

Cara Install Sendmail di Linux 2024 (Langkah demi Langkah)

Perintah Dasar Linux untuk DevOps (Buku Panduan)

Membungkus

Pada artikel ini, kami telah mempelajari apa yang menyebabkan “Error: Izin Ditolak (Publickey)” dan cara memperbaikinya. Ingat, kesalahan ini seperti kunci yang tidak pas – biasanya ini berarti ada sesuatu yang salah dengan cara kunci SSH Anda diatur atau digunakan. Dengan mengikuti langkah-langkah yang kami uraikan, Anda seharusnya dapat menyelesaikan masalah dan kembali melakukan percakapan aman dengan komputer lain.