Pernah dengar cerita server down gara-gara database diretas? Banyak yang menganggap keamanan database cuma urusan sepele, padahal MySQL dan MariaDB yang sering kita pakai pada website atau aplikasi juga bisa jadi target empuk hacker.
1. Hapus Pengguna Tanpa Password
Beberapa instalasi lama MySQL atau MariaDB masih menyimpan akun anonim atau tanpa kata sandi. Ini seperti membiarkan pintu server terbuka lebar. Lakukan 3 langkah dibawah untuk mengaudit dan menghapus pengguna yang tidak menggunakan password atau tanpa password
- Periksa akun dengan perintah
SELECT user, host FROM mysql.user; - Hapus akun tanpa password dengan
DROP USER ''@'localhost'; - Gunakan password kuat, stop biasakan menggunakan password seperti “12345” atau “password”.
2. Ubah Port Default 3306
Secara default, MySQL berjalan di port 3306. Ini sudah umum diketahui penyerang (hacker). Antisipasi dengan mengganti port yang sulit diketahui (meski masih dapat discan oleh hacker, namun cara ini akan mempersulit penyerang dalam menyerang database website atau aplikasi.)
- Langkah: edit file konfigurasi
/etc/my.cnf
[mysqld]
port=4587
- Restart layanan dengan
systemctl restart mysqld
Mengubah port tidak sepenuhnya mengamankan, tapi bisa menyulitkan scanner bot otomatis yang biasa digunakan hacker-hacker dalam scanning port.
3. Hindari Menjalankan MySQL sebagai Root
Jalankan MySQL di bawah akun user khusus, hindari menggunakan user root. Jika akun root dapat digunakan oleh penyerang, bukan hanya database yang berbahaya namun website juga ikut berbahaya.
- Buat user baru dengan command:
useradd -r mysqluser
- Pastikan MySQL berjalan dengan user ini (
user=mysqluserdi dalam konfigurasi).
Tujuannya agar seandainya sistem disusupi, akun root tetap aman dan tidak digunakan eksploitasi lebih lanjut seperti SQL Injection Into Out File.
4. Batasi Akses SHOW DATABASES
Perintah SHOW DATABASES memudahkan peretas memetakan struktur database.
- Tambahkan di file
/etc/my.cnf:
[mysqld]
skip-show-database
Beri hak akses pada yang benar-benar diperlukan.
5. Gunakan Enkripsi & SSL/TLS
Jangan biarkan data berpindah dalam bentuk teks biasa.
- Aktifkan SSL/TLS di MySQL:
require_secure_transport=ON
- Simpan sertifikat di lokasi aman.
- Untuk data sensitif, gunakan fungsi
AES_ENCRYPT()danAES_DECRYPT().
6. Kelola Hak Akses dengan Bijak
Gunakan perintah GRANT hanya untuk hak yang dibutuhkan.
Contoh:
GRANT SELECT, INSERT ON database.* TO ‘user’@’localhost’;
Hindari menggunakan GRANT ALL PRIVILEGES.
Jangan biarkan memberi kunci semua ruangan pada satu orang dan itu sangat berisiko besar.
7. Aktifkan Firewall Database
Gunakan firewall untuk membatasi IP yang bisa mengakses server database.
- Di Linux, kamu bisa menggunakan
ufwatauiptables. - Hanya izinkan IP aplikasi dan admin.
Contoh:
sudo ufw allow from 192.168.1.10 to any port 4587
8. Audit & Monitoring Keamanan
Pantau log akses dan aktivitas mencurigakan.
- Aktifkan log query:
general_log=ON - Gunakan tools seperti Fail2Ban atau OSSEC
- Lakukan audit rutin, misalnya setiap sebulan sekali
9. Backup dan Recovery
Backup penting, tapi harus aman juga.
- Gunakan enkripsi pada file backup
- Simpan di lokasi terpisah (cloud atau offsite)
- Uji file backup secara berkala untuk memastikan file backup masih bisa dipulihkan
10. Hardening Server
Selain database, sistem operasi juga perlu diamankan.
- Menutup port yang tidak digunakan
- Gunakan SSH key authentication
- Rutin update OS dan package
Ini bagian dari hardening database server Linux, langkah awal untuk mencegah serangan dari dalam maupun luar.
Menjaga keamanan database MySQL dan MariaDB bukan pekerjaan sekali jadi. Mulailah dari hal basic seperti menggunakan password yang susah ditebak, akses port aman, membatasi hak akses, hingga backup yang terenkripsi. Dengan langkah-langkah ini, kamu tidak hanya melindungi data, tapi juga kepercayaan pengguna.
Sebagai penutup, jika Anda ingin bisnis Anda lebih dikenal dan muncul di halaman pertama Google, Jasa SEO Terpercaya Optimaise siap membantu! Dengan pengalaman dan strategi SEO yang teruji, kami telah berhasil meningkatkan visibilitas banyak bisnis di Malang, Bali, dan Jakarta. Jangan biarkan pesaing Anda selangkah lebih maju—optimalkan website Anda sekarang juga!
💡 Dapatkan strategi SEO terbaik untuk bisnis Anda! Kunjungi optimaise.co.id dan berlangganan layanan kami untuk hasil yang maksimal. 🚀

