Có hai giải pháp để fix lỗi này rất ngắn gọn:
- Chỉ cho phép Memcached bind trên địa chỉ local 127.0.0.1 đây là địa chỉ localhost và hacker không thể giao tiếp với Memcached từ bên ngoài.
- Sử dụng firewall (ví dụ CSF firewall) hoặc iptables không mở cổng 11211 trên giao thức UDP.
Giải pháp triệt để nhất vẫn là sửa lại cấu hình Memcached vì có thể có bạn không sử dụng firewall.
Bước 1:
Vào VPS của bạn bằng tài khoản root và sửa file cấu hình của Memcached :
nano /etc/sysconfig/memcached
Nếu trên VPS của bạn chưa cài nano bạn có thể sử dụng lệnh vi để thay thế
vi /etc/sysconfig/memcached
Ở đây tôi sử dụng nano vì thói quen và các tổ hợp phím dễ nhớ.
Nội dung của file /etc/sysconfig/memcached
PORT=”11211″
USER=”memcached”
MAXCONN=”1024″
CACHESIZE=”64″
OPTIONS=””
Bạn sẽ thay thế dòng OPTIONS=”” bằng
OPTIONS=”-l 127.0.0.1 -U 0″
Chú ý: chữ “L” thường không phải số 1
Ý nghĩa cú pháp trên là chỉ cho phép Memcached được bind trên địa chỉ localhost và không cho phép giao thức UDP.
Bấm Ctrl + O để lưu.
Bấm Ctrl + X để thoát khỏi soạn thảo.
Bước 2:
Khởi động lại Memcached, để khởi động lại Memcached bạn gõ lệnh như sau:
service memcached restart
Bước 3: Kiểm tra lại kết quả
Kiểm tra xem Memcached đã bind trên địa chỉ local hay chưa bạn gõ lệnh sau:
netstat -ntpl | grep “memcached”
Ok vậy là xong.