Memcached è un sistema di memorizzazione nella cache di oggetti open source, distribuito e in memoria. Viene utilizzato principalmente per accelerare le applicazioni Web dinamiche archiviando blocchi di dati dai risultati delle chiamate al database e del rendering delle pagine.
In questa guida, installeremo e proteggeremo Memcached su Ubuntu 18.04.
Prerequisiti
- Un nuovo server Vultr Ubuntu 18.04
- Account utente non root con
sudo
accesso
Installazione di Memcached
Innanzitutto, aggiorna il sistema:
sudo apt update && sudo apt upgrade -y
Successivamente, installa il pacchetto ufficiale Memcached; nonché libmemcached-tools
, che fornisce diverse utility per lavorare con Memcached:
sudo apt install -y memcached libmemcached-tools
Memcached verrà ora installato come servizio. Puoi assicurarti che sia in esecuzione utilizzando systemctl
:
sudo systemctl status memcached
L'output sarà simile al seguente:
memcached.service - memcached daemon
Loaded: loaded (/lib/systemd/system/memcached.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2018-12-16 14:59:06 IST; 3 weeks 4 days ago
Main PID: 3927 (memcached)
Tasks: 6
Memory: 2.2M
CPU: 2min 10.089s
CGroup: /system.slice/memcached.service
└─3927 /usr/bin/memcached -m 64 -p 11211 -u memcache -l 127.0.0.1
Configurazione di Memcached
Associamo Memcached all'interfaccia locale per evitare potenziali attacchi DDOS. Apri il /etc/memcached.conf
file nel tuo editor preferito:
sudo vi /etc/memcached.conf
Trova la seguente riga nel file e assicurati che sia senza commento:
-l 127.0.0.1
Se questa configurazione è più aperta, è possibile limitare UDP
aggiungendo la seguente riga alla fine del file:
-U 0
Salva il file ed esci.
Riavvia Memcached per applicare le modifiche:
sudo systemctl restart memcached
È possibile verificare che Memcached sia associato solo all'interfaccia locale e che ascolti solo connessioni TCP con netstat:
sudo netstat -plunt
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
...
tcp 0 0 127.0.0.1:11211 0.0.0.0:* LISTEN 3927/memcached
...
Ci sono anche alcune altre opzioni che possono essere modificate nella /etc/memcached.conf
configurazione:
-m
: Limita la quantità di memoria disponibile per Memcached.
-p
: Specifica su quale porta Memcached dovrebbe essere in ascolto. La porta predefinita è 11211
.
-u
: Specifica con quale utente verrà utilizzato il servizio. Per impostazione predefinita, il servizio verrà eseguito come root
.
-c
: Limita il numero di connessioni simultanee. L'impostazione predefinita è 1024
.
Verifica dell'installazione memorizzata
Ora puoi verificare la configurazione usando il memcstat
comando dal libmemcached-tools
pacchetto:
memcstat --servers="localhost"
L'output sarà simile al seguente:
Server: localhost (11211)
pid: 3927
uptime: 2217682
time: 1547170226
version: 1.4.25
libevent: 2.0.21-stable
pointer_size: 64
rusage_user: 75.436000
rusage_system: 57.768000
curr_connections: 1
total_connections: 53082
...
Conclusione
In questa guida, abbiamo spiegato come installare e configurare Memcached e utilizzato memcstat
per recuperare le statistiche. Il libmemcached-tools
pacchetto include anche alcune altre utilità che possono aiutare a interagire con Memcached.