Ricerca nel sito web

Come installare Redis su Ubuntu 22.04


Questo tutorial esiste per queste versioni del sistema operativo

  • Ubuntu 22.04 (Jammy Jellyfish)
  • Ubuntu 18.04 (Bionic Beaver)

Su questa pagina

  1. Prerequisiti
  2. Cosa faremo
  3. Passaggio 1: installa il server Redis
  4. Passaggio 2 - Configurazione di base del server Redis
  5. Passaggio 3: protezione dell'installazione di Redis
    1. 1. Sicurezza della rete
    2. 2. Autenticazione con password
    3. 3. Disabilitazione dei comandi Redis pericolosi

    1. 1. Test dell'host e dell'autenticazione
    2. 2. Test del comando disabilitato/rinominato

    Redis è un archivio chiave/valore in memoria open source utilizzato come database, cache e broker di messaggi. È un database di valori-chiave in memoria distribuito con durabilità opzionale. Supporta strutture di dati comuni come stringhe, hash, elenchi, set, bitmap, set ordinati, HyperlogLog, flussi e indici di dati geografici con query radius.

    In questo tutorial, ti mostrerò come installare e configurare Redis Server su Ubuntu 22.04 LTS. Installeremo prima Redis Server e quindi eseguiremo il backup dell'installazione per renderlo pronto per la produzione.

    Prerequisiti

    Per questo tutorial, installeremo Redis Server su Ubuntu 22.04 con 1 GB di RAM e 2 core CPU. Questo è solo per il test. Per la produzione, avrai bisogno di più di questo.

    Cosa faremo

    • Installa il server Redis
    • Configurazione di base del server Redis
    • Protezione del server Redis
    • Prova

    Passaggio 1: installare il server Redis

    In primo luogo, aggiorneremo tutti i repository sul sistema Ubuntu e aggiorneremo tutti i pacchetti.

    Esegui i comandi apt di seguito.

    sudo apt update
    sudo apt upgrade -y

    Successivamente, installa il pacchetto Redis-server dal repository ufficiale di Ubuntu utilizzando il comando apt di seguito.

    sudo apt install redis-server -y

    Una volta completata l'installazione, riceverai un messaggio di errore relativo al mancato avvio del servizio Redis, ignora l'errore del messaggio e lo configureremo nel passaggio successivo.

    Passaggio 2: configurazione di base del server Redis

    In questo passaggio, configureremo un server Redis di base. Sul sistema Linux, la configurazione di Redis si trova nella directory /etc/redis.

    Modifica il file di configurazione redis.conf utilizzando nano editor.

    sudo nano /etc/redis/redis.conf

    Innanzitutto, dobbiamo scegliere un indirizzo IP di bind per eseguire il servizio Redis. Non è consigliabile utilizzare l'indirizzo IP pubblico per il servizio Redis oppure, se si esegue il servizio Redis multiplo/cluster, è necessario utilizzare la rete interna.

    Modificare l'indirizzo di bind con l'indirizzo IP dell'host locale per questo esempio (IPv4 e IPv6). Per motivi di sicurezza, si consiglia vivamente di consentire a Redis di restare in ascolto sull'IP dell'host locale solo se i servizi che utilizzano Redis verranno installati sullo stesso sistema.

    bind 127.0.0.1 ::1

    Successivamente, dobbiamo configurare la modalità di esecuzione del servizio Redis sul server. Dato che stiamo usando il server Ubuntu e systemd, dobbiamo cambiare la configurazione della linea supervisionata in systemd.

    supervised systemd

    Salva e chiudi.

    Ora riavvia il servizio Redis e aggiungilo all'ora di avvio.

    sudo systemctl restart redis-server
    sudo systemctl enable redis-server

    Ora assicurati che non ci siano errori e poi controlla il suo stato.

    sudo systemctl status redis-server

    Di conseguenza, il servizio Redis è attivo e funzionante su Ubuntu 22.04 Server.

    Ora controlla la porta Redis predefinita 6379 utilizzando il comando netstat di seguito.

    ss -plnt4

    E otterrai il risultato che il servizio Redis è in esecuzione sull'indirizzo IP localhost con 6379 predefinito.

    Ora controlla Redis usando i comandi redis-cli come di seguito.

    redis-cli ping
    redis-cli ping "Hello Howtoforge redis Server"

    E otterrai il risultato come mostrato di seguito.

    Se l'installazione è corretta, riceverai la risposta del server Redis con PONG o risponderai con il testo che hai inserito dopo l'opzione ping.

    L'installazione e la configurazione di base del server Redis sono state completate correttamente.

    Passaggio 3: protezione dell'installazione di Redis

    In questo passaggio, proteggeremo la nostra installazione di Redis. Ci sono 3 cose che devi sapere sulla protezione del server Redis.

    1. Sicurezza della rete

    La sicurezza di rete per il server Redis è correlata alla configurazione del bind nella configurazione Redis redis.conf. Si consiglia di utilizzare la rete privata interna per l'installazione di Redis e di non utilizzare quella pubblica.

    Modifica il file di configurazione redis.conf.

    sudo nano /etc/redis/redis.conf

    Nella sezione bind, modifica l'indirizzo IP con il tuo indirizzo IP della rete interna.

    bind INTERNAL-IP-ADDRESS

    Salva e chiudi.

    E ora il servizio Redis verrà eseguito con INTERNAL-IP-ADDRESS.

    2. Autenticazione tramite password

    L'autenticazione della password per Redis ti darà il controllo dell'accesso al tuo server Redis. Questo è un piccolo livello di sicurezza che migliorerà la sicurezza del tuo server Redis e non è ancora abilitato per impostazione predefinita.

    Per abilitare l'autenticazione della password per il server Redis, dovrai rimuovere il commento dalla sezione requirepass nel file redis.conf e digitare la tua password complessa dopo di essa.

    requirepass MySecretSecurePassword

    Cambia MySecretSecurePassword con la tua password sicura. E ora l'autenticazione della password per Redis è stata abilitata.

    3. Disabilitazione dei comandi Redis pericolosi

    Redis fornisce una funzionalità per disabilitare alcuni comandi Redis specifici. Questa funzione può essere utilizzata per rinominare o disabilitare alcuni dei comandi pericolosi come FLUSHALL per cancellare tutti i dati, il comando CONFIG per impostare i parametri di configurazione tramite la CLI Redis, ecc.

    Per modificare o disabilitare il comando Redis, puoi utilizzare l'opzione rename-command. Modifica il file di configurazione di Redis redis.conf e aggiungi alcune configurazioni di seguito.

    # rename-command COMMAND "CUSTOM"
    rename-command FLUSHALL "DELITALL"
    rename-command CONFIG "MYSERVERCONF"

    Salva e chiudi.

    Al termine, riavviare il servizio Redis utilizzando il comando systemctl di seguito.

    systemctl restart redis-server

    E la sicurezza di base di Redis per proteggere l'installazione di Redis è stata applicata al nostro host.

    Altra considerazione, potrebbe essere necessario anche il supporto per la crittografia dei dati per Redis, nonché la codifica sicura necessaria sul lato dell'applicazione.

    Passaggio 4: test

    In questo passaggio, testeremo la nostra distribuzione del server Redis utilizzando la riga di comando redis-cli.

    1. Test dell'host e dell'autenticazione

    Connettersi al server Redis utilizzando il comando redis-cli specificando il nome host/l'indirizzo IP e la porta del server redis.

    redis-cli -h 127.0.0.1 -p 6379

    Cambia 127.0.0.1 con il tuo indirizzo IP.

    Una volta connesso al server, prova il comando ping.

    ping "Hello Howtoforge"

    Ora otterrai il risultato come di seguito.

    Ricevi un errore perché devi eseguire l'autenticazione prima di richiamare qualsiasi comando sulla shell dell'interfaccia a riga di comando di Redis.

    Eseguire il comando seguente per eseguire l'autenticazione sul server Redis.

    AUTH MySecretSecurePassword

    Una volta autenticato, puoi provare il comando ping e riceverai una risposta dal server Redis.

    ping "Hello Redis at Howtoforge"

    Di seguito è riportato il risultato dopo l'autenticazione al server Redis.

    2. Test del comando disabilitato/rinominato

    Esegui tutti i comandi che abbiamo rinominato sulla shell e otterrai l'errore di comando.

    FLUSHALL
    CONFIG

    Di seguito è riportato il risultato dell'errore di tali comandi.

    Quindi, esegui i comandi CUSTOM per ciascuno.

    Crea una nuova chiave utilizzando il comando redis-cli come di seguito.

    SET Name "Hakase Labs"
    SET Blog "Howtoforge.com"

    Keys *

    Ora elimina tutte le chiavi e i dati utilizzando il comando FLUSHALL rinominato DELITALL.

    DELITALL

    Per il comando CONFIG, puoi provare a recuperare o impostare un nuovo valore della configurazione del server Redis. Il comando CONFIG è stato rinominato in MYSERVERCONF.

    MYSERVERCONF get bind
    MYSERVERCONF get requirepass

    E di seguito è riportato il risultato di questi nuovi comandi personalizzati rinominati.

    Per uscire dalla console Redis, inserisci la parola quit.

    quit

    L'installazione di base di Redis Server su Ubuntu 22.04 è stata completata ed è stata applicata la sicurezza di base per Redis Server.

    Riferimento

    • https://redis.io/documentation