Encrypting data in transit - Amazon Elastic File System

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

Encrypting data in transit

転送中のデータを Amazon EFS ファイルシステムを使用して暗号化でき、アプリケーションを変更する必要はありません。

TLS を使用した転送中のデータの暗号化

Amazon EFS ファイルシステムの転送中のデータの暗号化を有効にするには、Amazon EFS マウントヘルパーを使用してファイルシステムをマウントするときに、Transport Layer Security (TLS) を有効にします。詳細については、「EFS マウントヘルパーを使用して EFS ファイルシステムをマウントする」を参照してください。

転送時のデータ暗号化が Amazon EFS ファイルシステムのマウントオプションとして宣言されている場合、マウントヘルパーはクライアント stunnel プロセスを初期化します。stunnel はオープンソースの多目的ネットワークリレーです。クライアント stunnel プロセスはインバウンドトラフィックのローカルポートをリッスンし、マウントヘルパーはネットワークファイルシステム (NFS) クライアントトラフィックをこのローカルポートにリダイレクトします。マウントヘルパーはファイルシステムとの通信に TLS バージョン 1.2 を使用します。

転送中のデータ暗号化を有効にし、マウントヘルパーを使用して、Amazon EFS ファイルシステムをマウントするには
  1. Secure Shell (SSH) を介してインスタンスのターミナルにアクセスし、適切なユーザー名でログインします。これを行う方法の詳細については、Amazon EC2 User Guide for Linux Instances の「SSH を使用した Linux インスタンスへの接続」を参照してください。

  2. 以下のコマンドを実行してファイルシステムをマウントします。

    sudo mount -t efs -o tls fs-12345678:/ /mnt/efs

転送中の暗号化の動作

転送時のデータの暗号化を有効にするには、TLS を使用して Amazon EFS に接続します。EFS マウントヘルパーを使用してファイルシステムをマウントすることをお勧めします。これは、NFS mount でマウントする場合と比べてマウントプロセスを簡略化できるためです。EFS マウントヘルパーは TLS に stunnel を使用してプロセスを管理します。マウントヘルパーを使用していない場合でも、転送中のデータの暗号化を有効にすることができます。そうする場合の手順の概略は以下のとおりです。

EFS マウントヘルパーを使用せずに転送中のデータの暗号化を有効にするには
  1. stunnel をダウンロードしてインストールし、アプリケーションがリッスンするポートを書き留めます。その手順については、「stunnel のアップグレード」を参照してください。

  2. stunnel を実行し、TLS を使用して、ポート 2049 で Amazon EFS ファイルシステムに接続します。

  3. NFS クライアントを使用して、最初のステップで書き留めたポート localhost:port に、port をマウントします。

接続ごとに転送中のデータ暗号化が設定されているため、設定された各マウントにはインスタンスで実行される専用の stunnel プロセスがあります。デフォルトでは、EFS マウントヘルパーが使用する stunnel プロセスは 20449 から 21049 までのローカルポートでリッスンし、ポート 2049 で Amazon EFS に接続します。

注記

デフォルトでは、Amazon EFS マウントヘルパーを TLS で使用するときに、マウントヘルパーによって証明書ホスト名のチェックが適用されます。Amazon EFS マウントヘルパーは、TLS 機能の stunnel プログラムを使用します。Linux のバージョンによっては、これらの TLS 機能をサポートする stunnel のバージョンがデフォルトで含まれていない場合があります。これらの Linuxディストリビューションのいずれかを使用する場合、TLS を使用する Amazon EFS ファイルシステムのマウントが失敗します。

amazon-efs-utils パッケージをインストールしたら、システムのバージョンの stunnel をアップグレードするには、「」を参照してくださいstunnel のアップグレード

暗号化の問題については、「暗号化のトラブルシューティング」を参照してください。

転送中のデータの暗号化を使用する場合、NFS クライアント設定が変更されます。アクティブにマウントされたファイルシステムを検査する場合、次の例に示すように、127.0.0.1 または localhost にマウントされたことが表示されます。

$ mount | column -t 127.0.0.1:/ on /home/ec2-user/efs type nfs4 (rw,relatime,vers=4.1,rsize=1048576,wsize=1048576,namlen=255,hard,proto=tcp,port=20127,timeo=600,retrans=2,sec=sys,clientaddr=127.0.0.1,local_lock=none,addr=127.0.0.1)

TLS および Amazon EFS マウントヘルパーを使用してマウントする場合、ローカルポートにマウントするために NFS クライアントを再設定します。EFS マウントヘルパーは、このローカルポートをリッスンするクライアント stunnel プロセスを開始し、stunnel は TLS を使用して、EFS ファイルシステムへの暗号化された接続を開きます。EFS マウントヘルパーは、この暗号化された接続と関連する設定をセットアップして維持します。

ローカルマウントポイントに対応する Amazon EFS ファイルシステム ID を確認するために、次のコマンドを使用できます。efs-mount-point を、ファイルシステムをマウントしたローカルパスに置き換えます。

grep -E "Successfully mounted.*efs-mount-point" /var/log/amazon/efs/mount.log | tail -1

転送中のデータの暗号化にマウントヘルパーを使用する場合は、amazon-efs-mount-watchdog というプロセスも作成されます。このプロセスは、各マウントの stunnel プロセスが実行されているかどうか、Amazon EFS ファイルシステムがアンマウントされたときに stunnel が停止されたかどうかを確認します。何らかの理由で、stunnel プロセスが予期せず終了した場合、ウォッチドッグプロセスにより再開されます。