Secure Shell (SSH) merupakan salah satu opsi teraman untuk masuk ke dalam sistem Linux secara remote. Namun, ada cara untuk membuat teknologi ini menjadi lebih aman.
Kami telah menggunakan Secure Shell (SSH) selama beberapa dekade. Dengan alat login remote ini, saya dapat yakin bahwa mesin remote saya menerima login secara aman dan efisien.
Namun demikian, saya juga memahami bahwa tidak ada yang benar-benar aman 100% pada setiap perangkat yang terhubung ke jaringan, itulah sebabnya saya selalu meluangkan waktu untuk lebih mengamankan SSH pada setiap komputer yang saya gunakan.
Anda mungkin akan terkejut betapa mudahnya menambahkan beberapa “lapisan” keamanan tambahan. Seperti yang saya soroti di bawah ini, ada beberapa tips yang mudah untuk diterapkan yang akan membantu desktop dan server Linux Anda menjadi sedikit lebih aman, sehingga Anda dapat percaya bahwa mereka lebih terlindungi dari login yang tidak diinginkan.
Mari kita mulai.
1. Pasang fail2ban
Salah satu hal pertama yang harus Anda lakukan (terutama pada server) adalah memasang fail2ban, yang mencegah serangan login jahat dan brute-force dan juga dapat digunakan untuk memantau protokol jaringan lainnya (seperti HTTP, SSH, dan FTP).
Dengan fail2ban, Anda membuat penjara (jails), yang merupakan konfigurasi yang memberi tahu sistem apa yang harus dilakukan ketika hal-hal tertentu terjadi (seperti percobaan login SSH yang gagal). Berkas penjara (biasanya bernama jail.local) berada di /etc/fail2ban/ dan mungkin terlihat seperti ini:
[sshd]
enabled = true port = ssh filter = sshd logpath = /var/log/auth.log maxretry = 3 findtime = 300 bantime = 28800 ignoreip = 127.0.0.1
Anda dapat memasang fail2ban pada sistem berbasis Debian, dengan perintah berikut:
sudo apt-get install fail2ban -y
Pada sistem berbasis Fedora, perintah tersebut adalah:
sudo dnf install fail2ban -y
2. Ubah port default
Secara default, SSH menggunakan port 22 untuk koneksi masuk. Koneksi ini merupakan pengetahuan umum dan dapat menimbulkan masalah. Pada sistem yang lebih penting bagi saya, saya selalu mengubah port ke sesuatu yang lain, seperti 2124. Penting bagi Anda untuk mengubah port ke sesuatu yang tidak digunakan oleh sistem lain.
Konfigurasi port diatur di file /etc/ssh/sshd_config dan pada baris #Port 22.
Pastikan untuk menghapus karakter # dan mengganti 22 dengan port yang ingin Anda gunakan. Setelah Anda melakukan perubahan, ingatlah untuk me-restart SSH dengan:
sudo systemctl restart ssh
Pada sistem berbasis Fedora, perintah tersebut adalah:
sudo systemctl restart sshd
3. Blokir pengguna dengan kata sandi kosong
Meskipun Anda mungkin tidak memiliki pengguna pada sistem Anda dengan kata sandi kosong, tips ini termasuk dalam kategori “lebih baik mencegah daripada menyesali”. Jika Anda memiliki pengguna dengan kata sandi kosong, dan seorang aktor jahat menemukannya, mereka dapat mengakses mesin Anda dengan mudah. Untuk mencegah situasi tersebut, buka file /etc/ssh/sshd_config dan cari baris:
#PermitEmptyPasswords no
Ubah baris tersebut menjadi:
PermitEmptyPasswords no
Simpan dan tutup file kemudian restart SSH.
4. Batasi login ke alamat IP tertentu
Triks lain yang sangat berguna adalah membatasi akses SSH ke alamat IP tertentu. Misalnya, jika Anda hanya memiliki satu orang yang perlu mengakses sebuah mesin, dan alamat IP mereka adalah 192.168.1.11, Anda dapat membatasi akses SSH dengan bantuan file /etc/hosts.allow. Buka file tersebut dengan editor teks favorit Anda, seperti nano, dan tambahkan baris berikut di bagian bawah:
sshd: 192.168.1.62, 192.168.1.11
Jika Anda memiliki lebih dari satu alamat IP yang ingin Anda izinkan, Anda dapat menambahkan sebanyak yang diperlukan, dengan memisahkan setiap alamat dengan koma, seperti ini:
sshd: 192.168.1.62, 192.168.1.11, 192.168.1.12, 192.168.1.13, 192.168.1.14
Simpan dan tutup file.
5. Gunakan otentikasi kunci SSH
Pentingnya otentikasi kunci SSH tidak dapat dibesar-besarkan. Saya sudah menunjukkan dalam artikel lain bagaimana teknik ini diatur, jadi pastikan untuk membaca artikel tersebut dan menerapkan taktik tersebut. Bersama dengan fail2ban, otentikasi kunci SSH adalah cara yang bagus untuk mencegah login SSH yang tidak diinginkan.
Dan itulah lima cara mudah untuk mengamankan SSH baik pada desktop maupun server Linux Anda. Hanya karena SSH memiliki kata ‘secure’ di dalamnya, tidak berarti itu harus dipandang sebagai cara untuk mencapai akhir yang aman.
Dengan sedikit konfigurasi tambahan, login SSH Anda akan lebih terlindungi dari para pelaku jahat yang berkeliaran di internet mencari akses ke sistem.