Juli 7, 2026
ChatGPT Image 6 Jul 2026, 07.04.52
Pelajari kesalahan konfigurasi SSH hardening di Rocky Linux 10, teknik troubleshooting cepat, tools diagnosis, dan solusi praktis untuk UKK TKJ dan LKS ITNSA.

SSH (Secure Shell) merupakan layanan paling penting dalam administrasi server Linux. Hampir seluruh administrator sistem menggunakan SSH untuk melakukan manajemen server secara remote, mulai dari konfigurasi layanan, monitoring sistem, hingga troubleshooting.

Pada lingkungan laboratorium sekolah, kompetisi LKS ITNSA, maupun UKK TJKT/TKJ, SSH menjadi salah satu layanan yang hampir selalu digunakan. Namun, banyak peserta mengalami kegagalan saat melakukan hardening SSH karena kesalahan konfigurasi yang menyebabkan akses remote terputus.

Masalah ini sering terjadi ketika administrator terlalu fokus pada aspek keamanan tanpa mempertimbangkan dampaknya terhadap akses manajemen server. Akibatnya, server memang menjadi lebih aman, tetapi tidak dapat diakses kembali.

Artikel ini membahas berbagai kesalahan konfigurasi SSH hardening yang paling sering terjadi pada Rocky Linux 10, lengkap dengan teknik diagnosis, troubleshooting, tools yang digunakan, serta langkah perbaikannya secara sistematis.


Mengapa SSH Hardening Sangat Penting?

SSH hardening bertujuan untuk meningkatkan keamanan akses remote dengan cara:

  • Mengurangi risiko brute force attack
  • Membatasi akses pengguna tertentu
  • Menonaktifkan metode autentikasi yang lemah
  • Mengubah konfigurasi default
  • Mengaktifkan logging dan monitoring

Tanpa hardening, server rentan terhadap:

  • Percobaan login massal
  • Password guessing
  • Credential stuffing
  • Serangan bot otomatis
  • Eksploitasi konfigurasi yang lemah

Namun hardening yang salah justru dapat menyebabkan administrator terkunci dari server.


Memahami File Konfigurasi SSH

Lokasi utama konfigurasi SSH Server:

/etc/ssh/sshd_config

Sebelum melakukan perubahan:

cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak

Validasi konfigurasi:

sshd -t

Reload layanan:

systemctl restart sshd

Cek status:

systemctl status sshd

Kesalahan #1: Menonaktifkan Root Login Tanpa Membuat User Administrator

Penyebab

Administrator langsung mengubah:

PermitRootLogin no

tetapi belum membuat user alternatif.

Dampak

Tidak dapat login ke server.

Diagnosis

Coba login menggunakan user biasa:

ssh admin@server

Jika gagal:

id admin

Solusi

Buat user administrator terlebih dahulu:

useradd admin
passwd admin

Tambahkan ke sudoers:

usermod -aG wheel admin

Kesalahan #2: Salah Menentukan Port SSH

Penyebab

Mengubah port:

Port 2222

namun lupa membuka firewall.

Dampak

SSH tidak dapat diakses.

Diagnosis

Cek port aktif:

ss -tulpn | grep ssh

atau

netstat -tulpn | grep ssh

Solusi

Buka firewall:

firewall-cmd --permanent --add-port=2222/tcp
firewall-cmd --reload

Verifikasi:

firewall-cmd --list-all

Kesalahan #3: Firewall Memblokir SSH

Penyebab

Rule firewall tidak sesuai.

Diagnosis

Cek layanan:

firewall-cmd --list-services

Cek port:

firewall-cmd --list-ports

Solusi

Tambahkan service SSH:

firewall-cmd --permanent --add-service=ssh
firewall-cmd --reload

Kesalahan #4: SELinux Memblokir Port Baru SSH

Penyebab

SSH dipindahkan ke port selain default.

Contoh:

Port 2222

Diagnosis

Cek SELinux:

getenforce

Lihat port yang diizinkan:

semanage port -l | grep ssh

Solusi

Tambahkan port baru:

semanage port -a -t ssh_port_t -p tcp 2222

Verifikasi:

semanage port -l | grep ssh

Kesalahan #5: Salah Sintaks pada sshd_config

Penyebab

Kesalahan penulisan parameter.

Contoh:

PermitRootLogin none

Parameter valid:

PermitRootLogin no

Diagnosis

Gunakan:

sshd -t

Solusi

Perbaiki sintaks sesuai dokumentasi.


Kesalahan #6: Menonaktifkan Password Authentication Terlalu Cepat

Penyebab

Konfigurasi:

PasswordAuthentication no

sebelum public key terpasang.

Dampak

Semua user gagal login.

Solusi

Pastikan key SSH berfungsi:

ssh-copy-id admin@server

Uji login terlebih dahulu sebelum menonaktifkan password.


Kesalahan #7: Permission File SSH Salah

Diagnosis

ls -la ~/.ssh

Permission yang Benar

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

Dampak

Public key diabaikan oleh SSH.


Kesalahan #8: Authorized Keys Salah Lokasi

Penyebab

File berada di lokasi berbeda.

Diagnosis

Cek:

grep AuthorizedKeysFile /etc/ssh/sshd_config

Solusi

Sesuaikan lokasi file dengan konfigurasi.


Kesalahan #9: Konfigurasi AllowUsers Terlalu Ketat

Contoh

AllowUsers admin

User lain otomatis ditolak.

Diagnosis

Periksa:

grep AllowUsers /etc/ssh/sshd_config

Solusi

Tambahkan user yang diperlukan:

AllowUsers admin operator

Kesalahan #10: DenyUsers Tidak Sengaja Memblokir Administrator

Contoh

DenyUsers admin

Dampak

Administrator tidak bisa login.

Solusi

Periksa kembali daftar user yang diblokir.


Kesalahan #11: SSH Service Tidak Berjalan

Diagnosis

systemctl status sshd

Solusi

Jalankan:

systemctl enable sshd
systemctl start sshd

Kesalahan #12: DNS atau Hostname Salah

Diagnosis

ping hostname

atau

nslookup hostname

Solusi

Perbaiki DNS server atau gunakan alamat IP langsung.


Kesalahan #13: Konfigurasi Fail2Ban Terlalu Agresif

Dampak

Administrator ikut terblokir.

Diagnosis

fail2ban-client status sshd

Solusi

Unban IP:

fail2ban-client set sshd unbanip 192.168.1.10

Kesalahan #14: Konfigurasi TCP Wrappers atau ACL Salah

Diagnosis

Periksa:

cat /etc/hosts.allow
cat /etc/hosts.deny

Solusi

Pastikan IP administrator diizinkan.


Kesalahan #15: Tidak Menguji Konfigurasi Sebelum Restart

Ini merupakan kesalahan paling fatal.

Best Practice

Selalu jalankan:

sshd -t

sebelum:

systemctl restart sshd

Tools Diagnosis SSH yang Wajib Dikuasai

1. ssh

Mode verbose:

ssh -v user@server

Lebih detail:

ssh -vvv user@server

2. journalctl

Melihat log SSH:

journalctl -u sshd

Realtime:

journalctl -u sshd -f

3. ss

Memeriksa port listening:

ss -tulpn

4. firewall-cmd

Diagnosa firewall:

firewall-cmd --list-all

5. semanage

Diagnosa SELinux:

semanage port -l

6. tcpdump

Monitoring trafik SSH:

tcpdump -i any port 22

7. nmap

Scan port SSH:

nmap -p 22 server-ip

Langkah Troubleshooting Cepat Saat SSH Tidak Bisa Diakses

Langkah 1

Cek service:

systemctl status sshd

Langkah 2

Validasi konfigurasi:

sshd -t

Langkah 3

Periksa port listening:

ss -tulpn | grep ssh

Langkah 4

Periksa firewall:

firewall-cmd --list-all

Langkah 5

Periksa SELinux:

getenforce

Langkah 6

Periksa log:

journalctl -u sshd

Langkah 7

Uji koneksi:

ssh -vvv user@server

Studi Kasus UKK dan LKS ITNSA

Seorang peserta mengubah konfigurasi berikut:

Port 2222
PermitRootLogin no
PasswordAuthentication no

Setelah restart, server tidak dapat diakses.

Analisis:

  • Port baru belum dibuka di firewall
  • SELinux belum dikonfigurasi
  • Public key belum dipasang
  • Root login sudah dinonaktifkan

Solusi:

  1. Login melalui console.
  2. Buka firewall.
  3. Tambahkan port SELinux.
  4. Pasang SSH key.
  5. Uji koneksi.
  6. Restart ulang layanan.

Kasus seperti ini sangat sering muncul pada simulasi UKK maupun LKS.


Best Practice SSH Hardening Rocky Linux 10

  • Gunakan SSH key authentication.
  • Nonaktifkan root login.
  • Gunakan user administrator terpisah.
  • Aktifkan logging.
  • Gunakan Fail2Ban.
  • Batasi akses menggunakan AllowUsers.
  • Ganti port default jika diperlukan.
  • Terapkan firewall dan SELinux dengan benar.
  • Backup konfigurasi sebelum perubahan.
  • Selalu lakukan pengujian sebelum restart service.

Kesimpulan

SSH hardening merupakan langkah penting untuk meningkatkan keamanan server Rocky Linux 10. Namun, kesalahan konfigurasi kecil dapat menyebabkan administrator kehilangan akses ke server. Dengan memahami kesalahan yang paling sering terjadi, menggunakan tools diagnosis yang tepat, dan menerapkan prosedur troubleshooting yang sistematis, peserta UKK TJKT maupun LKS ITNSA dapat menyelesaikan masalah dengan cepat dan akurat.

Kunci utama keberhasilan bukan hanya menghafal perintah, tetapi memahami hubungan antara SSH, firewall, SELinux, user management, dan network connectivity sehingga proses troubleshooting dapat dilakukan secara logis dan efisien.

FAQ

Pertanyaan: Apa tujuan utama SSH hardening?
Jawaban: Meningkatkan keamanan akses remote dengan mengurangi risiko serangan brute force, credential theft, dan akses tidak sah.

Pertanyaan: Mengapa SSH tidak bisa diakses setelah mengganti port?
Jawaban: Biasanya karena firewall atau SELinux belum dikonfigurasi untuk mengizinkan port baru.

Pertanyaan: Perintah apa yang paling penting sebelum restart SSH?
Jawaban: sshd -t untuk memvalidasi konfigurasi dan mendeteksi kesalahan sintaks.

Pertanyaan: Apakah root login sebaiknya dinonaktifkan?
Jawaban: Ya, tetapi pastikan sudah tersedia user administrator dengan hak sudo sebelum menonaktifkannya.

Pertanyaan: Tools apa yang paling sering digunakan untuk troubleshooting SSH?
Jawaban: ssh -vvv, journalctl, ss, firewall-cmd, semanage, tcpdump, dan nmap.

Pertanyaan: Apa penyebab public key authentication gagal?
Jawaban: Umumnya karena permission folder .ssh atau file authorized_keys tidak sesuai standar keamanan SSH.

Sudah pernah mengalami server tidak bisa diakses setelah melakukan SSH hardening? Bagikan pengalaman, solusi, atau pertanyaan Anda di kolom komentar.

Jika artikel ini bermanfaat, jangan lupa membagikannya kepada rekan guru TJKT, peserta UKK, peserta LKS ITNSA, maupun administrator server lainnya. Jelajahi juga artikel terkait Rocky Linux 10, Linux Server, Cybersecurity, dan Administrasi Jaringan untuk meningkatkan keterampilan troubleshooting dan keamanan infrastruktur IT Anda.

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *

Dilindungi Oleh
Shield Security