地域ファイル共有のトランジット暗号化の確立
Transport Layer Security( TLS ) 1.2 および stunnel を使用して、地域内のファイル共有に対する暗号化されたマウント接続を確立します。
stunnel を使用して TLS 1.2 への接続を作成することで、コンピュートホストとリージョナルファイル共有との間に暗号化されたマウント接続を確立できます。 セキュリティー・グループ・ベースのアクセス・コントロール・モードでファイル共有を使用し、仮想ネットワーク・インターフェイス(VNI)でマウント・ターゲットを使用する場合、セキュアなエンド・ツー・エンド暗号化を有効にすることができます。 このようなマウント・ターゲットがアタッチされ、共有がマウントされると、VNIはセキュリティ・グループ・ポリシーをチェックして、許可されたインスタンスだけが共有と通信できるようにします。
Stunnelは、 TLS および SSL への汎用的なトンネリングサービスを提供する、オープンソースの多目的・マルチプラットフォームアプリケーションです。 このライブラリは、基盤となる TLS プロトコルを実装するために、 OpenSSL ライブラリを利用しています。 Stunnelは、 X.509 のデジタル証明書を用いた公開鍵暗号方式を使用して接続を保護しており、クライアントはオプションで証明書による認証を行うことができます。
Mount Helper ユーティリティを介して確立された場合、stunnel 接続の暗号化方式は、Advanced Encryption Standard 128ビット・ガロア/カウンターモード( AES-128-GCM )( TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 )となります。 使用可能な暗号スイートに関する詳細については、「 IBM Cloud Framework for Financial Services- 転送中のデータ暗号化 」のトピックを参照してください。
stunnelクライアントアプリケーションのインストールとメンテナンスは、お客様の責任となります。 詳しくは、以下のリソースを参照してください。
Stunnel による転送中の暗号化の前提条件
この機能をご利用になるには、以下の要件を満たしている必要があります:
-
ファイル共有は、
rfsプロファイルに基づいて おり、 セキュリティグループアクセスモードで 構成されている必要があります。 -
マウント・ターゲットは 仮想ネットワーク・インターフェースで 作成する必要があります。 コンピュートホストとマウントターゲットは同じ セキュリティグループの メンバーでなければなりません。 詳細については、 ファイル共有とマウント・ターゲットの作成を 参照してください。
-
転送中のデータ暗号化を有効にすること。 コンソールでは、マウントターゲットを作成するときに、トランジット時の暗号化をオンに切り替えることができます。 API
transit_encryptionプロパティは、機能を有効にするためにstunnel値を受け入れます。 -
Stunnelをサーバーにインストールする必要があります。 IBM Cloud® ファイルサービスでは、stunnelアプリケーションのダウンロード、設定、起動など、コンピュートホスト上で必要なタスクを自動化する「 Mount Helper」ユーティリティが 提供されています。
stunnelでファイル共有をマウントする
-
共有をマウントするには、以下のコマンド構文を使用する。 マウントパスは、ファイル共有に固有の情報に置き換えてください。
mount -t ibmshare -o stunnel 10.0.0.1:/MOUNT_PATH /mnt/MOUNT_PATH以下の例を参照してください。
++ mount -v -o stunnel -t ibmshare 10.240.64.24:/EAD9B8582BC84FDAB57B7A315BCA1210 /mnt/EAD9B8582BC84FDAB57B7A315BCA1210 Debug - Locked ok:/var/lock/ibm_mount_helper.lck Debug - File unlocked:/var/lock/ibm_mount_helper.lck Debug - Locked ok:/var/lock/ibm_mount_helper.lck Debug - RunCmd: ListNfsMounts (mount -t nfs,nfs4) Debug - Existing nfs/nfs4 mounts found:0 Debug - RunCmd: ListNfsMounts (mount -t nfs,nfs4) Debug - Existing nfs/nfs4 mounts found:0 Debug - Local port 10001 will be used for setting up next stunnel Debug - Starting stunnel for mounting /EAD9B8582BC84FDAB57B7A315BCA1210 Debug - Stunnel conf file created /etc/stunnel/ibmshare_EAD9B8582BC84FDAB57B7A315BCA1210.conf Debug - Attempting to start stunnel using /etc/stunnel/ibmshare_EAD9B8582BC84FDAB57B7A315BCA1210.conf Debug - Attempting mount of /EAD9B8582BC84FDAB57B7A315BCA1210 on the local host Debug - RunCmd: Mount using stunnel (mount -t nfs4 -o sec=sys,nfsvers=4.1,rw,port=10001 127.0.0.1:/EAD9B8582BC84FDAB57B7A315BCA1210 /mnt/EAD9B8582BC84FDAB57B7A315BCA1210 -v) Debug - Stunnel mount was successful Debug - File unlocked:/var/lock/ibm_mount_helper.lck -
システムログをチェックして接続を確認し、stunnelが実行され、接続が正常に確立されていることを確認する。 また、以下のコマンドを実行して、添付ファイルシステムを表示することもできる:
df -h
NFS 用の no_root_squash の実装 (オプション)
デフォルトでは、NFS では、root 権限で作成されたファイルが nobody ユーザーにダウングレードされます。 このセキュリティー機能によって、要求されない限り、特権が共有されないようにしています。
no_root_squash を設定することで、root クライアントは、リモートの NFS ファイル共有上で root 権限を維持することができます。
NFSv4.1 の場合は、nfsv4 ドメインを slnfsv4.com に設定した後に、rpcidmapd を開始するか、OS で使用されている類似サービスを開始してください。
-
ホスト側で、
/etc/idmapd.confのドメイン設定を行ってください。$ vi /etc/idmapd.conf [General] #Verbosity = 0 #The following should be set to the local NFSv4 domain name #The default is the host's DNS domain name. Domain = slnfsv4.com [Mapping] Nobody-User = nobody Nobody-Group = nobody -
nfsidmap -cを実行します。