ONTAPでのエクスポートポリシーの仕組み
すべてのとおり
環境
ONTAP 9
回答
エクスポート ポリシー
- エクスポートポリシーによって、 ONTAP内のNFS(およびオプションでCIFS)のボリュームへのアクセスが決定されます。
- 各ボリューム には1つのエクスポートポリシーが関連付けられます。
- 各 ポリシーには複数のルールを含めることができます。
- アクセスを許可するには、各ポリシーに有効なルールが少なくとも1つ必要です。
- エクスポートポリシールールがないエクスポートポリシーは、関連付けられているボリュームへのアクセスを禁止します。
- 新しく作成したSVMのデフォルトポリシーにはエクスポートポリシールールはないため、 ルールが作成されるまでデータアクセスは許可されません。
- SVM内の各ボリュームはいずれかの
vserver's
エクスポートポリシーに関連付けられます。デフォルトでは、vserver's
defaultエクスポートポリシーに関連付けられています。 - ボリュームへのアクセスは、ボリュームが関連付けられているエクスポートポリシー内のエクスポートポリシールールによって決まります。
- ボリュームにアクセスするには、そのボリュームのエクスポートポリシールールによるアクセス権限だけでなく、ジャンクションパス内のすべての親ボリュームも必要です。(このため、推奨されるSVM / SVMルートボリュームポリシールールでは、クライアントが0.0.0.0/0に一致するネットワーク上のすべてのクライアントに少なくとも読み取りアクセスが許可されています)。
クライアントには、ボリュームに関連付けられているポリシーによるアクセスのみが許可されていて、ジャンクションパス内の親ボリュームのポリシーでこのクライアントへの読み取りアクセスが許可されていない場合、クライアントは関連するボリュームにアクセスできません。
- 各ボリュームに関連付けられているポリシーを確認するには、を実行します
volume show -fields policy
。
エクスポートポリシールール
- すべてのルールには
- SVM
- エクスポートポリシー名
- 適用先のクライアントIP範囲(1つまたは複数)
- インデックス番号
- 読み取り専用ルール
- 読み取り/書き込みルール。
必要なルールフラグは次のとおりです。
- クライアントIP範囲 - クライアントIP範囲は、特定のアドレスまたはサブネット(10.0.3.212や192.168.5.0/24など)、ホスト名、またはネットグループ(@netgroupなど)です。使用可能なすべてのIP4アドレスにエクスポートポリシーを適用する場合は、clientmatchを0.0.0.0/0に設定します。
- インデックス 番号-エクスポートポリシールールにはインデックス番号があり、その番号に基づいて1つずつ評価され ます。クライアントIPを環境する最初のルールが使用されます。たとえば、インデックス1のエクスポートポリシーに 192.168.0.0/16への読み取り専用アクセスのみを許可するエクスポートポリシールールが含まれている場合、インデックス2以降のエクスポートポリシールールで 192.168.0.0/16の範囲内のIPアドレスまたはIPアドレス範囲が考慮される(サブネット192.168.5.0/24の読み取り/書き込みルールなど) 効果はありません。ルールインデックスは、export-policy rule setindexコマンドを使用して変更できます。
- ro-rule - ro-ruleは、 クライアント照合で指定された、関連するクライアントに読み取り専用アクセスを許可するセキュリティ形式を指定します。カンマで区切って複数のセキュリティ形式を指定できます。RO ルールはRWルールよりも優先されるため、特定のプロトコルでRWが必要な場合は、ROルールにもRWを含める必要があります。
オプション:any -
NTLM、 sys 、 krb5を含むnone -
none は、一般的に使用されていない複雑なオプションであり、neverと混同しないでください。(none
7-Modeのエクスポートルールと似ています)。以下の「なし」の項を参照してください。never -
読み取り専用アクセスをクライアントに許可しないように指定します。krb5 -
CIFSまたはNFSのKerberos認証を参照します。ntlm -
NTLM 認証メカニズムを使用するCIFSクライアントを指します。sys -
NFSクライアントに固有のsys形式のセキュリティのみを参照します。
- rw-rule - rw-ruleは 、クライアント照合で指定された、関連するクライアントに書き込みアクセスを許可するセキュリティ形式を指定します。カンマで区切って複数のセキュリティ形式を指定できます。RO ルールはRWルールよりも優先されるため、特定のプロトコルでRWが必要な場合は、ROルールにもRWを含める必要があります。
オプション:any
-
NTLM、 sys 、 krb5を含むnone -
none は、一般的に使用されていない複雑なオプションであり、neverと混同しないでください。(none
7-Modeのエクスポートルールと似ています)。以下の「なし」の項を参照してください。never -
クライアントに読み取り/書き込みアクセスを許可しないように指定します。krb5 -
CIFSまたはNFSのKerberos認証を参照します。ntlm -
NTLM 認証メカニズムを使用するCIFSクライアントを指します。sys -
NFSクライアントに固有のsys形式のセキュリティのみを参照します。
オプションのルールフラグは次のとおりです。
- protocol -protocol オプションを使用すると、CIFS とNFS (および異なるバージョンのNFS)用に別 々 のルールを作成できます。このオプションでは 、1つのサブネットのCIFSアクセスに1つのルールを設定し、NFSアクセスに別のルールを設定できます。たとえば、 krb5 を使用するプロトコルごとに同じサブネットに別のルールを設定することで、CIFS経由でのkrb5の書き込みアクセスを許可し、NFS経由でのkrb5 のアクセスを拒否することができます。また、NFSv3を許可しない場合はNFSv4へのアクセスを強制することもできます。
- anon - anon オプションは、anonユーザのuidを設定します。
clustered Data ONTAPでNFSエクスポートを開始するときにrootをrootのままにする場合は、superuserを sysに設定し ます(下記を参照)。rwまたはroのいずれかがセキュリティ形式noneに設定されているときに、anonユーザを65534以外のuidに設定する場合は、この anon オプションを使用します。ルートアクセスを完全にブロックする(マウントは引き続き許可する)場合は、65535に設定します。 - superuser - superuser オプションでは、rootのままでanonに引き下げられないセキュリティ形式のrootユーザを指定できます。カンマで区切って複数のセキュリティ形式を指定できます。このオプションはanonオプションよりも優先されるため、anonが0以外の値に設定されていても、この環境のクライアントのrootユーザはrootのままになります。
オプション:any
-
NTLM、sys 、 krb5を含むnone
- clustered Data ONTAP 8.2以降ではこれがデフォルトです。これにより、rootはanon値(デフォルトは65534)に引き下げられます。に関するNetAppのドキュメントを参照してください。never -
clustered ONTAP 8.0および8.1ではこれがデフォルトであり、rootはanonの値に引き下げられます(デフォルトは65534)。このオプションは、noneオプションと同じように機能するため、8.2で削除されました。krb5 -
CIFSまたはNFSのKerberos認証を参照します。CIFSスーパーユーザはclustered Data ONTAPでは廃止されましたが、特定のシナリオで引き続き使用される可能性があります。ntlm -
NTLM 認証メカニズムを使用するCIFSクライアントを指します。CIFSスーパーユーザはclustered Data ONTAPでは廃止されましたが、特定のシナリオで引き続き使用される可能性があります。sys
-
NFSクライアントに固有のsys形式のセキュリティのみを参照します。これは、rootの引き下げを無効にするための正しい設定です。
superuser オプションを使用すると、特定のクライアントでrootが匿名にならないようにしながら、anon設定を他のセキュリティ機能に適用することができます。上記のNONEのRO/RWセキュリティの例に加えて、 anon=0のkrb5とsysを区別するために使用できます。 NFS sysのrootを匿名のUID(デフォルトの65534など)に引き下げ、 Kerberos化された NFSのrootを1つのルールで維持する場合は 、anon を65534に、superuserを krb5に設定できます。これにより、Kerberos認証が使用されている場合にのみ、エクスポートに入るときにrootは実際にrootのままになります。
これは非常にまれなケースであり、特定のクライアントに一致するルートの引き下げが望ましくないほとんどのシナリオでは、superuserをsysまたはsys、krb5に設定するだけです。
rwとroに対して「none」オプションを指定
すると、このルールフラグでまだ指定されていないすべてのセキュリティ形式(前述のように、 複数の形式をカンマで指定できます)。 にアクセスしているユーザには、匿名ユーザのIDが付与されます。デフォルトでは、このIDは65534です。ただし、グローバルにマッピングされたこのIDは、 anon オプションを使用して変更できます。このanon uidには、ユーザがマッピングされているuidのデフォルトgidに基づいてデフォルトのgidが割り当てられます(これは、vserver ns-switch設定で指定されたネームサービス、つまりローカルのunix-userテーブルとunix-groupテーブル、またはNISまたはLDAPネームサービスによって決まります)。クライアントがrwを使用してNFS経由で通信し、roがnoneに設定されている場合、クライアントはuidやgidを実際に共有しません。クラスタはすべてのユーザをそのanonにマッピングするので問題ありませ uid
ん。これは 、Data ONTAP 7-Modeのsec=noneオプションに相当します。
ONTAPでのエクスポートルールの作成については、 vserver export-policy rule createを参照してください。
基本的な例
デフォルトポリシーで、sysおよびkrb5経由ですべての可能なクライアントに読み取りおよび書き込みアクセスを行い、どちらのプロトコルのroot権限も引き下げないようにするには、以下のコマンドでルールを作成します。
::> vserver export-policy rule create -policyname default -clientmatch 0.0.0.0/0 -rorule sys,krb5 -rwrule sys,krb5 -superuser sys,krb5
追加情報
N/A