転送中のデータの暗号化 - Amazon Elastic File System

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

転送中のデータの暗号化

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

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

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

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

転送中のデータ暗号化を有効にし、マウントヘルパーを使用して、Amazon EFS ファイルシステムをマウントするには

  1. Secure Shell (SSH) を介してインスタンスのターミナルにアクセスし、適切なユーザー名でログインします。これを行う方法の詳細については、https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AccessingInstancesLinux.html の「Linux インスタンス用 Amazon EC2 ユーザーガイドSSH を使用した Linux インスタンスへの接続」を参照してください。

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

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

転送中の暗号化の動作

転送時のデータの暗号化を有効にするには、TLS を使用して Amazon EFS に接続します。最もシンプルなオプションのマウントヘルパーの使用をお勧めします。

マウントヘルパーを使用していない場合でも、転送中のデータの暗号化を有効にすることができます。そうする場合の手順の概略は以下のとおりです。

マウントヘルパーを使用せずに転送中のデータの暗号化を有効にするには

  1. stunnel をダウンロードしてインストールし、アプリケーションがリッスンするポートを書き留めます。

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

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

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

注記

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

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

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

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

$ 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 クライアントを再設定します。マウントヘルパーは、このローカルポートをリッスンするクライアント 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 プロセスが実行されているかどうか、 ファイルシステムがアンマウントされたときに stunnel が停止されたかどうかを確認します。Amazon EFS何らかの理由で、stunnel プロセスが予期せず終了した場合、ウォッチドッグプロセスにより再開されます。