redis-cli を使用した転送中の暗号化による Amazon ElastiCache (Redis OSS) への接続 - Amazon ElastiCache (Redis OSS)

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

redis-cli を使用した転送中の暗号化による Amazon ElastiCache (Redis OSS) への接続

転送時の暗号化が有効になっている ElastiCache (RedisOSS) キャッシュからデータにアクセスするには、Secure Socket Layer () と連携するクライアントを使用しますSSL。Amazon Linux および Amazon Linux 2 の TLS/SSL で redis-cli を使用することもできます。クライアントが をサポートしていない場合はTLS、クライアントホストで stunnel コマンドを使用して Redis OSSノードへのSSLトンネルを作成できます。

Linux との暗号化された接続

redis-cli を使用して、Amazon Linux 2023、Amazon Linux 2、または Amazon Linux で転送時の暗号化が有効になっている Redis OSSクラスターに接続するには、次の手順に従います。

  1. redis-cli ユーティリティをダウンロードし、コンパイルします。このユーティリティは Redis OSSソフトウェアディストリビューションに含まれています。

  2. EC2 インスタンスのコマンドプロンプトで、使用している Linux のバージョンに適したコマンドを入力します。

    Amazon Linux 2023

    Amazon Linux 2023 を使用している場合は、次のように入力します。

    sudo yum install redis6 -y

    次に、次のコマンドを入力し、クラスターのエンドポイントとポートを、この例に示すものに置き換えます。

    redis-cli -h Primary or Configuration Endpoint --tls -p 6379

    エンドポイントの検索の詳細については、「ノードのエンドポイントの検索」を参照してください。

    Amazon Linux 2

    Amazon Linux 2 を使用している場合は、次のように入力します。

    sudo yum -y install openssl-devel gcc wget https://download.redis.io/releases/redis-7.2.5.tar.gz tar xvzf redis-7.2.5.tar.gz cd redis-7.2.5 make distclean make redis-cli BUILD_TLS=yes sudo install -m 755 src/redis-cli /usr/local/bin/

    Amazon Linux

    Amazon Linux を使用している場合は、次のように入力します。

    sudo yum install gcc jemalloc-devel openssl-devel tcl tcl-devel clang wget wget http://download.redis.io/redis-7.2.5.tar.gz tar xvzf redis-7.2.5.tar.gz cd redis-7.2.5 make redis-cli CC=clang BUILD_TLS=yes sudo install -m 755 src/redis-cli /usr/local/bin/

    Amazon Linux では、以下の追加ステップを実行する必要がある場合もあります。

    sudo yum install clang CC=clang make sudo make install
  3. redis-cli ユーティリティをダウンロードしてインストールしたら、オプションの make-test コマンドを実行することをお勧めします。

  4. 暗号化と認証を有効にしてクラスターに接続するには、次のコマンドを入力します。

    redis-cli -h Primary or Configuration Endpoint --tls -a 'your-password' -p 6379
    注記

    Amazon Linux 2023 に redis6 をインストールする場合、 redis6-cliの代わりに コマンドを使用できるようになりましたredis-cli

    redis6-cli -h Primary or Configuration Endpoint --tls -p 6379

stunnel との暗号化された接続

redis-cli を使用して、stunnel を使用した転送中の暗号化が有効になっている Redis OSSクラスターに接続するには、次の手順に従います。

  1. SSH を使用してクライアントに接続し、 をインストールしますstunnel

    sudo yum install stunnel
  2. 以下の出力をテンプレートとして使用して、次のコマンドを実行してファイル'/etc/stunnel/redis-cli.conf'を同時に作成および編集し、 ElastiCache (Redis OSS) クラスターエンドポイントを 1 つ以上の接続パラメータに追加します。

    vi /etc/stunnel/redis-cli.conf fips = no setuid = root setgid = root pid = /var/run/stunnel.pid debug = 7 delay = yes options = NO_SSLv2 options = NO_SSLv3 [redis-cli] client = yes accept = 127.0.0.1:6379 connect = primary.ssltest.wif01h.use1.cache.amazonaws.com:6379 [redis-cli-replica] client = yes accept = 127.0.0.1:6380 connect = ssltest-02.ssltest.wif01h.use1.cache.amazonaws.com:6379

    この例では、設定ファイルに redis-cliredis-cli-replica という 2 つの接続があります。パラメータは次のように設定されます。

    • この stunnel インスタンスがクライアントであることを指定するために、client は yes に設定されています。

    • accept はクライアント IP に設定されています。この例では、プライマリはポート 6379 で Redis のOSSデフォルト 127.0.0.1 に設定されています。レプリカは別のポートを呼び出し、6380 に設定する必要があります。エフェメラルポート 1024~65535 を使用できます。詳細については、「Amazon ユーザーガイド」の「エフェメラルポート」を参照してください。 VPC

    • connect は Redis OSSサーバーエンドポイントに設定されます。詳細については、「接続エンドポイントの検索」を参照してください。

  3. stunnel を起動します。

    sudo stunnel /etc/stunnel/redis-cli.conf

    netstat コマンドを使用して、トンネルが開始されたことを確認します。

    sudo netstat -tulnp | grep -i stunnel tcp 0 0 127.0.0.1:6379 0.0.0.0:* LISTEN 3189/stunnel tcp 0 0 127.0.0.1:6380 0.0.0.0:* LISTEN 3189/stunnel
  4. トンネルのローカルエンドポイントを使用して、暗号化された Redis OSSノードに接続します。

    • ElastiCache (Redis OSS) クラスターの作成時にAUTHパスワードが使用されなかった場合、この例では redis-cli を使用して、Amazon Linux で redis-cli の完全パスを使用して ElastiCache (Redis OSS) サーバーに接続します。

      /home/ec2-user/redis-7.2.5.tar.gz/src/redis-cli -h localhost -p 6379

      Redis OSSクラスターの作成時にAUTHパスワードが使用された場合、この例では redis-cli を使用して、Amazon Linux で redis-cli の完全パスを使用して Redis OSSサーバーに接続します。

      /home/ec2-user/redis-7.2.5.tar.gz/src/redis-cli -h localhost -p 6379 -a my-secret-password

    または

    • ディレクトリを redis-7.2.5 に変更し、次の操作を行います。

      ElastiCache (Redis OSS) クラスターの作成時にAUTHパスワードが使用されなかった場合、この例では redis-cli を使用して、Amazon Linux で redis-cli の完全パスを使用して ElastiCache (Redis OSS) サーバーに接続します。

      src/redis-cli -h localhost -p 6379

      Redis OSSクラスターの作成時にAUTHパスワードが使用された場合、この例では redis-cli を使用して、Amazon Linux で redis-cli の完全パスを使用して Redis OSSサーバーに接続します。

      src/redis-cli -h localhost -p 6379 -a my-secret-password

    この例では、Telnet を使用して Redis OSSサーバーに接続します。

    telnet localhost 6379 Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. auth MySecretPassword +OK get foo $3 bar
  5. SSL トンネルを停止して閉じるには、stunnel pkill プロセス。

    sudo pkill stunnel