📢 Selamat datang di Ruang Nate! 👋 📝 Follow blog ini untuk update terbaru 🔔 👍 Like dan share jika suka artikelnya ❤️

Cara Mudah Setup SSH Key untuk GitHub (Biaran Gak Capek Login Terus)

Daftar Isi

Pernah merasa kesel setiap kali mau git push atau git pull harus masukkan username dan password GitHub? Apalagi kalau lagi buru-buru atau tiap kali clone repo harus login dulu.

Tenang, ada solusinya: SSH Key. Dengan SSH, kamu bisa melakukan operasi Git ke GitHub tanpa perlu login lagi. Sekali setup, selamanya nyaman. Berikut cara lengkapnya.


Apa itu SSH Key?

SSH Key adalah pasangan kunci kriptografi yang terdiri dari:

  • Private key — disimpan rahasia di laptop kamu

  • Public key — didaftarkan ke GitHub (atau server lain)

Ketika kamu terhubung ke GitHub via SSH, sistem akan mencocokkan public key yang kamu daftarkan dengan private key di laptop kamu. Cocok? Langsung masuk tanpa perlu password.


Langkah 1: Cek SSH Key yang Sudah Ada

Buka terminal/cmd, lalu ketik:

ls -la ~/.ssh/

Kalau muncul file seperti id_ed25519 dan id_ed25519.pub, artinya kamu sudah punya SSH key dan bisa lanjut ke Langkah 4.

Kalau belum ada (folder kosong atau error "No such file or directory"), lanjut ke Langkah 2.


Langkah 2: Generate SSH Key Baru

ssh-keygen -t ed25519 -C "emailkamu@example.com"

Ganti emailkamu@example.com dengan email yang terdaftar di GitHub.

Nanti bakal muncul pertanyaan:

Enter file in which to save the key (/home/user/.ssh/id_ed25519):

Tekan Enter aja biar default.

Enter passphrase (empty for no passphrase):

Ini opsional. Kalau mau lebih aman, boleh diisi password. Tapi kalau pengen praktis, langsung Enter aja (kosongkan).


Langkah 3: Tambah SSH Key ke SSH Agent

eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_ed25519

Langkah 4: Copy Public Key

cat ~/.ssh/id_ed25519.pub

Akan muncul teks panjang seperti ini:

ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHPtPlMU+8s1icz9es5gKIFzKeillMeCqGN7JVeoOiJb emailkamu@example.com

Copy seluruh teks tersebut dari ssh-ed25519 sampai email.


Langkah 5: Daftarkan Public Key ke GitHub

  1. Buka github.com/settings/ssh/new

  2. Login kalau belum

  3. Isi form:

    • Title: Misalnya Laptop Lenovo atau PC Rumah (terserah)

    • Key type: Pilih Authentication Key

    • Key: Paste teks public key tadi

  4. Klik tombol hijau "Add SSH key"

Selesai! Sekarang GitHub sudah kenal dengan laptop kamu.


Langkah 6: Test Koneksi

Pastikan kamu sudah terhubung ke internet, lalu ketik:

ssh -T git@github.com

Kalau berhasil, akan muncul pesan:

Hi namauser! You've successfully authenticated, but GitHub does not provide shell access.

Kalau muncul pesan gitu, selamat! SSH key kamu sudah berfungsi.


Langkah 7: Clone Repo Pakai SSH

Sekarang, saat clone repo, gunakan URL SSH bukan HTTPS.

❌ HTTPS (ribet — tiap push minta login):

git clone https://github.com/namedekaka/nama-repo.git

✅ SSH (sekali setup, langsung jalan):

git clone git@github.com:namedekaka/nama-repo.git

Gimana cara dapetin URL SSH-nya?

  • Buka repo di GitHub

  • Klik tombol hijau "Code"

  • Pilih tab "SSH"

  • Copy URL yang muncul


Tips & Catatan Penting

HalKeterangan
Private key jangan bocorFile id_ed25519 (tanpa .pub) jangan pernah dibagikan ke siapa pun
Satu key untuk banyak repoCukup daftarkan 1 public key, bisa dipakai untuk semua repo kamu
Ganti laptop?Generate key baru dan daftarkan lagi
Bisa pakai banyak keyKamu bisa menambahkan beberapa SSH key berbeda (misal untuk laptop kerja dan laptop pribadi)
PassphraseKalau khawatir laptop hilang, tambahkan passphrase saat generate key

Troubleshooting

Masalah: Permission denied (publickey)

Penyebab: Public key belum terdaftar di GitHub atau private key tidak ditemukan.

Solusi:

  1. Cek apakah key sudah terdaftar: cat ~/.ssh/id_ed25519.pub

  2. Bandingkan dengan yang ada di GitHub Settings > SSH keys

  3. Jalankan: ssh-add ~/.ssh/id_ed25519

Masalah: Host key verification failed

Penyebab: GitHub belum dikenal di laptop kamu.

Solusi:

ssh-keyscan github.com >> ~/.ssh/known_hosts

Penutup

Dengan SSH key, workflow Git kamu jadi jauh lebih cepat dan nyaman. Cukup setup sekali dan kamu bisa push, pull, clone sepuasnya tanpa bolak-balik login.

Ada pertanyaan? Tulis di kolom komentar ya!

Happy coding!

Posting Komentar