0Pricing
Cyber Security Academy · Pelajaran

Pengerasan SSH dan Autentikasi Berbasis Kunci

Nonaktifkan autentikasi kata sandi, konfigurasikan pasangan kunci, batasi akses dengan AllowUsers, dan gunakan fail2ban

Pengerasan SSH dan Autentikasi Berbasis Kunci adalah pelajaran Cyber Security Academy gratis di CoddyKit. Ini adalah pelajaran 3 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Cyber Security Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Cyber Security Academy mencakup 4 pelajaran total.

Mengapa Keamanan SSH Penting

SSH adalah protokol administrasi jarak jauh utama untuk server Linux. Server SSH yang salah konfigurasi merupakan salah satu titik masuk paling umum bagi penyerang — server ini terbuka ke internet dan terus-menerus menjadi sasaran bot yang mencoba banyak kata sandi.

Membuat Pasangan key SSH

Autentikasi berbasis key lebih kuat daripada kata sandi. Buat pasangan key:

ssh-keygen -t ed25519 -C "your_email"
# Creates ~/.ssh/id_ed25519 (private) and id_ed25519.pub (public)
# Never share the private key

Memasang key Publik

Salin key publik Anda ke server:

ssh-copy-id user@server
# Or manually:
cat ~/.ssh/id_ed25519.pub >> ~/.ssh/authorized_keys
chmod 700 ~/.ssh && chmod 600 ~/.ssh/authorized_keys

Menonaktifkan Autentikasi Kata Sandi

Setelah autentikasi berbasis key berfungsi, nonaktifkan masuk dengan kata sandi untuk menghilangkan risiko serangan coba-coba berulang:

# In /etc/ssh/sshd_config:
PasswordAuthentication no
PermitRootLogin no
PubkeyAuthentication yes
sudo systemctl restart sshd

Mengubah Port SSH Bawaan

Memindahkan SSH dari port 22 mengurangi gangguan pemindaian otomatis. Ini adalah keamanan melalui ketidakjelasan — bukan pertahanan yang sebenarnya, tetapi mengurangi banjir catatan. Selalu perbarui aturan firewall agar sesuai.

# /etc/ssh/sshd_config
Port 2222
# Then update firewall:
ufw allow 2222/tcp
ufw delete allow 22/tcp

Membatasi Akses SSH berdasarkan Pengguna/IP

Batasi pengguna yang dapat menggunakan SSH dan asal koneksinya:

# /etc/ssh/sshd_config
AllowUsers alice bob
AllowGroups sshusers
# Or restrict by source IP in /etc/hosts.allow:
sshd: 192.168.1.0/24

Batas Waktu dan Batas Masuk SSH

Kurangi paparan dengan membatasi sesi dan percobaan:

# /etc/ssh/sshd_config
ClientAliveInterval 300    # disconnect idle sessions after 5 min
ClientAliveCountMax 2
MaxAuthTries 3             # max password attempts
LoginGraceTime 30          # seconds to authenticate

Menggunakan fail2ban

fail2ban memantau berkas catatan dan memblokir IP yang menunjukkan pola berbahaya, misalnya terlalu banyak kegagalan masuk melalui SSH. Program ini memperbarui aturan firewall secara dinamis untuk memblokir penyerang.

apt install fail2ban
# /etc/fail2ban/jail.local:
[sshd]
enabled = true
maxretry = 3
bantime = 3600

Agen SSH dan Penerusan key

Agen SSH menyimpan key privat yang telah didekripsi di memori sehingga Anda tidak perlu memasukkan ulang frasa sandi setiap kali masuk. Penerusan agen (ssh -A) meneruskan key Anda melalui beberapa lompatan — gunakan dengan hati-hati, karena server perantara yang disusupi dapat mencuri key Anda dari soket agen.

Autentikasi Dua Faktor untuk SSH

Tambahkan TOTP ke SSH dengan modul PAM Google Authenticator untuk perlindungan tambahan, bahkan saat menggunakan autentikasi berbasis key. Diperlukan key AND OTP berbasis waktu untuk masuk.

Mengaudit Konfigurasi SSH

Verifikasi konfigurasi SSH Anda dengan:

sshd -T | grep -E "passwordauth|permitroot|pubkeyauth|port"
# Check who is connected:
ss -tnp | grep :22
who

Pemeriksaan Cepat: Penguatan SSH

Pengaturan sshd_config mana yang harus disetel ke no untuk menghilangkan serangan coba-coba kata sandi terhadap SSH?

Ringkasan Pelajaran

Penguatan SSH: gunakan key Ed25519, nonaktifkan autentikasi kata sandi, nonaktifkan masuk root, ubah port 22, batasi AllowUsers, tetapkan batas waktu tidak aktif, dan pasang fail2ban. Jangan pernah membagikan key privat. Audit dengan sshd -T. Penerusan agen memang praktis, tetapi berisiko pada host yang tidak tepercaya.

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Pengerasan SSH dan Autentikasi Berbasis Kunci” gratis?

Ya — teks lengkap “Pengerasan SSH dan Autentikasi Berbasis Kunci” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Cyber Security Academy, upgrade ke CoddyKit PRO. Kursus Cyber Security Academy mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Pengerasan SSH dan Autentikasi Berbasis Kunci”?

Nonaktifkan autentikasi kata sandi, konfigurasikan pasangan kunci, batasi akses dengan AllowUsers, dan gunakan fail2ban Kamu berlatih Cyber Security Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Cyber Security Academy?

Tidak diperlukan pengalaman sebelumnya. Cyber Security Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 3 dari 4.

Berapa lama pelajaran “Pengerasan SSH dan Autentikasi Berbasis Kunci” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Cyber Security Academy ini?

Ya. Setiap pelajaran Cyber Security Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Izin dan Kepemilikan Berkas
  2. Pengelolaan Pengguna dan Grup
  3. Pengerasan SSH dan Autentikasi Berbasis Kunci
  4. Aturan Firewall iptables dan UFW
← Kembali ke Cyber Security Academy