web-dev-qa-db-ja.com

redis:redisのパスワードを設定します

私は自分のローカルマシンでredisを使用しているので、PHPクライアントでサーバーに接続するためにパスワードを設定する必要はありません(クライアントとしてpredisを使用しています)。ただし、アプリをライブサーバーに移動するため、redisサーバーに接続するためのパスワードを設定します。

質問がいくつかあります。

  • パスワードを設定する方法についてインターネット上で確認しましたが、redis.confにパスワードを追加する必要があるようです。しかし、パスワードを設定するために構成ファイルに正確に追加する必要があるものを見つけることができませんでした。

  • predisでもパスワードを追加する方法を教えてください。次のパラメーターの配列を使用してredisサーバーに接続しています

    $ my_server = array( 'Host' => '127.0.0.1'、 'port' => 6379、 'database' => 1);

この方法でパスワードを追加する必要がありますか?

> $my_server = array('Host'     => '127.0.0.1','port'     =>
> 6379,'database' => 1,'password'=>password);
  • 最後の質問は、ライブサーバーでredis-serverを停止しようとしています。次のコマンドを入力するたびに、同じエラーメッセージが表示され続けます

    redis-server stop

    [23925] 23 Sep 20:23:03#致命的エラー、設定ファイル 'stop'を開けません

    通常、ローカルマシンに入力します

    /etc/init.d/redis-server stop

/is/init.dにredis-serverと呼ばれるプロセスがないため、redisサーバーを停止しますが、私のライブサーバーでは動作しません

50
Don Gorgon

パスワードを設定するには、redis.confファイルを編集して、この行を見つけます

# requirepass foobared

次に、コメントを外し、foobaredをパスワードに変更します。構成ファイルの注意事項にあるように、32文字程度の長さでかなり長いものを選択していることを確認してください。外部ユーザーは1秒あたり150k以上のパスワードを簡単に推測できます。

Predisを使用して新しいパスワードで認証するには、表示した構文が正しいです。接続パラメーターの1つとしてパスワードを追加するだけです。

Redisをシャットダウンするには... pidfile設定の設定ファイルを確認してください。

pidfile /var/run/redis.pid

コマンドラインから次を実行します:

cat /var/run/redis.pid

実行中のサーバーのプロセスIDを取得し、そのpidを使用してプロセスを強制終了します。

kill 3832

更新

また、追加したかったのですが、/etc/init.d/redis-server stopライブサーバーでの作業に慣れています。 /etc/init.d/内のこれらのファイルはすべてシェルスクリプトであり、ローカルサーバーからredis-serverスクリプトを取り出し、同じ場所にあるライブサーバーにコピーし、viまたは何でも実行するだけです使用したい場合は、いくつかのパスなどを変更する必要があるかもしれませんが、それは非常に簡単なはずです。

75
profitphp

クライアントで次のコマンドを使用することもできます

cmd ::config set requirepass p@ss$12E45

上記のコマンドはp@ss$12E45としてのredisサーバーパスワード。

44
Suhas Gaikwad

例:

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
19
Flavio Troia
Sudo nano /etc/redis/redis.conf 

行の検索とコメント解除# requirepass foobared、次にサーバーを再起動します

これでパスワードはfoobaredです

16

redis-cliを使用:

root@server:~# redis-cli 
127.0.0.1:6379> CONFIG SET requirepass secret_password
OK

これは一時的にパスワードを設定します(redisまたはサーバーの再起動まで)

テストパスワード:

root@server:~# redis-cli 
127.0.0.1:6379> AUTH secret_password
OK
9
Hlod

そのためには、redis構成ファイルを更新する必要があります。デフォルトでは、redisのパスワードはありません。

01)redis設定ファイルを開く

Sudo vi /etc/redis/redis.conf

[requirepass[〜#〜] security [〜#〜]セクションの下のフィールドを見つけて、そのフィールドのコメントを外します。次に、"foobared"の代わりにパスワードを設定します=

# requirepass foobared

次のようになります、

requirepass YOUR_PASSWORD

次に、redisを再起動してredis-cliを起動します。

パスワードを正しく設定したかどうかを確認する必要がある場合は、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

`

3
Sithara

ステップ1.以下のコマンド/etc/init.d/redis-server stopを使用してredisサーバーを停止しますステップ2.enterコマンド:Sudo nano /etc/redis/redis.conf

ステップ3.#requirepass foobared Wordを見つけて#を削除し、foobaredをパスワードに変更します

例requirepassルート

3
Sagar Jadhav

redis構成ファイルを開く

Sudo nano /etc/redis/redis.conf 

パスフレーズを設定する

取り替える

# requirepass foobared

requirepass YOURPASSPHRASE

再起動する

redis-server restart
3
Andi F.

しかし、パスワードを設定するために構成ファイルに正確に追加する必要があるものを見つけることができませんでした。

構成ファイルは/etc/redis/redis.confに配置する必要があり、パスワードはREPLICATIONセクションとLIMITSセクションの間に配置する必要があるSECURITYセクションで設定できます。パスワードのセットアップはrequirepassディレクティブを使用して行われます。詳細については、 [〜#〜] auth [〜#〜] コマンドの説明を参照してください。

1
yojimbo87

Redisパスワードの設定方法

ステップ1.以下のコマンド/etc/init.d/redis-server stopを使用してredisサーバーを停止します

ステップ2.コマンドを入力:Sudo nano /etc/redis/redis.conf

ステップ3.#requirepass foobared Wordを見つけて#を削除し、foobaredをパスワードに変更します

例requirepassルート

0
Sagar Jadhav