Ho lottato con la connessione remota a Redis per alcuni giorni. Finalmente ce l'ho fatta. Ecco la lista di controllo completa che ho messo insieme per seguire per connettermi. Alcune delle soluzioni sono fornite nelle risposte sopra. Eppure volevo che la mia risposta fosse un nano-wiki sull'argomento :) Ho aggiunto anche alcuni link utili.
Se redis funziona localmente:
$ redis-cli
127.0.0.1:6379>ping
PONG
127.0.0.1:6379>
Se la password non è impostata
Vedi /etc/redis/redis.conf
config (questa è la posizione predefinita per Ubuntu 18.04, potresti averla in una posizione diversa):
# The following line should be commented
# requirepass <some pass if any>
Se la modalità protetta è impostata su "no" nella configurazione:
# The following line should be uncommented
protected-mode no
se l'associazione IP è aperta per un accesso da Internet nella configurazione:
# The following line should be commented
# bind 127.0.0.1 ::1
Se il firewall Linux consente le connessioni
(qui per Ubuntu 18.04) Controlla che consenta al traffico Internet in entrata di andare alla porta 6379
(la porta predefinita di Redis)
# To check if it the port is open
$ sudo ufw status
Status: active
To Action From
-- ------ ----
...
6379/tcp ALLOW Anywhere
6379/tcp (v6) ALLOW Anywhere (v6)
...
# To open the port
$ sudo ufw allow 6379/tcp
Riavvia il servizio Redis
Non dimenticare di riavviare il servizio Redis affinché le modifiche abbiano effetto e vedi che è in esecuzione:
$ sudo systemctl restart redis.service
$ sudo systemctl status redis
Controlla se funziona come un server remoto
dalla riga di comando usa redis-cli
come se il server Redis fosse sul server remoto:
$ redis-cli -h <your-server-ip>
<your-server-ip>:6379> ping
PONG
<your-server-ip>:6379> exit
$
Se puoi eseguire il ping-PONG del tuo server Redis tramite il tuo server Internet connesso come server remoto, allora la connessione Redis remota funziona.
Avviso di sicurezza
Tutto quanto sopra rende i tuoi dati Redis completamente aperti a chiunque da Internet.
Per proteggere fondamentalmente l'uso requirepass
e le protected-mode yes
impostazioni di Redis nella configurazione di Redis (vedere sopra) e bloccare i pericolosi comandi di Redis (vedere il collegamento sopra), per una comprensione più approfondita vedere questo articolo e la sezione sulla sicurezza del sito Redis ).
Link utili
Alcuni collegamenti per aiutare come installare e proteggere Redis su Ubuntu 18.04 e come configurare il firewall di Ubuntu 18.04 .
Spero che sia d'aiuto.
redis-cli -h hostname