このセクションには、次のトピックが含まれています。
SMB プロトコルの詳細は、次のトピックを使用してください。
サポートされるほかのプロトコルについては、次のセクションを参照してください。
各シェアにはプロトコル固有のプロパティーがあり、そのシェアに対してさまざまなプロトコルの動作を定義します。これらのプロパティーは、シェアごとに定義することも、シェアのプロジェクトから継承することもできます。次の表に、SMB プロトコルのプロパティーと指定可能な値を示します。
|
クライアント側のキャッシュプロパティー (csc) は、シェアからのファイルおよびプログラムが、アプライアンスから切断されたオフラインでの使用について、ローカルクライアント上でキャッシュされるかどうかを制御します。
|
便宜的ロックとは、ネットワークトラフィックを削減して、パフォーマンスを向上させるために、ローカルキャッシュを容易にするクライアントキャッシングメカニズムです。このプロパティー (oplocks) は、サーバーがシェアレベルで便宜的ロックを付与または拒否するかどうかを制御し、リース (SMB 2.1 以上) およびレガシー (SMB 2.0 以下) の便宜的ロックの両方に適用されます。
クライアントがシェア内のファイルに対して便宜的ロックを要求すると、その要求はサーバーの構成およびファイルの現在の状態に応じて付与または拒否されます。クライアントが、すでにファイルに対して付与されている便宜的ロックに矛盾する方法でファイルにアクセスしようとした場合、競合が発生します。このような場合、サーバーは、競合する操作を続行する前に、既存の便宜的ロックを解除するプロセスを開始します。
便宜的ロックを有効にすると、シェア内のファイルが 1 つのクライアントによってアクセスされる際にパフォーマンスが向上します。ただし、一部のシナリオでは、同じファイルが複数のクライアントに同時にアクセスされるときなどに、不要なオーバーヘッドが追加される可能性があります。そのため、便宜的ロックは、グローバルに制御する代わりに、ワークロードの予期されるパターンに基づいてシェアごとに有効または無効にできます。
便宜的ロックプロパティーがシェアレベルで定義されていない場合は、デフォルトはサービスレベルで設定されたグローバルな便宜的ロックプロパティーになります。詳細は、セクションSMB サービスのプロパティーの「oplocks を有効化」を参照してください。
|
グローバルなシェアモードに対する例外は、クライアント固有のシェアモードまたは例外を設定することによって、クライアントごと、またはクライアントの集まりごとに定義できます。特定のクライアントへのアクセスを制限するために、グローバルなシェアモードをnone に設定して、アクセスを付与するグループを徐々に小さくしていくことをお勧めします。たとえば、グローバルなシェアモードが none に設定されたシェアを作成できます。これは、すべてのクライアントへのアクセスを拒否したあとで、クライアントのサブセットに読み取り専用アクセスを付与します。さらに、クライアントのより小さいサブセットに読み取り/書き込みアクセスを付与して、最後に信頼できるホストのみが読み取り/書き込みアクセスを持つようにできます。
|
クライアントごとまたはクライアントの集まりごとに、クライアントがシェアに対して読み取り専用アクセス権を持つか、または読み取り/書き込みアクセス権を持つかを指定します。
ネットグループの管理 - ネットグループは、SMB エクスポートのアクセスを制御するために使用できます。ただし、ネットグループの管理は複雑になることがあります。代わりに IP サブネット規則または DNS ドメイン規則を使用することを検討してください。
ネットグループを使用する場合、有効になっているサービスに応じて、ネットグループが NIS または LDAP から解決されます。LDAP を使用する場合、それぞれのネットグループがデフォルトの場所 ou=Netgroup,(Base DN) に存在し、標準スキーマを使用している必要があります。
通常、ネットグループエントリのユーザー名コンポーネントは SMB に影響を与えず、ホスト名だけが意味を持ちます。ネットグループに含まれるホスト名は正規名であること、また、DNS で解決される場合は完全修飾名であることが必要です。つまり、SMB サブシステムは、要求しているクライアントの IP アドレスを解決すると、指定された FQDN、または指定されたネットグループのいずれかのメンバーに一致する正規ホスト名になることを検証しようとします。ドメインのコンポーネントも含めて正確に一致する必要があります。それ以外の場合、その例外には一致せず、次の例外が調べられます。ホスト名の解決の詳細は、DNS を参照してください。
2013.1.0 ソフトウェアリリースでは、UNIX クライアントユーザーはパフォーマンスを低下させることなく、最大 1024 グループに所属することが可能です。それ以前のリリースでは、UNIX クライアントユーザーにつき最大 16 グループをサポートしていました。
SMB シェアモードおよび例外オプション
CLI では、すべての SMB シェアモードと例外を、sharesmb プロパティーの 1 つのオプション文字列で指定します。この文字列は、値をコンマで区切ったリストです。これは、BUI に関して説明したグローバルなシェアモードに相当する、ro、rw、on、または off のいずれかで始める必要があります。
|
次の例では、すべてのクライアントのシェアモードが読み取り専用に設定されます。
set sharesmb=ro
追加の SMB 例外は、「option=collection」という形式のテキストを追加することで指定できます。ここで、「option」は、ro または rw のいずれかです。SMB 例外には root アクセス権を付与できません。collection の指定には、表 114 の接頭辞文字と、DNS ホスト名/ドメイン名または CIDR ネットワーク番号を使用します。
たとえば、sf.example.com ドメイン内のすべてのホストに読み取り/書き込みアクセス権を付与するには:
set sharesmb="ro,rw=.sf.example.com"
この例では IP アドレス 2001:db8:410:d43::/64 および 192.0.2.254/22 を持つクライアントに読み取り専用アクセスを付与します。
set sharesmb="on,ro=@[2001:db8:410:d43::/64]:@192.0.2.254/22"
ネットグループ名は、個別の完全修飾ホスト名を使用できる場所であればどこでも使用できます。たとえば、「engineering」ネットグループに読み取り/書き込みアクセス権を付与するには、次のように指定します。
set sharesmb="ro,rw=engineering"
シェアレベルアクセス制御リスト (ACL) は、シェア内のファイルまたはディレクトリの ACL と組み合わせた場合に、そのファイルの実質的なアクセス権を決定します。デフォルトでは、この ACL はすべてのユーザーに完全な制御を許可します。この ACL は、ファイルの ACL の上にもう 1 段のアクセス制御を提供して、より詳細なアクセス制御構成を可能にします。このプロパティーは、SMB リソース名を構成することによってファイルシステムがエクスポートされたあとでのみ構成できます。ファイルシステムが SMB プロトコルでエクスポートされない場合は、シェアレベルの ACL を設定しても何も効果はありません。
アクセスベースの列挙を有効にすると、クライアントが開くことができないファイルがディレクトリエントリとしてクライアントに表示されることがあります。ディレクトリエントリがフィルタリングされるのは、クライアントがそのファイルに対して何もアクセス権を持っていない場合だけです。たとえば、ACL で読み取りアクセス権だけが付与されている場合に、クライアントが読み取り/書き込みアクセスのためにファイルを開こうとすると、その要求は失敗しますが、ファイルはエントリのリストに含まれたままです。
ACL の詳細は、ファイルシステムのアクセス制御リストを参照してください。