Cara Mengamankan Database Redis
Cara Mengamankan Instalasi Redis di Ubuntu Linux - Setelah kita menginstall Redis, ada beberapa yang harus di tweak terutama masalah security. Kita harus mengubah beberapa konfigurasi default, setidaknya mengikuti standar keamanan redis server. Nah di tutorial ini saya akan sharing langkah langkah yang harus dilakukan untuk mengamankan redis setelah instalasi.
Untuk proses instalasi redis saya anggap sudah selesai ya. Jadi disini saya fokus bahas apa yang akan dilakukan setelah proses instalasi.
Baca juga:
Pertama, kita set password untuk redis, dan pastikan juga redis di bind ke localhost. Secara default perintah perintah di redis server bisa dijalankan tanpa autentifikasi. Jadi siapapun yang sudah masuk ke redis tidak perlu password untuk menjalankan perintah yang ada. Begitu pula redis server ini kadang tidak di bind ke localhost sehingga bisa diakses diluar jaringan. Nah kita set agar redis hanya bisa diakses dari localhost saja.
sudo nano /etc/redis/redis.conf
Lalu cari
# requirepass foobared
dan hapus tanda # nya. Selanjutnya ganti foobared dengan password yang kalian kehendaki. Perhatikan peringatan yang ada di direktif requirepass.
# Warning: since Redis is pretty fast an outside user can try up toSangat jelas. Jadi jika kalian mengunakan password yang lemah, password kalian akan mudah untuk dicrack. Daripada bingung menentukan password yang kuat, kalian bisa meng-generate random password dengan openssl. Contoh perintah:
# 150k passwords per second against a good box. This means that you should
# use a very strong password otherwise it will be very easy to break.
#
openssl rand 66 | openssl base64 -AContoh output:
Vk6OEWmDWmR5OCMt56rygp5WKrze14yDEZn0GiaUoXAVlaWKLc3QA9ujRpnCKSiGenX5/BjZPbuctXX4Il6cI01h
Jadi di konfigurasinya menjadi:
requirepass Vk6OEWmDWmR5OCMt56rygp5WKrze14yDEZn0GiaUoXAVlaWKLc3QA9ujRpnCKSiGenX5/BjZPbuctXX4Il6cI01hMasih di /etc/redis/redis.conf, selanjutnya cari
# bind 127.0.0.1Hapus comment atau tanda #. Atau jika memang sudah tidak ada dari awal, tidak perlu diapa apakan.
Oke save. Sekarang restart redis.
sudo service resdis restartSelanjutnya cek dengan netstat apakalh local address nya sudah benar 127.0.0.1.
sudo netstat -plant | grep redisJika outputnya seperti dibawah ini berarti konfigurasi sudah benar
tcp 0 0 127.0.0.1:6379 0.0.0.0:* LISTEN 8152/redis-server 1
Jika lain, perlu di cek ulang apakah bind nya sudah benar mengarah ke localhost.
Selanjutnya login ke redis-cli.
redis-cli
Lalu test apakah kita bisa menjalankan perintah tanpa password.
127.0.0.1:6379> set key1 10(error) NOAUTH Authentication required.Sip, error karena kita belum memasukkan password. Sekarang kita coba lagi.
127.0.0.1:6379> auth Vk6OEWmDWmR5OCMt56rygp5WKrze14yDEZn0GiaUoXAVlaWKLc3QA9ujRpnCKSiGenX5/BjZPbuctXX4Il6cI01h OK 127.0.0.1:6379> set key1 10 OK 127.0.0.1:6379>Untuk password nya sesuaikan sendiri ya.
Oke langkah selanjutnya adalah menghapus atau merename beberapa perintah berbahaya sehingga tidak menggunakan perintah default. Perintah berbahaya sendiri meliputi perintah berikut:
FLUSHDB, FLUSHALL, KEYS, PEXPIRE, DEL, CONFIG, SHUTDOWN, BGREWRITEAOF, BGSAVE, SAVE, SPOP, SREM, RENAME, dan DEBUG
sudo nano /etc/redis/redis.conf
Lalu untuk rename tinggal ubah ke perintah baru. Sementara untuk menghapus atau mendisable cukup ubah ke empty string yang ditandai dengan tanda petik dua sebanyak dua kali. Kalo bingung lihat contoh berikut:
. . .
# It is also possible to completely kill a command by renaming it into
# an empty string:
#
rename-command FLUSHDB ""
rename-command FLUSHALL ""
rename-command DEBUG ""
. . .
. . .
rename-command CONFIG ""
rename-command SHUTDOWN shutd0wn
rename-command CONFIG c0nf1g
. . .
Sesuaikan sendiri ya untuk perintah mana yang akan dihapus maupun direname. Selanjutnya restart redis.
sudo service redis restart
Sekarang kita test.
127.0.0.1:6379> config get requirepassoutput
(error) ERR unknown command 'config'
Yep, karena sudah kita rename. Sekarang coba lagi dengan perintah yang baru:
127.0.0.1:6379> c0nf1g get requirepass
output
1) "requirepass"
2) "Vk6OEWmDWmR5OCMt56rygp5WKrze14yDE..."
Oke mungkin sekian tutorial kali ini, jika ada yang ingin ditanyakan silahkan komentar.
Referensi:
https://www.digitalocean.com/community/tutorials/how-to-secure-your-redis-installation-on-ubuntu-18-04
Posting Komentar untuk "Cara Mengamankan Database Redis"
Posting Komentar
Silahkan tinggalkan komentar jika ada masukan, pertanyaan, kritik ataupun dukungan. Namun pastikan untuk berkomentar secara sopan.