2017-09-06 7 views
0

Redis(redis.confbindパラメータ)が特定のipsからのアクセスのみを受け入れるように設定しようとしています。私の場合は、ループバックネットワークインターフェイス(127.0.0.1/::1)とip 192.168.56.101192.168.56.102はRedisサーバーのIPです)のアクセスを有効にしたいと考えています。私が今までに読んだすべてのドキュメントによれば、以下の設定はうまくいくはずです...Redis - バインドインターフェイスが動作しません(Connectionは拒否されました)!

bind 127.0.0.1 ::1 192.168.56.101 

...しかし、それはどうなりますか?

私はいくつかの他の構成を試してみた

...

bind 127.0.0.1 192.168.56.101 ::1 
bind 127.0.0.1 192.168.56.101 
bind 192.168.56.101 
bind 192.168.56.0 
bind 192.168.0.0 

...と何も働きません。 = |

これだった働いただけの構成が...

bind 0.0.0.0 

しかし、この構成では、任意のIPへのアクセスを開きます!

注:protected-modeパラメータ(redis.conf)はno値を有します。

何が起こっている可能性がありますか?

REFERENCE:

Redis bind to more than one IP

https://redis.io/topics/security

http://download.redis.io/redis-stable/redis.conf

さらに、問題:

IP範囲(bindパラメータ)のアクセスを有効にするにはどうすればよいですか? "192.168.56" で始まるIPアドレスを持つ任意のマシンは、Redisのサーバーにアクセスする必要がありますこれらの例では

bind 192.168.56.0/24 

のような何か...

bind 192.168.56.0 

...か...。

@Carl Dacosta @Jacky

ありがとう!

答えて

1

bindの設定とIP-whitelistを誤解していると思います。

bind設定では、RedisがリッスンするIPアドレスを指定します。 Redisをループバックインターフェイスにバインドすると、ローカルクライアントだけがRedisにアクセスできます。他のホストがRedisにアクセスするようにするには、Redisをすべてのネットワークインターフェース(0.0.0.0など)または特定のネットワークインターフェースにバインドする必要があります。

RedisにアクセスできるIPアドレスを一覧表示するIP-whitelistが必要です。 AFAIK、これまでのところ、Redis をサポートしていません(私が間違っていれば私を修正してください)。

Redisへのアクセスを制限する他のソリューションがあります(これらのソリューションはすべて、ループバックインターフェイスでバインドするためにRedis NOTが必要です)。認証

によって

のアクセスを制限するには、あなたはRedisのためのパスワードを設定するrequirepass構成を使用することができます。パスワードを持つクライアントだけがRedisにアクセスできます。 LinuxのOSユーティリティ

によって

のアクセスを制限するには、ネットワークアクセスを制御するためにiptablesを使用することができます。このユーティリティを使用すると、指定したホストのみがRedisがバインドするポートにアクセスできるようになります。