Memberikan Akses SSH ke Mesin Remote dengan Aman
3 min read

Memberikan Akses SSH ke Mesin Remote dengan Aman

Memberikan akses SSH (Secure Shell) ke mesin remote adalah kebutuhan yang sangat umum, terutama ketika kita bekerja dalam tim, menangani server produksi, atau berkolaborasi dengan engineer lain. Meski terdengar sederhana, praktik yang salah — seperti berbagi password — bisa menimbulkan risiko keamanan yang serius.

Artikel ini membahas cara memberikan akses SSH ke mesin remote dengan benar dan aman menggunakan SSH key authentication, lengkap dengan contoh dan best practice yang umum dipakai di dunia profesional.


Apa Itu SSH dan Kenapa Harus Menggunakan SSH Key?

SSH adalah protokol jaringan terenkripsi yang memungkinkan kita mengakses dan mengontrol mesin remote melalui terminal secara aman.

Saat ingin memberikan akses ke orang lain, berbagi password bukanlah solusi yang baik, karena:

  • Password bisa bocor atau dibagikan ulang
  • Sulit melacak siapa yang mengakses server
  • Sulit mencabut akses tanpa mengganti password

Solusi yang direkomendasikan adalah SSH Key Authentication, di mana setiap user memiliki identitas unik berupa pasangan private key dan public key.


Konsep Dasar SSH Key

SSH key terdiri dari dua bagian:

  • Private key → disimpan di komputer user, tidak boleh dibagikan
  • Public key → disimpan di server, aman untuk dibagikan

Server akan memverifikasi kecocokan antara private key milik user dan public key yang terdaftar di server.


Langkah-Langkah Memberikan Akses SSH

Minta Public Key dari User

User yang ingin diberi akses harus membuat SSH key di mesinnya:

ssh-keygen -t rsa

Perintah ini akan menghasilkan:

  • ~/.ssh/id_rsa → private key
  • ~/.ssh/id_rsa.pub → public key

Public key dapat ditampilkan dengan:

cat ~/.ssh/id_rsa.pub

Mintalah isi public key ini (bukan file, cukup teksnya).

Login ke Server Remote

Masuk ke server menggunakan akun yang sudah punya akses:

ssh user@remote-ip

Ganti user dan remote-ip sesuai dengan konfigurasi server.

Tambahkan Public Key ke Server

Di server, buka file authorized_keys:

nano ~/.ssh/authorized_keys

Jika direktori .ssh belum ada, buat terlebih dahulu:

mkdir -p ~/.ssh

Paste public key user ke baris baru di file tersebut.

Alternatif cepat:

echo "PASTE_PUBLIC_KEY_DISINI" >> ~/.ssh/authorized_keys

Pastikan Permission File Benar

Permission yang salah sering menjadi penyebab SSH gagal login.

Gunakan permission berikut:

chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys

Uji Akses SSH

Sekarang user dapat mencoba login:

ssh user@remote-ip

Jika konfigurasi benar, user akan bisa login tanpa memasukkan password.


Kenapa Cara Ini Lebih Aman?

Menggunakan SSH key memberikan beberapa keuntungan:

  • Setiap user memiliki identitas unik
  • Akses bisa dicabut dengan menghapus satu baris public key
  • Lebih tahan terhadap brute-force attack
  • Tidak perlu membagikan password

Pendekatan ini adalah standar industri untuk mengelola akses server.


Tips dan Best Practice

  • Jangan pernah membagikan private key
  • Gunakan passphrase pada private key
  • Hapus public key dari authorized_keys jika akses tidak diperlukan lagi
  • Batasi akses menggunakan user terpisah, jangan selalu pakai root

Kesimpulan

Memberikan akses SSH ke mesin remote seharusnya dilakukan dengan SSH key authentication, bukan dengan berbagi password.

Dengan hanya menambahkan public key ke file authorized_keys, kamu bisa:

  • Memberikan akses dengan aman
  • Mengontrol siapa yang bisa masuk
  • Mencabut akses dengan mudah

Pendekatan ini sederhana, aman, dan sangat direkomendasikan untuk semua environment — baik development, s