![]() |
Using SambaRobert Eckstein, David Collier-Brown, Peter Kelly 共著第一版 1999 年 11 月 1-56592-449-5, 注文番号: 4495 416 ページ, 34.95 ドル |
A.5 SSLの設定オプション
表 A.1 には前述したセクションでSSLを利用するために解説を行なった設定オプションの一覧がある。これらのオプションは、全て範囲がグローバルである。つまりこれらのオプションは設定ファイルの
[global]
セクションに記述する必要がある。
Table A.1: SSLの設定オプション オプション
パラメータ
機能
デフォルト
範囲
ssl
真偽値
SambaでSSLを利用するかどうかを設定する
no
グローバル
ssl hosts
文字列 (アドレスのリスト)
常にSSLを利用して接続を行なうホストのリストを記述する
なし
グローバル
ssl hosts resign
文字列 (アドレスのリスト)
SSLを用いて接続することのないホストを指定する
なし
グローバル
ssl CA certDir
文字列(フルパス名)
証明書が置かれるディレクトリを指定する
なし
グローバル
ssl CA certFile
文字列 (フルパス名)
Samba 自身の全ての証明書を含むファイルを指定する
なし
グローバル
ssl server cert
文字列 (フルパス名)
サーバの証明書の位置を指定する
なし
グローバル
ssl server key
文字列(フルパス名)
サーバの秘密鍵の場所を指定する
なし
グローバル
ssl client cert
文字列(フルパス名)
クライアントの証明書の位置を指定する
なし
グローバル
ssl client key
文字列(フルパス名)
クライアントの秘密鍵の場所を指定する
なし
グローバル
ssl require clientcert
真偽値
Sambaが各クライアントに証明書の提示を要求するかどうかを指定する
no
グローバル
ssl require servercert
真偽値
サーバ側に証明書の提示を要求するかどうかを指定する
no
グローバル
ssl ciphers
文字列
プロトコルのネゴシエーション時に提示する暗号化方式を指定する
なし
グローバル
ssl version
ssl2or3
,ssl3
,tls1
利用するSSLのバージョンを指定する
ssl2or3
グローバル
ssl compatibility
真偽値
異なったSSLの実装との互換性を維持するかどうかを指定する
no
グローバル
A.5.1 ssl
このグローバル設定オプションは、Sambaがクライアントとの通信時にSSLを利用するかどうかを指定する。このオプションのデフォルトは
no
である。設定を変更するには以下のようにする:[global] ssl = yesこのオプションを利用するためには、この章の前半で述べたような Windows 95/98 クライアント用のプロキシが必要である。
A.5.2 ssl hosts
このオプションは、SSLの利用を強制するホストを指定する。ホストやアドレスの指定方法は、
hosts
allow
やhosts
deny
といった設定オプションと同じである。以下に一例を示す:[global] ssl = yes ssl hosts = 192.168.220.この場合、192.168.220 サブネット内の全てのホストとはSSLで通信を行なう必要がある。このような指定方法は、あるサブネットからインターネットのような信頼できないネットワークを経由して様々な接続が行なわれているような場合に有用である。このオプションも
ssl
hosts
resign
オプションも設定されておらず、ssl
オプションがyes
の場合、Samba は全てのクライアントとSSL接続でのみ通信を行なう。A.5.3 ssl hosts resign
このオプションはSSLモードで通信を行なわ ないホストを指定する。ホストやアドレスを指定する方法は、
hosts
allow
やhosts
deny
等の設定オプションと同じである。以下に一例を示す:[global] ssl = yes ssl hosts resign = 160.2.310. 160.2.320.この場合、160.2.310 か 160.2.320 サブネット内の全てのホストとは、SSLでの通信を行なわない。このオプションも
ssl
hosts
オプションも指定されておらず、ssl
オプションがyes
の場合、Samba は全てのクライアントとSSL接続でのみ通信を行なう。A.5.4 ssl CA certDir
このオプションは、Sambaがクライアントを認証する際に用いる認証局の証明書が格納されているディレクトリを指定する。このディレクトリには、各認証局毎にこの章で前述したような名前のファイルが必要である。このディレクトリ内のその他のファイルは無視される。設定は以下のように行なう:
[global] ssl = yes ssl hosts = 192.168.220. ssl CA certDir = /usr/local/samba/certこのオプションにデフォルト値はない。全ての認証局の情報を単一のファイルに格納するのであれば、このオプションを用いる代わりに
ssl
CA
certFile
オプションを用いることができる。A.5.5 ssl CA certFile
このオプションは、Sambaがクライアントを認証する際に用いる認証局の証明書が格納されているファイルを指定する。このオプションが
ssl
CA
certDir
と異なるのは、全ての認証局の情報を格納した単一のファイルを指定する点である。利用方法の例を以下に示す:[global] ssl = yes ssl hosts = 192.168.220. ssl CA certFile = /usr/local/samba/cert/certFileこのオプションのデフォルト値はない。Sambaが信頼する各認証局毎に情報を個別のファイルに格納する場合は、
ssl
CA
certDir
オプションを用いることもできる。A.5.6 ssl server cert
このオプションは、サーバの証明書の格納されている位置を指定する。このオプションは必須であり、サーバがSSLを用いるには、証明書が必要である。以下のように指定する:
[global] ssl = yes ssl hosts = 192.168.220. ssl CA certFile = /usr/local/samba/cert/certFile ssl server cert = /usr/local/samba/private/server.pemこのオプションにデフォルト値はない。証明書にはサーバの秘密鍵を含むことも可能な点に注意すること。
A.5.7 ssl server key
このオプションは、サーバの秘密鍵の位置を指定する。このファイルの格納されている場所には、
root
以外がアクセスできないようにしておくこと。以下のように指定する:[global] ssl = yes ssl hosts = 192.168.220. ssl CA certFile = /usr/local/samba/cert/certFile ssl server key = /usr/local/samba/private/samba.pemこのオプションにデフォルト値はない。秘密鍵は、サーバの証明書に含まれている場合もある。
A.5.8 ssl client cert
このオプションは、クライアント用の証明書の位置を指定する。この証明書は Sambaサーバが
ssl
require
clientcert
オプションを有効にしているときに利用される。この証明書は smbclientによっても利用される。以下に例を示す:[global] ssl = yes ssl hosts = 192.168.220. ssl CA certFile = /usr/local/samba/cert/certFile ssl server cert = /usr/local/ssl/private/server.pem ssl client cert= /usr/local/ssl/private/clientcert.pemこのオプションにデフォルト値はない。
A.5.9 ssl client key
このオプションは、クライアントの秘密鍵の位置を指定する。このファイルの格納されている場所には、
root
以外がアクセスできないようにしておくこと。以下に例を示す:[global] ssl = yes ssl hosts = 192.168.220. ssl CA certDir = /usr/local/samba/cert/ ssl server key = /usr/local/ssl/private/samba.pem ssl client key = /usr/local/ssl/private/clients.pemこのオプションにデフォルト値はない。このオプションはクライアントが証明書を保有している場合にのみ必要である。
A.5.10 ssl require clientcert
このオプションは、クライアントに証明書の提示を要求するかどうかを制御する。クライアントが有効な証明書を持っていて、Sambaサーバに接続する権限があるかどうかを確認する際には、
ssl
CA
certDir
かssl
CA
certFile
にある証明書のリストが用いられる。このオプションの値は単純な真偽値である。以下に例を示す:[global] ssl = yes ssl hosts = 192.168.220. ssl CA certFile = /usr/local/samba/cert/certFile ssl require clientcert = yesSambaサーバに接続する可能性のある全てのクライアントに対して証明書を要求することを推奨したい。このオプションのデフォルト値は
no
である。A.5.11 ssl require servercert
このオプションは、サーバ側に証明書の提示を要求するかどうかを制御する。これは smbclient によって利用される。このオプションは単純な真偽値である。以下に例を示す:
[global] ssl = yes ssl hosts = 192.168.220. ssl CA certFile = /usr/local/samba/cert/certFile ssl require clientcert = yes ssl require servercert = yesSambaサーバに接続する可能性のある全てのクライアントに対して証明書を要求することを推奨したいと記述した。この場合サーバの証明書自身は必要とはされないが、この状態を推奨する。このオプションのデフォルト値は
no
である。A.5.12 ssl ciphers
このオプションは、SSL接続のネゴシエーション段階で決定される、接続で利用する暗号化方式を指定する。Sambaは以下の暗号化方式のいずれも利用可能である:
DEFAULT DES-CFB-M1 NULL-MD5 RC4-MD5 EXP-RC4-MD5 RC2-CBC-MD5 EXP-RC2-CBC-MD5 IDEA-CBC-MD5 DES-CBC-MD5 DES-CBC-SHA DES-CBC3-MD5 DES-CBC3-SHA RC4-64-MD5 NULLSSLプロトコルを熟知していて、特定の暗号化方式を強制する必要があるのでない限りは、このオプションは設定しないほうが良い。
A.5.13 ssl version
このグローバルオプションは、Sambaが暗号化接続を行なうときのSSLのバージョンを指定する。デフォルト値は
ssl2or3
であり、これはSSLプロトコルのバージョン2か3のいずれかを用いるということである。どちらを用いるかは、サーバとクライアント間でのハンドシェイク時にどのバージョンが選択されるかに依存する。しかしSambaが特定のバージョンのプロトコルのみを用いるようにしたい場合は、以下のようにして指定することができる:[global] ssl version = ssl3SSLプロトコルを熟知していて、特定の暗号化方式を強制する必要があるのでない限りは、このオプションは設定しないほうが良い。
A.5.14 ssl compatibility
このグローバルオプションは、Sambaがその他のバージョンのSSLを利用するかどうかを設定する。もっとも本書執筆時点ではその他のバージョンが存在しないため、このオプションには意味がなく、パラメータの値はデフォルトのまま空欄にしておくべきである。
© 1999, O'Reilly & Associates, Inc.