redis: définir un mot de passe pour redis
je travaille avec redis sur ma machine locale donc je n'ai pas vraiment besoin de configurer un mot de passe pour me connecter au serveur avec mon client php (j'utilise predis comme client). Cependant, je déplace mon application sur un serveur en direct, donc je veux configurer un mot de passe pour me connecter à mon serveur redis.
j'ai quelques questions:
j'ai vérifié sur internet comment configurer le mot de passe et il semble que j'ai besoin d'ajouter le mot de passe dans le redis.conf. Je ne pourrais pas trouver bien que ce que je devrais ajouter exactement au fichier de configuration pour configurer le mot de passe.
aussi dans predis comment ajouter le mot de passe. J'utilise le tableau suivant de paramètres pour me connecter au serveur redis
$mon_serveur = array('host' => '127.0.0.1','port' => 6379, "base de données" = > 1);
dois-je ajouter le mot de passe de cette façon?
> $my_server = array('host' => '127.0.0.1','port' =>
> 6379,'database' => 1,'password'=>password);
dernière question, j'essaie d'arrêter mon serveur redis sur le serveur en direct. Chaque fois que j'entre la commande suivante, j'obtiens le même message d'erreur
redis-server stop
[23925] 23 Sep À 20:23:03 # Fatale erreur, impossible d'ouvrir le fichier de config 'stop'
habituellement sur ma machine locale j'entre
/ etc / init.d / redis-server stop
pour arrêter le serveur redis mais son ne fonctionne pas sur mon serveur car il n'y a pas de processus appelé redis-server dans mon /etc/init.d
10 réponses
pour définir le mot de passe, éditez votre redis.fichier conf, trouver cette ligne
# requirepass foobared
alors décrochez - le et changez de pied de page par rapport à votre mot de passe. Assurez-vous que vous choisissez quelque chose de assez long, 32 caractères ou ainsi serait probablement bon, il est facile pour un utilisateur extérieur de deviner plus de 150K mots de passe par seconde, comme les notes dans le fichier de configuration mention.
pour s'authentifier avec votre nouveau mot de passe en utilisant predis, la syntaxe que vous avez montrée est correcte. Juste ajouter un mot de passe les paramètres de connexion.
pour arrêter redis... vérifiez dans votre fichier de configuration pour le pidfile
paramètre, il sera probablement
pidfile /var/run/redis.pid
à Partir de la ligne de commande, exécutez la commande:
cat /var/run/redis.pid
cela vous donnera l'id du processus du serveur en cours d'exécution, puis il suffit de tuer le processus en utilisant ce pid:
kill 3832
mise à Jour
je voulais aussi ajouter, vous pouvez également en faire la /etc/init.d/redis-server stop
vous avez l'habitude de travailler sur votre serveur live. Tous ceux les fichiers dans /etc/init.d / sont juste des scripts shell, prendre le script redis-server de votre serveur local, et le copier sur le serveur en direct dans le même endroit, et puis juste regarder ce qu'il fait avec vi ou ce que vous aimez utiliser, vous pouvez avoir besoin de modifier certains chemins et tel, mais il devrait être assez simple.
vous pouvez également utiliser la commande suivante sur le client
cmd::config set requirepass p@ssE45
commande ci-dessus va définir p@ssE45
redis
mot de passe du serveur.
sudo nano /etc/redis/redis.conf
trouver et décommentez la ligne # requirepass foobared
, puis redémarrez le serveur
maintenant votre mot de passe est foobared
Exemple:
redis 127.0.0.1:6379> AUTH PASSWORD
(error) ERR Client sent AUTH, but no password is set
redis 127.0.0.1:6379> CONFIG SET requirepass "mypass"
OK
redis 127.0.0.1:6379> AUTH mypass
Ok
ouvrir le fichier de configuration de redis
sudo nano /etc/redis/redis.conf
définir mot de passe multiterme
remplacer
# requirepass foobared
requirepass YOURPASSPHRASE
redémarrer redis
redis-server restart
étape 1. arrêter le serveur redis en utilisant la commande ci-dessous / etc / init.d/redis-server stop étape 2.entre la commande: sudo nano/etc/redis / redis.conf
Etape 3.trouver # requirepass foobared parole et de supprimer les # et le changement foobared de VOTRE MOT de passe
ex. requerpass root
utilisation de redis-cli:
root@server:~# redis-cli
127.0.0.1:6379> CONFIG SET requirepass secret_password
OK
ceci définira le mot de passe temporairement (jusqu'à ce que redis ou le serveur redémarre)
test mot de passe:
root@server:~# redis-cli
127.0.0.1:6379> AUTH secret_password
OK
Je n'ai pas pu trouver cependant ce que je devrais ajouter exactement à la configuration fichier pour configurer le mot de passe.
le fichier de Configuration doit être situé à /etc/redis/redis.conf
et le mot de passe peut être configuré dans la section de sécurité qui doit être située entre la réplication et la section des limites. La configuration du mot de passe se fait en utilisant la directive requirepass. Pour plus d'informations, essayez de regarder AUTH description de la commande.
pour cela, vous devez mettre à jour la configuration de redis file.By par défaut, il n'y a pas de mot de passe pour redis.
01) ouvrir le fichier de configuration redis
sudo vi /etc/redis/redis.conf
trouver requerpass champ sécurité section et découplez ce champ.Puis définissez votre mot de passe à la place de "footbared"
# requirepass foobared
Il doit être comme,
requirepass YOUR_PASSWORD
puis redémarrez redis et démarrez redis-cli.
Si vous besoin de vérifier si vous avez défini le mot de passe correctement, vous pouvez exécuter ci-dessous commads dans redis-cli.
sithara@sithara-X555UJ ~ $ redis-cli
127.0.0.1:6379> set key1 18
(error) NOAUTH Authentication required.
127.0.0.1:6379> auth admin
OK
127.0.0.1:6379> get key1
(nil)
127.0.0.1:6379> exit
sithara@sithara-X555UJ ~ $ redis-cli
127.0.0.1:6379> set key1 18
(error) NOAUTH Authentication required.
127.0.0.1:6379> auth admin
OK
127.0.0.1:6379> set key2 check
OK
127.0.0.1:6379> get key2
"check"
127.0.0.1:6379> get key1
(nil)
127.0.0.1:6379> set key1 20
OK
127.0.0.1:6379> get key1
"20"
127.0.0.1:6379> exit
`
comment configurer le mot de passe redis ?
étape 1. arrêter le serveur redis en utilisant la commande ci-dessous / etc / init.d / redis-server stop
étape 2.entre la commande: sudo nano/etc/redis / redis.conf
étape 3.trouver # requirepass foobared parole et de supprimer les # et le changement foobared de VOTRE MOT de passe
ex. requerpass root