Cara mengamankan Memcached untuk mencegah Flooding
Pertama cek status memcached saat ini. Baiknya memcached hanya binding ke ip localhost, agar tidak disalahgunakan hacker.
Install dulu netstat / net-tools
# yum install net-tools [ CentOS/RHEL] # apt install net-tools [ Debian/Ubuntu]
Berikut ini contoh jika memcachedmu belum aman, karena binding ke ip public (0.0.0.0):
# netstat -tnlup |grep 11211 tcp 0 0 0.0.0.0:11211 0.0.0.0:* LISTEN 440/memcached tcp6 0 0 :::11211 :::* LISTEN 440/memcached udp 0 0 0.0.0.0:11211 0.0.0.0:* 440/memcached udp6 0 0 :::11211 :::*
Dibawah ini cara mengamankan sesuai distro server / vps kamu:
CENTOS / FEDORA
Edit file memcached.conf
sudo vi /etc/sysconfig/memcached
Kemudian edit agar service memcache hanya listen ke ip localhost saja, edit bagian “OPTIONS” jadi seperti dibawah ini:
PORT="11211" USER="memcached" MAXCONN="1024" CACHESIZE="64" OPTIONS="-l 127.0.0.1 -U 0"
Lalu restart service memcached untuk menyimpan perubahan
sudo service memcached restart
Cek ulang status memcache, harusnya sekarang hanya binding ke ip localhost saja
# netstat -tnlup |grep 11211 tcp 0 0 127.0.0.1:11211 0.0.0.0:* LISTEN 3973/memcached
UBUNTU / DEBIAN
Edit file memcached.conf
sudo nano /etc/memcached.conf
Kemudian edit agar service memcache hanya listen ke ip localhost saja
-l 127.0.0.1
Bagian bawah sendiri dari file memcached.conf bisa ditambah code berikut, untuk disable UDPnya, jadi aktif via TCP saja
-U 0
Lalu restart service memcached untuk menyimpan perubahan
sudo service memcached restart
Cek ulang status memcache, harusnya sekarang hanya binding ke ip localhost saja
# netstat -tnlup |grep 11211 tcp 0 0 127.0.0.1:11211 0.0.0.0:* LISTEN 3973/memcached Penyebab: Celah ini disebabkan oleh memcached yang secara default binding ke ip public, idealnya memcached hanya aktif di localhost saja untuk menghindari flooding.