Redis, yang merupakan singkatan dari “server kamus jarak jauh,” adalah penyimpanan nilai kunci yang menyimpan data sebagai pasangan nilai kunci. Redis adalah database NoSQL, artinya tidak memiliki tabel, baris dan kolom seperti pada database MySQL dan Oracle. Itu tidak menggunakan INSERT, SELECT, UPDATE dan DELETE. Alih-alih ini, Redis menggunakan struktur data untuk menyimpan data. Ini menggunakan lima struktur data utama termasuk Strings, Lists, Sets, Sorted Sets, dan Hash, serta tiga struktur data tambahan termasuk bitmap, hyperloglogs dan indeks geospasial. Salah satu fitur yang paling penting dari Redis adalah bahwa itu adalah database dalam memori, yang berarti menyimpan data dalam memori, membuatnya super cepat. Namun, Redis juga memiliki opsi untuk menulis data ke disk.
Dalam tutorial ini, kami akan menunjukkan cara menginstal dan mengamankan Redis di Ubuntu 18.04.
Prasyarat
- VPS Ubuntu 18.04 baru di Platform Cloud Atlantic.net.
- Kata sandi root yang dikonfigurasi di server Anda.
Buat Server Cloud Atlantic.Net
Pertama, masuk ke Server Cloud Atlantic.Net Anda. Buat server baru, pilih Ubuntu 18.04 sebagai sistem operasi dengan setidaknya 1GB RAM. Hubungkan ke Server Cloud Anda melalui SSH dan masuk menggunakan kredensial yang disorot di bagian atas halaman.
Setelah Anda masuk ke server Ubuntu 18.04 Anda, jalankan perintah berikut untuk memperbarui sistem dasar Anda dengan paket terbaru yang tersedia.
apt-get update -y
Instal Server Redis
apt-get install redis-server php-redis -y
Setelah menginstal server Redis, Anda perlu mengonfigurasi server Redis untuk menggunakan sistem init untuk mengelola Redis sebagai layanan. Anda dapat mengonfigurasinya dengan mengedit file redis.conf:
nano /etc/redis/redis.conf
Temukan baris berikut:
supervised no
Ganti dengan baris berikut:
supervised systemd
Simpan dan tutup file. Kemudian, mulai ulang layanan Redis untuk menerapkan perubahan:
systemctl restart redis
Anda juga dapat memeriksa status layanan Redis dengan perintah berikut:
systemctl status redis
Anda akan mendapatkan output berikut:
Verifikasi Server Redis
Disarankan untuk menguji apakah server Redis berfungsi seperti yang diharapkan atau tidak.
Anda dapat mengujinya menggunakan utilitas baris perintah redis-cli:
redis-cli 127.0.0.1:6379> ping
Jika semuanya baik-baik saja, Anda akan mendapatkan output berikut:
PONG
Anda sekarang dapat keluar dari shell Redis dengan perintah berikut:
exit
Anda juga dapat memeriksa versi Redis dengan perintah berikut:
redis-cli -v
Keluaran:
redis-cli 4.0.9
Untuk informasi lebih lanjut tentang Redis, jalankan perintah berikut:
redis-cli info
Anda akan melihat layar berikut:
Anda juga dapat memverifikasi port mendengarkan Redis dengan perintah berikut:
netstat -lnp | grep redis
Anda akan melihat bahwa server Redis mendengarkan di localhost pada port 6379:
Amankan Redis dengan Kata Sandi
Pertama, buat kata sandi yang kuat dengan perintah OpenSSL seperti yang ditunjukkan di bawah ini:
openssl rand 60 | openssl base64 -A
Anda akan melihat output berikut (password seperti ini):
MGDCmmWh2Ot+aZDv7TBr54SY5PueoSAVhX41sApcOLWYBTlPrfe01OT/nqO0YWK/y0ROozsDi9Dw61jR
Sekarang, rekatkan kata sandi Anda di file konfigurasi Redis /etc/redis/redis.conf:
nano /etc/redis/redis.conf
Temukan baris berikut:
# requirepass foobared
Ganti dengan baris berikut:
requirepass MGDCmmWh2Ot+aZDv7TBr54SY5PueoSAVhX41sApcOLWYBTlPrfe01OT/nqO0YWK/y0ROozsDi9Dw61jR
Simpan dan tutup file. Kemudian, mulai ulang layanan Redis untuk menerapkan perubahan:
systemctl restart redis
Sekarang, sambungkan ke baris perintah Redis dengan perintah berikut:
redis-cli 127.0.0.1:6379>
Sekarang, jalankan perintah berikut untuk menguji apakah kata sandi Redis berfungsi:
127.0.0.1:6379> set test "How Are You"
Anda akan mendapatkan kesalahan berikut karena tidak mengautentikasi:
(error) NOAUTH Authentication required.
Sekarang, otentikasi Redis dengan kata sandi seperti yang ditunjukkan di bawah ini:
127.0.0.1:6379> auth MGDCmmWh2Ot+aZDv7TBr54SY5PueoSAVhX41sApcOLWYBTlPrfe01OT/nqO0YWK/y0ROozsDi9Dw61jR
Anda akan mendapatkan output berikut:
OK
Sekarang, jalankan kembali perintah sebelumnya:
127.0.0.1:6379> set test "How Are You"
Keluaran:
OK
Sekarang, dapatkan nilai tesnya:
127.0.0.1:6379> get test
Anda akan melihat output berikut:
"How Are You"
Setelah pengujian berhasil, keluar dari baris perintah Redis dengan perintah berikut:
127.0.0.1:6379> exit
Ganti Nama Perintah Berbahaya
Itu selalu merupakan ide yang baik untuk mengganti nama beberapa perintah berbahaya termasuk config, shutdown, flushdb, flushall dan rename. Perintah ini dapat menghancurkan atau menghapus data Anda jika dijalankan secara tidak sengaja.
Anda dapat mengganti nama perintah ini dengan mengedit file /etc/redis/redis.conf:
nano /etc/redis/redis.conf
Tambahkan baris berikut di akhir file:
rename-command CONFIG ATLANTICCONFIG rename-command FLUSHDB ATLANTICFLUSHDB rename-command SHUTDOWN ATLANTICSHUTDOWN rename-command FLUSHALL ATLANTICFLUSHALL
Simpan dan tutup file, lalu mulai ulang layanan Redis untuk menerapkan perubahan:
systemctl restart redis
Untuk menguji perintah di atas, masukkan baris perintah Redis:
redis-cli
Sekarang, otentikasi Redis dengan kata sandi seperti yang ditunjukkan di bawah ini:
127.0.0.1:6379> auth MGDCmmWh2Ot+aZDv7TBr54SY5PueoSAVhX41sApcOLWYBTlPrfe01OT/nqO0YWK/y0ROozsDi9Dw61jR
Anda akan mendapatkan output berikut:
OK
Sekarang, coba jalankan perintah CONFIG asli seperti yang ditunjukkan di bawah ini:
127.0.0.1:6379> config get requirepass
Anda akan mendapatkan kesalahan berikut:
(error) ERR unknown command 'config'
Sekarang, coba lagi dengan perintah yang diganti namanya:
127.0.0.1:6379> atlanticconfig get requirepass
Anda akan melihat output berikut:
1) "requirepass" 2) "MGDCmmWh2Ot+aZDv7TBr54SY5PueoSAVhX41sApcOLWYBTlPrfe01OT/nqO0YWK/y0ROozsDi9Dw61jR"
Kesimpulan
Selamat! Server Redis Anda sekarang telah diinstal dan diamankan. Metode ini kompatibel dengan Atlantic.Net VPS Hosting. Untuk informasi lebih lanjut, Anda dapat mengunjungi halaman dokumentasi Redis.