Je peux ping pong redis sur le serveur
# redis-cli ping
PONG
Mais à distance eu des problèmes:
$ src/redis-cli -h REMOTE.IP ping
Could not connect to Redis at REMOTE.IP:6379: Connection refused
Dans la config j'ai eu le port standart:
# Accept connections on the specified port, default is 6379.
# If port 0 is specified Redis will not listen on a TCP socket.
port 6379
Alors peut-être que je devrais ouvrir le port 6379 sur une machine Ubuntu distante? Comment faire?
Avez-vous défini l'option de liaison pour autoriser l'accès à distance sur le serveur Redis?
Avant (fichier /etc/redis/redis.conf
)
bind 127.0.0.1
Après
bind 0.0.0.0
et courir Sudo service redis-server restart
pour redémarrer le serveur. Si ce n'est pas le problème, vous pouvez vérifier tous les pare-feu susceptibles de bloquer l'accès.
Important: Si vous n'utilisez pas de pare-feu (iptables, ufw ..) pour contrôler qui se connecte au port utilisé, TOUT LE MONDE peut s'y connecter. Exemple Redis. Sans utiliser Redis 'AUTH
cela signifie que tout le monde peut accéder/modifier/supprimer vos données. Fais attention!
Pour moi, je devais faire ce qui suit:
1- Commenter bind 127.0.0.1
2- Changer protected-mode
à no
3- Protégez mon serveur avec iptables
( https://www.digitalocean.com/community/tutorials/how-to-implement-a-basic-firewall-template-with-iptables-on) -ubuntu-14-04 )
Une note rapide indiquant que cela ne sécurise pas davantage votre serveur Redis n’est pas une bonne idée, car cela peut vous exposer à des attaques. Assurez-vous également de mettre en œuvre AUTH ou de le sécuriser. Voir http://redis.io/topics/security pour plus de détails.
Étape 1: Accédez à l'emplacement: /etc/redis.conf.
Étape 2: Commande de liaison 127.0.0.1
Étape 3: Redémarrez Redis: - Sudo systemctl start redis.service
Étape 4: Désactiver Firewalld systemctl disable firewalld
Étape 5: Arrêtez Firewalld systemctl stop firewalld
Alors essaye.
redis-cli -h 192.168.0.2 (ip) -a redis (nom d'utilisateur)
1- Comment out bind 127.0.0.1
2- set requirepass yourpassword
puis vérifiez si le pare-feu a bloqué votre port
iptables -L -n
service iptables stop
Ouvrez $ REDIS_HOME/redis.conf et supprimez le commentaire requirepass -YOUR-PASSWORD-HERE-
et écrivez votre mot de passe dans les lignes spécifiées.
Connectez-vous à redis en utilisant redis-cli et vérifiez votre mot de passe dans la base de données en utilisant auth -YOUR-PASSWORD-HERE-
commande.
Désactivez le mode protégé en remplaçant sa chaîne dans $ REDIS_HOME/redis.conf par protected-mode no
.
Recherchez toutes les valeurs de ports de liaison et commentez-les toutes. Il suffit d'ajouter bind 0.0.0.0
vers le fichier $ REDIS_HOME/redis.conf.
Désactivez votre pare-feu ou ouvrez le port Redis.
Démarrer redis en utilisant ./redis-server $REDIS_HOME/redis.conf
.
Vérifiez la configuration via ./redis-cli -h -YOUR-IP- -a -YOUR-PASSWORD-HERE-
.
./redis-cli -h -YOUR-IP- ping
.