質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Redis

Redisは、オープンソースのkey-valueデータストアで、NoSQLに分類されます。すべてのデータをメモリ上に保存するため、処理が極めて高速です。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

Laravel 5

Laravel 5は、PHPフレームワークLaravelの最新バージョンで、2014年11月に発表予定です。ディレクトリ構造がが現行版より大幅に変更されるほか、メソッドインジェクションやFormRequestの利用が可能になります。

Q&A

1回答

2080閲覧

【AWS ElasticCache】EC2からElasticCacheのredisサーバに暗号化で接続たい

hasshy

総合スコア102

Redis

Redisは、オープンソースのkey-valueデータストアで、NoSQLに分類されます。すべてのデータをメモリ上に保存するため、処理が極めて高速です。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

Laravel 5

Laravel 5は、PHPフレームワークLaravelの最新バージョンで、2014年11月に発表予定です。ディレクトリ構造がが現行版より大幅に変更されるほか、メソッドインジェクションやFormRequestの利用が可能になります。

0グッド

1クリップ

投稿2019/08/21 16:16

編集2019/08/23 08:36

AWSのコンテナでlaravelのアプリケーションを動かしていて、キャッシュとセッションをRedisサーバにしようと思います。
RedisサーバーはElasticCacheで作成しました。

実際にサーバーへアップロードしたプログラムからRedisサーバに接続したとこタイムアウトを起こして接続できませんでした。
暗号化やパスワードを指定しない設定であれば接続する事はできるのですが、
(セキュリティのために)暗号化とAuth認証(パスワード)を設定すると接続できません。

開発環境では、Dockerのredisコンテナを使っているのですが、REDIS_HOSTとDRIVERを設定するだけで接続できていましたので、
プロジェクトのプログラムが起因している可能性は少ないと考えています。

サーバー構成イメージ

10.0.0.0/24の内にあるEC2から、10.0.1.0/24内のredisサーバーに接続したいと考えています。

イメージ説明

ご共有までに、RDSへの接続はできます。

elasticcacheの設定

redisサーバーの設定

1台構成(バックアップやクラスターの設定はしていません)のredisサーバーを用意しました。
Redis認証(Redis Auth)は設定していないので、tlsやパスワードの指定は不要な状態です。

イメージ説明

redisのセキュリティグループ

とりあえず接続確認したいので、6379ポートであれば接続できるようにしています。

イメージ説明

試した事

EC2インスタンスから直接接続してみる

インスタンスから、接続できるかredis-cliで接続してみました。
やはりタイムアウトしてしまうため、もしかしたらネットワークの設定かもしれません。

sh

1$ redis-cli -h master.(cache名).cache.amazonaws.com -p 6379 2Could not connect to Redis at (cache名).cache.amazonaws.com:6379: Connection timed out 3

関係が無いと思いますが、masterを外した状態でも確認しました。
暗号化する設定なのでか、サーバが見つかりませんでした。

sh

1$ redis-cli -h (cache名).cache.amazonaws.com -p 6379 2Could not connect to Redis at (cache名).cache.amazonaws.com:6379: Name or service not known 3Could not connect to Redis at (cache名).cache.amazonaws.com:6379: Name or service not known 4

暗号化をしない状態で作った場合

redisを作るときに、送受信の暗号化を外した状態で作ってみました。
セキュリティグループも同じです。
この状態では接続できました。

そのため、下記の状態だと推測できます。 

  • redisサーバーは接続できる場所、同じVPCに設定されており、接続許可の設定にも問題ない
  • 暗号化に必要な設定が抜けているのかもしれない

sh

1redis-cli -h (cache名).cache.amazonaws.com -p 6379 2(cache名).apne1.cache.amazonaws.com:6379>

この状態であればアプリケーションからの接続が可能ですが、
最終的にはパスワードを設定したいので、本件の原因を解決したいです。

参考にしているページ

https://docs.aws.amazon.com/ja_jp/AmazonElastiCache/latest/red-ug/GettingStarted.html

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

解決方法をご存知であれば伺いたいです。

投稿2020/01/21 06:59

m9288650228

総合スコア18

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問