すでにAWS Elasticache Redisを使用していますが、「暗号化転送中」を使用していません。この暗号化を有効にして新しいsmall/tempクラスターを作成しましたが、接続できません-
redis-cli error: Connection reset by peer
eg: redis-cli -h aws.Host.name -p 6379
注:Redisクラスターで転送中の暗号化が有効になっていない場合、接続は正常に行われます。
これは、EC2インスタンスからTLS暗号化を使用していないためだと思います。
「転送中の暗号化が有効なクラスターに接続するには、データベースでトランスポート層セキュリティ(TLS)が有効になっている必要があります。転送中の暗号化が有効になっていないクラスターに接続するには、データベースでTLSを有効にすることはできません。」
質問:
本当にありがとう。
標準クライアントであるredis-cliは暗号化をサポートしていません。 https://redislabs.com/blog/secure-redis-ssl-added-to-redsmin-and-clients/ に、ssl/TLS暗号化をサポートするredisクライアントのリストがあります。
redis-cli -h aws.Host.name -p 6379
はEC2インスタンスから動作するはずです。ホストとポートに接続できることを確認します(単にtelnet Host 6379
)。接続がない場合は、ElastiCacheクラスターのセキュリティグループ設定を確認します(EC2タブの[セキュリティグループ]セクションで設定された受信ポート6379ルールが必要です)。標準のredisクライアント(別名redisサーバーに付属するredis-cli)はTLSをサポートしていません。
そのため、転送中の暗号化が無効になっていると、サーバーに正常に接続されます。 TLSをサポートするクライアントを使用する必要があります。