第18章 ファイルとプリントサーバー
18.1. Samba
SMB
) プロトコルのオープンソース実装です。Samba は、Microsoft Windows®、Linux、UNIX 及びその他のオペレーティングシステムが混在するネットワークの構築を可能とし、Windows ベースのファイルへのアクセス及びプリンター共有を可能にします。Samba は SMB
を採用しているため、Windows クライアントに対しては Windows サーバーとして表示されます。
注記
~]# yum install samba
18.1.1. Samba の概要
- Lightweight Directory Access Protocol (
LDAP
) 及び Kerberos を使用した Active Directory ドメインへの参加 - 国際化のためのビルトイン Unicode サポート
- Microsoft Windows サーバー及びクライアントのすべての最新バージョンで、 ローカルレジストリのハッキングを必要としない Samba サーバーへの接続をサポート
- Samba.org チームが執筆した 400 ページ強のリファレンスマニュアルと、300 ページ強の実装/統合マニュアルの 2 つの新しいドキュメント。詳しい情報は、「関連資料」 を参照して下さい。
18.1.1.1. Samba の機能
- Linux、UNIX、Windows クライアントに対するディレクトリツリーとプリンターのサービス
- ネットワークブラウジングのサポート (NetBIOS を使用または不使用)
- Windows ドメインログインの認証
- Windows Internet Name Service (
WINS
) ネームサーバー解決 - Windows NT® 式の Primary Domain Controller (PDC) として機能
- Samba ベースの PDC に対し Backup Domain Controller (BDC) として機能
- Active Directory ドメインメンバーサーバーとして機能
- Windows NT/2000/2003/2008 PDC への参加
- Windows PDC に対する BDC としての機能 (及びその逆)
- Active Directory ドメインコントローラーとしての機能
18.1.2. Samba のデーモンと関連サービス
18.1.2.1. Samba のデーモン
smbd
、nmbd
及び winbindd
) で構成されています。3 つのサービス (smb
、nmb
及び winbind
) は、デーモンの起動、停止、その他のサービス関連機能を制御します。各デーモンの詳細やそのデーモンを制御する特定のサービスについて、以下に記載します。
smbd
smbd
サーバーのデーモンは、Windows クライアントに対してファイル共有と印刷サービスを提供します。又、SMB
プロトコルを介したユーザー認証、リソースのロック、データ共有も実行します。サーバーが SMB
トラフィックをリッスンするデフォルトのポートは、TCP
ポート、139
、445
です。
smbd
デーモンは、smb
サービスによって制御されます。
nmbd
nmbd
サーバーのデーモンは、Windows ベースのシステムにおいて SMB/Common Internet File System (CIFS) によって生成されるような、NetBIOS ネームサービス要求を認識してそれに応答します。これらのシステムとして、Windows 95/98/ME、Windows NT、Windows 2000、Windows XP、LanManager クライアントがあります。又、このデーモンは、Windows ネットワークコンピュータ (Network Neighborhood) ビューを構成するブラウジングプロトコルにも関与しています。サーバーが NMB
トラフィックをリッスンするデフォルトのポートは、UDP
ポート 137
です。
nmbd
デーモンは、nmb
サービスによって制御されます。
winbindd
winbind
サービスは、Windows NT、2000、2003 または Windows Server 2008 を実行しているサーバー上のユーザーとグループの情報を解決するため、Windows ユーザー/グループの情報が、UNIX プラットフォームで認識可能となります。これは、Microsoft RPC コール、Pluggable Authentication Modules (PAM)、Name Service Switch (NSS) を使用することで可能です。これにより、Windows NT ドメインユーザーは、UNIX マシン上の UNIX ユーザーとして表示され、操作を行うこともできます。winbind
サービス、Samba ディストリビューションにバンドルされていますが、smb
サービスとは別に制御されます。
winbindd
デーモンは winbind
サービスによって制御されており、稼働するために smb
サービスを起動する必要はありません。winbindd
は、Samba が Active Directory メンバーである場合にも使用される他、Samba ドメインコントローラー上で (ネストされたグループ及び/またはドメイン間信頼関係の実装のために) 使用することも可能です。winbind
は、Windows NT ベースのサーバーへの接続に使用されるクライアント側のサービスであるため、winbind
の更に詳しい説明は、本マニュアルの範囲外となります。
winbind
の設定方法については、「Winbind 認証の設定」 を参照して下さい。
注記
18.1.4. Samba サーバーの設定
/etc/samba/smb.conf
) では、ユーザーは自分のホームディレクトリを Samba 共有として表示できるように設定されています。又、システム用に Samba 共有プリンターとして設定したすべてのプリンターを共有することもできます。つまり、システムにプリンターを接続して、ご使用のネットワーク上の Windows マシンから印刷することができます。
18.1.4.1. グラフィカル設定
18.1.4.2. コマンドラインからの設定
/etc/samba/smb.conf
を設定ファイルとして使用します。この設定ファイルを変更した場合には、root として以下のコマンドを実行して Samba デーモンを再起動しないと、変更内容は有効になりません:
~]# service smb restart
/etc/samba/smb.conf
ファイルで以下の行を編集します。
workgroup = WORKGROUPNAME server string = BRIEF COMMENT ABOUT SERVER
/etc/samba/smb.conf
ファイルに以下のセクションを (ご自分のニーズとご使用のシステムを反映させるよう変更してから) 追加して下さい:
[sharename] comment = Insert a comment here path = /home/share/ valid users = tfox carole public = no writable = yes printable = no create mask = 0765
tfox
と carole
の 2 人のユーザーが、Samba クライアントから Samba サーバー上の /home/share
ディレクトリの読み取り/書き込みを行うことができます。
18.1.5. Samba の起動と停止
~]# service sshd start
重要
smb
サービスを開始する 前に net join
のコマンドを使用して、まずドメインまたは Active Directory に参加する必要があります。
~]# service smb stop
restart
オプションは、Samba を停止して起動する、迅速な方法です。これは、Samba の設定ファイルを編集した後に設定の変更内容を有効にする、最も信頼できる方法です。最初にデーモンが稼働していなかった場合でも、restart のオプションにより起動される点に注意して下さい。
~]# service smb restart
condrestart
(条件付き再起動) のオプションは、現在稼働中であるという条件でのみ smb
を起動させます。このオプションは、デーモンが稼働していない場合には開始しないため、スクリプトに有用です。
注記
/etc/samba/smb.conf
ファイルに変更が加えられた場合、Samba は数分後にそのファイルを自動的に再読み込みします。手動で restart
または reload
のコマンドを発行して設定ファイルを再読み込みすることもできます。
~]# service smb condrestart
/etc/samba/smb.conf
ファイルの再読み込みは、smb
サービスによる自動再読み込みが失敗した場合に役立ちます。サービスを再起動させずに Samba サーバーの設定ファイルが確実に再読み込みされるようにするためには、root として以下のコマンドを入力します:
~]# service smb reload
smb
サービスはブート時には自動的に起動 しません。Samba がブート時に起動するように設定するには、/sbin/chkconfig
、/usr/sbin/ntsysv
または サービス設定ツール プログラムなどの initscript ユーティリティを使用します。これらのツールに関する詳細は 10章サービスとデーモン を参照して下さい。
18.1.6. Samba サーバーのタイプと smb.conf
ファイル
/etc/samba/smb.conf
設定ファイルで行われます。デフォルトの smb.conf
ファイルはしっかりと文書化されていますが、LDAP、Active Directory、数々のドメインコントローラー実装などの複雑なトピックには対応していません。
/etc/samba/smb.conf
ファイルにどのような変更を加える必要があるかを考慮して下さい。
18.1.6.1. スタンドアロンサーバー
18.1.6.1.1. 匿名の読み取り専用
/etc/samba/smb.conf
ファイルには、匿名の読み取り専用のファイル共有を実装するにあたって必要な設定の例を示しています。security = share
のパラメーターによって共有が匿名となります。単一の Samba サーバーでは、異なるセキュリティレベルを併用することはできない点に留意して下さい。security
指示文は、/etc/samba/smb.conf
ファイルの [global]
設定セクションにある Samba のグローバルパラメーターです。
[global] workgroup = DOCS netbios name = DOCS_SRV security = share [data] comment = Documentation Samba Server path = /export read only = Yes guest only = Yes
18.1.6.1.2. 匿名の読み取り/書き込み
/etc/samba/smb.conf
ファイルには、匿名の読み取り/書き込みファイル共有を実装するにあたって必要な設定の例を示しています。匿名の読み取り/書き込みファイル共有を有効にするには、read only
指示文を no
に設定します。force user
と force group
の指示文も追加して、共有内で指定されている、新たに配置されたファイルのオーナーシップを強制します。
注記
/etc/samba/smb.conf
ファイルで一般ユーザー (force user
) とグループ (force group
) によって指定されているユーザー/グループの組み合わせが割り当てられます。
[global] workgroup = DOCS netbios name = DOCS_SRV security = share [data] comment = Data path = /export force user = docsbot force group = users read only = No guest ok = Yes
18.1.6.1.3. 匿名のプリントサーバー
/etc/samba/smb.conf
ファイルには、匿名のプリントサーバーを実装するにあたって必要な設定の例を示しています。以下のように、browseable
を no
に設定すると、Windows の ネットワークコンピュータ (Network Neighborhood) には、そのプリンターは表示されません。このプリンターは、一覧では隠されていますが、明示的に設定することができます。NetBIOS を使用して、DOCS_SRV
に接続することにより、クライアントは、プリンターにアクセスすることができます。但し、そのクライアントは DOCS
ワークグループの一部でもあることが条件です。又、use client driver
指示文が Yes
に設定されているため、クライアントに正しいローカルプリンタードライバーがインストール済みであることも前提となっています。この場合、Samba サーバーには、クライアントに対してプリンタードライバーを共有する責任はありません。
[global] workgroup = DOCS netbios name = DOCS_SRV security = share printcap name = cups disable spools= Yes show add printer wizard = No printing = cups [printers] comment = All Printers path = /var/spool/samba guest ok = Yes printable = Yes use client driver = Yes browseable = Yes
18.1.6.1.4. セキュアな読み取り/書き込みファイルとプリントサーバー
/etc/samba/smb.conf
ファイルでは、セキュアな読み取り/書き込みファイルとプリントサーバーの実装に必要な設定の例を示しています。security
指示文を user
に設定すると、Samba はクライアントの接続の認証を行うように強制されます。[homes]
の共有には、[public]
共有のような force user
や force group
の指示文はない点に注意して下さい。[public]
の場合の force user
と force group
とは対照的に、[homes]
の共有では、作成されるあらゆるファイルに認証済みユーザーの詳細情報が使用されます。
[global] workgroup = DOCS netbios name = DOCS_SRV security = user printcap name = cups disable spools = Yes show add printer wizard = No printing = cups [homes] comment = Home Directories valid users = %S read only = No browseable = No [public] comment = Data path = /export force user = docsbot force group = users guest ok = Yes [printers] comment = All Printers path = /var/spool/samba printer admin = john, ed, @admins create mask = 0600 guest ok = Yes printable = Yes use client driver = Yes browseable = Yes
18.1.6.2. ドメインメンバーサーバー
18.1.6.2.1. Active Directory ドメインメンバーサーバー
/etc/samba/smb.conf
ファイルでは、Active Directory ドメインメンバーサーバーの実装に必要な設定の例を示しています。この例では、Samba がローカルで実行されているサービスに対してユーザー認証を行いますが、Active Directory のクライアントでもあります。Kerberos realm
パラメーターは、必ずすべて大文字で記載してください (例:realm = EXAMPLE.COM
)。Windows 2000/2003/2008 では、Active Directory の認証に Kerberos が必要とされるため、realm
指示文が必要です。Active Directory と Kerberos が異なるサーバーで稼働している場合は、それらを区別するために、password server
指示文が必要となる場合があります。
[global] realm = EXAMPLE.COM security = ADS encrypt passwords = yes # Optional. Use only if Samba cannot determine the Kerberos server automatically. password server = kerberos.example.com
- メンバーサーバー上の
/etc/samba/smb.conf
ファイルの設定 - メンバーサーバー上の
/etc/krb5.conf
ファイルを含む Kerberos の設定 - Active Directory ドメインサーバー上のマシンアカウントの作成
- メンバーサーバーの Active Directory ドメインへの関連付け
kinit administrator@EXAMPLE.COM
kinit
コマンドは、Active Directory 管理者アカウントと Kerberos レルムを参照する Kerberos 初期化スクリプトです。Active Directory には Kerberos チケットが必要なため、kinit
はクライアント/サーバー認証用に Kerberos チケット保証チケットを取得して、キャッシュします。Kerberos、/etc/krb5.conf
ファイル、kinit
コマンドの詳細については、Red Hat Enterprise Linux 6 『シングルサインオンとスマートカードの管理』 ガイドの 『Kerberos の使用』 の項を参照して下さい。
net ads join -S windows1.example.com -U administrator%password
windows1
が、対応する Kerberos レルム内で (kinit
のコマンドが成功して) 自動的に検出された後には、net
コマンドで、必要な管理者アカウントとパスワードを使用して Active Directory サーバーに接続します。これによって、Active Directory 上に適切なマシンアカウントが作成され、Samba ドメインメンバーサーバーに対して、ドメインに参加するパーミッションが付与されます。
注記
security = user
ではなく、security = ads
が使用されるため、smbpasswd
のようなローカルのパスワードバックエンドは必要ありません。security = ads
をサポートしていない旧式のクライアントは、security = domain
が設定されているかのように認証されます。この変更により、機能に影響を及ぼすことはなく、以前ドメインには入っていなかったローカルユーザーが許可されます。
18.1.6.2.2. Windows NT4 ベースのドメインメンバーサーバー
/etc/samba/smb.conf
ファイルでは、Windows NT4 ベースのドメインメンバーサーバーの実装に必要な設定の例を示しています。NT4 ベースのドメインメンバーサーバーとなるのは、Active Directory への接続と類似しています。主な相異点は、NT4 ベースのドメインでは、認証方法として Kerberos を使用しないため、/etc/samba/smb.conf
ファイルがより単純である点です。この例では、Samba メンバーサーバーが NT4 ベースのドメインサーバーへのパススルーとして機能します。
[global] workgroup = DOCS netbios name = DOCS_SRV security = domain [homes] comment = Home Directories valid users = %S read only = No browseable = No [public] comment = Data path = /export force user = docsbot force group = users guest ok = Yes
/etc/samba/smb.conf
ファイルを修正してそのサーバーを Samba ベースの PDC に容易に変換することができます。又、Windows NT ベースのサーバーが Windows 2000/2003/2008 にアップグレードされた場合には、/etc/samba/smb.conf
ファイルを修正して、必要に応じて、Active Directry へのインフラストラクチャーの変更を容易に組み込むことができます。
重要
/etc/samba/smb.conf
ファイルの設定が終了したら、Samba を起動する 前に root として以下のコマンドを入力して、ドメインに参加します。
net rpc join -U administrator%password
-S
オプションは、 net rpc join
コマンドでは指定する必要がない点に注意して下さい。Samba では、ホスト名を明示的に記載するのではなく、/etc/samba/smb.conf
ファイル内の workgroup
指示文で指定されているホスト名を使用します。
18.1.6.3. ドメインコントローラー
重要
18.1.6.3.1. tdbsam
を使用する Primary Domain Controller (PDC)
tdbsam
パスワードデータベースバックエンドを使用する方法です。エージング smbpasswd
バックエンドである tdbsam
の交換により、数々の点が改善されます。詳細については、「Samba アカウント情報データベース」 を参照して下さい。passdb backend
指示文は、PDC にどのバックエンドを使用するかを制御します。
/etc/samba/smb.conf
には、tdbsam
パスワードデータベースバックエンドを実装するために必要なサンプル設定を示しています。
[global]
workgroup = DOCS
netbios name = DOCS_SRV
passdb backend = tdbsam
security = user
add user script = /usr/sbin/useradd -m "%u"
delete user script = /usr/sbin/userdel -r "%u"
add group script = /usr/sbin/groupadd "%g"
delete group script = /usr/sbin/groupdel "%g"
add user to group script = /usr/sbin/usermod -G "%g" "%u"
add machine script = /usr/sbin/useradd -s /bin/false -d /dev/null -g machines "%u"
# The following specifies the default logon script
# Per user logon scripts can be specified in the user
# account using pdbedit logon script = logon.bat
# This sets the default profile path.
# Set per user paths with pdbedit
logon drive = H:
domain logons = Yes
os level = 35
preferred master = Yes
domain master = Yes
[homes]
comment = Home Directories
valid users = %S
read only = No
[netlogon]
comment = Network Logon Service
path = /var/lib/samba/netlogon/scripts
browseable = No
read only = No
# For profiles to work, create a user directory under the
# path shown.
mkdir -p /var/lib/samba/profiles/john
[Profiles]
comment = Roaming Profile Share
path = /var/lib/samba/profiles
read only = No
browseable = No
guest ok = Yes
profile acls = Yes
# Other resource shares ... ...
tdbsam
を使用する機能的な PDC システムを提供するには、次のステップを実行します:
- 上記の例のように
smb.conf
ファイルの設定を使用します。 - Samba パスワードデータベースに root ユーザーを追加します。
~]# smbpasswd -a root
ここで、パスワードを入力します。 smb
サービスを起動します。- すべてのプロファイル、ユーザー、netlogon ディレクトリが作成されていることを確認します。
- ユーザーがメンバーであるグループを追加します。
~]# groupadd -f users
~]# groupadd -f nobody
~]# groupadd -f ntadmins
- UNIX グループとそれぞれの Windows グループを関連付けます。
~]# net groupmap add ntgroup="Domain Users" unixgroup=users
~]# net groupmap add ntgroup="Domain Guests" unixgroup=nobody
~]# net groupmap add ntgroup="Domain Admins" unixgroup=ntadmins
- ユーザーまたはグループにアクセス権を付与します。例えば、クライアントマシンを Samba ドメインコントローラーのドメインに追加するアクセス権を Domain Admins グループへのメンバーに付与するには、次のコマンドを実行します:
~]# net rpc rights grant 'DOCS\Domain Admins' SetMachineAccountPrivilege -S PDC -U root
注記
tdbsam
認証バックエンドは 使用しないで下さい。そのような場合には、LDAP が推奨されます。
18.1.7. Samba のセキュリティモード
18.1.7.1. ユーザーレベルのセキュリティ
security = user
指示文が /etc/samba/smb.conf
ファイル内に表示されていない場合でも、Samba はこの設定を使用します。サーバーがクライアントのユーザー名/パスワードを受け入れると、クライアントは各インスタンスでパスワードを入力する必要なく、複数の共有をマウントすることができます。又、Samba はセッションベースのユーザー名/パスワード要求を受け入れることもできます。クライアントは、各ログインに対して一意の UID を使用して、複数の認証コンテキストを維持します。
/etc/samba/smb.conf
ファイル内でユーザーレベルのセキュリティを設定する security = share
指示文は以下の通りです。
[GLOBAL] ... security = user ...
18.1.7.1.1. ドメインセキュリティモード (ユーザーレベルのセキュリティ)
/etc/samba/smb.conf
ファイル内で以下のような指示文を使用します。
[GLOBAL] ... security = domain workgroup = MARKETING ...
18.1.7.1.2. Active Directory セキュリティモード (ユーザーレベルのセキュリティ)
/etc/samba/smb.conf
ファイルに、以下のような指示文を追加すると、Samba は Active Directory のメンバーサーバーになります:
[GLOBAL] ... security = ADS realm = EXAMPLE.COM password server = kerberos.example.com ...
18.1.7.1.3. サーバーセキュリティモード (ユーザーレベルのセキュリティ)
注記
/etc/samba/smb.conf
ファイル内に以下の指示文を追加すると、Samba をサーバーセキュリティモードで稼働させることができます。
[GLOBAL] ... encrypt passwords = Yes security = server password server = "NetBIOS_of_Domain_Controller" ...
18.1.8. Samba アカウント情報データベース
- プレーンテキスト
- プレーンテキストバックエンドは、
/etc/passwd
タイプのバックエンドにすぎません。プレーンテキストバックエンドでは、クライアントと Samba サーバー間ですべてのユーザー名とパスワードが暗号化されずに送信されます。この方法は、非常に不安定なため、使用は決して推奨されません。プレーンテキストのパスワードを使用して Samba サーバーに接続する異なる Windows クライアントは、この認証方法をサポートできない可能性があります。 smbpasswd
- 以前の Samba パッケージで使用されていた一般的なバックエンドである
smbpasswd
バックエンドは、MS Windows LanMan や NT アカウントを含むプレーンの ASCII テキストレイアウトと暗号化されたパスワード情報を使用します。smbpasswd
バックエンドは、Windows NT/2000/2003 SAM 拡張コントロールのストレージが欠如しています。smbpasswd
バックエンドは、拡張性や NT ベースグループ用の RID などの Windows の情報の保持能力が乏しいため推奨されません。tdbsam
バックエンドは、小規模なデータベース (ユーザー 250 人) における使用での問題を解決しますが、エンタープライズ級のソリューションではありません。 ldapsam_compat
ldapsam_compat
バックエンドは、アップグレードした Samba のバージョンと併用する場合の継続的な OpenLDAP サポートが可能です。このオプションは、通常 Samba 3.0 への移行時に使用されます。tdbsam
- 新しいデフォルトの
tdbsam
パスワードバックエンドは、ローカルサーバーやビルトインデータベース複製を必要としないサーバー、スケーラビリティや LDAP の複雑性を必要としないサーバーに向けて理想的なデータベースバックエンドを提供します。tdbsam
バックエンドには、smbpasswd
データベース情報や以前は除外されていた SAM の情報がすべて含まれています。拡張された SAM データが含まれたことで、Samba は、Windows NT/2000/2003/2008 ベースのシステムで使用されているのと同じアカウント及びシステムへのアクセス制御を実装することが可能です。tdbsam
バックエンドは、最大で 250 人のユーザー規模に推奨されます。これより大きな組織の場合は、拡張性やネットワークインフラストラクチャーの問題が懸念されるため、Active Directory または LDAP の統合が必要です。 ldapsam
ldapsam
バックエンドは、Samba に最適な分散アカウントインストール方法を提供します。LDAP が最適な理由は、そのデータベースを Red Hat Directory Server や OpenLDAP Server などの任意の数のサーバーに複製できる点です。LDAP データベースは軽量でスケーラブルなため、大企業に好まれます。ディレクトリサーバーのインストールと設定は、本章の対象外となります。Red Hat Directory Server の詳細については、『Red Hat Directory Server 9.0 Deployment Guide』 を参照して下さい。LDAP については、「OpenLDAP」 をご覧下さい。旧バージョンの Samba から 3.0 にアップグレードする場合には、OpenLDAP スキーマファイル (/usr/share/doc/samba-<version>/LDAP/samba.schema
) 及び Red Hat Directory Server スキーマファイル (/usr/share/doc/samba-<version>/LDAP/samba-schema-FDS.ldif
) が変更されている点に注意して下さい。これらのファイルには、ldapsam
バックエンドが適正に機能するために必要な 属性構文の定義 と オブジェクトクラス定義 が含まれています。このため、ldapsam
バックエンドを Samba サーバーに使用する場合は、slapd
にこのスキーマファイルが含まれるように設定する必要があります。その方法については、「スキーマの拡張」 を参照して下さい。注記
ldapsam
バックエンドを使用する場合には、openldap-server
パッケージをインストールする必要があります。
18.1.9. Samba のネットワークブラウジング
TCP
/IP
上の NetBIOS が必要です。NetBIOS ベースのネットワーキングでは、ブロードキャスト (UDP
) メッセージングを使用してブラウズリスト管理を行います。NetBIOS と WINS を TCP
/IP
ホスト名解決の第一の方法として使用しない場合は、静的ファイル (/etc/hosts
) や DNS
などの他の方法を使用する必要があります。
18.1.9.1. ドメインブラウジング
/etc/samba/smb.conf
ファイルのローカルマスターブラウザー用 (もしくはブラウジング一切なし) 設定は、ワークグループ設定と同様になります (「Samba サーバーの設定」 を参照してください)。
18.1.9.2. WINS (Windows Internet Name Server)
/etc/samba/smb.conf
ファイルの一例です:
[global] wins support = Yes
注記
18.1.10. CUPS 印刷サポートを実装した Samba
18.1.10.1. smb.conf
の簡易設定
/etc/samba/smb.conf
設定です。
[global] load printers = Yes printing = cups printcap name = cups [printers] comment = All Printers path = /var/spool/samba browseable = No public = Yes guest ok = Yes writable = No printable = Yes printer admin = @ntadmins [print$] comment = Printer Drivers Share path = /var/lib/samba/drivers write list = ed, john printer admin = ed, john
print$
指示文には、ローカルで利用できない場合にクライアントがアクセスできるプリンタードライバーが格納されています。print$
指示文はオプションであり、組織によっては必要ない場合があります。
browseable
を Yes
に設定すると、プリンターは Windows ネットワークコンピュータに表示されます。但し、Samba サーバーがドメイン/ワークグループ内で正しく設定されていることが条件です。
18.1.11. Samba ディストリビューションプログラム
findsmb
プログラムは Perl スクリプトで、特定のサブネット上の SMB
対応システムに関する情報をレポートします。サブネットが指定されていない場合には、ローカルサブネットが使用されます。表示される項目には、IP
アドレス、NetBIOS 名、ワークグループ名またはドメイン名、オペレーティングシステム、バージョンなどが含まれます。
findsmb
を実行した際の出力を示しています。
~]$ findsmb
IP ADDR NETBIOS NAME WORKGROUP/OS/VERSION
------------------------------------------------------------------
10.1.59.25 VERVE [MYGROUP] [Unix] [Samba 3.0.0-15]
10.1.59.26 STATION22 [MYGROUP] [Unix] [Samba 3.0.2-7.FC1]
10.1.56.45 TREK +[WORKGROUP] [Windows 5.0] [Windows 2000 LAN Manager]
10.1.57.94 PIXEL [MYGROUP] [Unix] [Samba 3.0.0-15]
10.1.57.137 MOBILE001 [WORKGROUP] [Windows 5.0] [Windows 2000 LAN Manager]
10.1.57.141 JAWS +[KWIKIMART] [Unix] [Samba 2.2.7a-security-rollup-fix]
10.1.56.159 FRED +[MYGROUP] [Unix] [Samba 3.0.0-14.3E]
10.1.59.192 LEGION *[MYGROUP] [Unix] [Samba 2.2.7-security-rollup-fix]
10.1.56.205 NANCYN +[MYGROUP] [Unix] [Samba 2.2.7a-security-rollup-fix]
net
ユーティリティは、Windows や MS-DOS で使用する net
ユーティリティと似ています。第一引数は、コマンドを実行する時にプロトコルを指定するのに使用されます。<protocol>
オプションには、ads
、rap
または rpc
を用いて、サーバー接続のタイプを指定することができます。Active Directory では ads
、Win9x/NT3 では rap
、Windows NT4/2000/2003/2008 では rpc
を使用します。プロトコルが省略されている場合には、net
は自動的に特定を試みます。
wakko
という名前のホストが利用可能な共有の一覧を示しています。
~]$ net -l share -S wakko
Password:
Enumerating shared resources (exports) on remote server:
Share name Type Description
---------- ---- -----------
data Disk Wakko data share
tmp Disk Wakko tmp share
IPC$ IPC IPC Service (Samba Server)
ADMIN$ IPC IPC Service (Samba Server)
wakko
という名前のホストの Samba ユーザーの一覧を示しています。
~]$ net -l user -S wakko
root password:
User name Comment
-----------------------------
andriusb Documentation
joe Marketing
lisa Sales
nmblookup
プログラムは、NetBIOS 名を IP
アドレスに解決します。このプログラムは、ターゲットマシンが応答するまで、ローカルサブネット上のクエリをブロードキャストします。
trek
の IP アドレスを表示しています:
nmblookup trek
querying trek on 10.1.59.255
10.1.56.45 trek<00>
pdbedit
プログラムは、SAM データベース内にあるアカウントを管理します。smbpasswd
、LDAP、tdb
データベースライブラリを含むすべてのバックエンドがサポートされています。
~]$ pdbedit -a kristin
new password: retype new password: Unix username: kristin NT username: Account Flags: [U ] User SID: S-1-5-21-1210235352-3804200048-1474496110-2012 Primary Group SID: S-1-5-21-1210235352-3804200048-1474496110-2077 Full Name: Home Directory: \\wakko\kristin HomeDir Drive: Logon Script: Profile Path: \\wakko\kristin\profile Domain: WAKKO Account desc: Workstations: Munged dial: Logon time: 0 Logoff time: Mon, 18 Jan 2038 22:14:07 GMT Kickoff time: Mon, 18 Jan 2038 22:14:07 GMT Password last set: Thu, 29 Jan 2004 08:29:28 GMT Password can change: Thu, 29 Jan 2004 08:29:28 GMT Password must change: Mon, 18 Jan 2038 22:14:07 GMT~]$ pdbedit -v -L kristin
Unix username: kristin NT username: Account Flags: [U ] User SID: S-1-5-21-1210235352-3804200048-1474496110-2012 Primary Group SID: S-1-5-21-1210235352-3804200048-1474496110-2077 Full Name: Home Directory: \\wakko\kristin HomeDir Drive: Logon Script: Profile Path: \\wakko\kristin\profile Domain: WAKKO Account desc: Workstations: Munged dial: Logon time: 0 Logoff time: Mon, 18 Jan 2038 22:14:07 GMT Kickoff time: Mon, 18 Jan 2038 22:14:07 GMT Password last set: Thu, 29 Jan 2004 08:29:28 GMT Password can change: Thu, 29 Jan 2004 08:29:28 GMT Password must change: Mon, 18 Jan 2038 22:14:07 GMT~]$ pdbedit -L
andriusb:505: joe:503: lisa:504: kristin:506:~]$ pdbedit -x joe
~]$ pdbedit -L
andriusb:505: lisa:504: kristin:506:
rpcclient
プログラムは、システム管理用の Windows 管理グラフィカルユーザーインターフェース (GUI) へのアクセスを提供する、Microsoft RPC を使用した管理コマンドを発行します。ほとんどの場合、このプログラムを使用するのは、Microsoft RPC の複雑性を完全に理解している上級ユーザーです。
smbcacls
プログラムは、Samba サーバーまたは Windows サーバーより共有されているファイルやディレクトリ上の Windows ACL を変更します。
smbclient
プログラムは、ftp
と同様の機能を提供する多用途の UNIX クライアントです。
smbcontrol <options> <destination> <messagetype> <parameters>
smbcontrol
プログラムは、実行中の smbd
、nmbd
または winbindd
デーモンに制御メッセージを送信します。smbcontrol -i
を実行すると、空白行または 'q'
と入力するまでコマンドはインタラクティブに実行されます。
smbpasswd
プログラムは暗号化されたパスワードを管理します。このプログラムを実行して、スーパーユーザーが任意のユーザーのパスワードを変更したり、一般ユーザーが自分の Samba パスワードを変更することができます。
smbspool
プログラムは、Samba への CUPS 対応印刷インターフェースです。smbspool
は CUPS プリンターでの使用に設計されていますが、非 CUPS プリンターでも機能します。
smbstatus
プログラムは、Samba サーバーへの現在の接続状態を表示します。
smbtar
プログラムは、Windows ベースの共有ファイル及びディレクトリのローカルテープアーカイブへのバックアップと復元を実行します。tar
コマンドと似ていますが、これらの 2 つのコマンドには互換性はありません。
testparm
プログラムは、/etc/samba/smb.conf
ファイルの構文を確認します。ご使用の /etc/samba/smb.conf
ファイルがデフォルトの場所 (/etc/samba/smb.conf
) にある場合は、ロケーションを指定する必要はありません。testparm
プログラムにホスト名と IP アドレスを指定すると、hosts.allow
と host.deny
のファイルが正しく設定されているか検証します。又、testparm
プログラムは、テスト後にご使用の /etc/samba/smb.conf
ファイルの概要やサーバーのロール (スタンドアロン、ドメインなど) も表示します。コメントが除外され、熟練の管理者が読む情報が簡潔に表示されるため、デバッグを行う時に便利です。
~]$ testparm
Load smb config files from /etc/samba/smb.conf Processing section "[homes]" Processing section "[printers]" Processing section "[tmp]" Processing section "[html]" Loaded services file OK. Server role: ROLE_STANDALONE Press enter to see a dump of your service definitions<enter>
# Global parameters [global] workgroup = MYGROUP server string = Samba Server security = SHARE log file = /var/log/samba/%m.log max log size = 50 socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192 dns proxy = No [homes] comment = Home Directories read only = No browseable = No [printers] comment = All Printers path = /var/spool/samba printable = Yes browseable = No [tmp] comment = Wakko tmp path = /tmp guest only = Yes [html] comment = Wakko www path = /var/www/html force user = andriusb force group = users read only = No guest only = Yes
wbinfo
プログラムは、winbindd
デーモンからの情報を表示します。wbinfo
が機能するには、winbindd
デーモンが実行されている必要があります。
18.1.12. その他のリソース
18.1.12.1. インストールされているドキュメント
注記
Samba のドキュメントを使用するには、まず最初に root として以下のコマンドを実行し、samba-doc パッケージをご使用のシステムに確実にインストールします:~]#
yum install samba-doc
Yum を使用したパッケージのインストールについての詳細は、「パッケージのインストール」 を参照して下さい。/usr/share/doc/samba-<version-number>/
— Samba ディストリビューションに同梱されているすべての追加ファイル。これには、ヘルパースクリプト、サンプル設定ファイル、ドキュメントなどが含まれています。このディレクトリには、『The Official Samba-3 HOWTO-Collection』 と 『Samba-3 by Example』 のオンラインバージョンも含まれています。それぞれの詳細は、以下の通りです。特定の Samba 機能の詳細については、次の man ページを参照して下さい:smb.conf
samba
smbd
nmbd
winbind
18.1.12.2. 関連資料
- 『The Official Samba-3 HOWTO-Collection』 (John H. Terpstra、Jelmer R. Vernooij 共著、Prentice Hall 社出版) — Samba 開発チームが刊行した 公式な Samba-3 ドキュメント。ステップバイステップのガイドというよりは、むしろ参照ガイドです。
- 『Samba-3 by Example』 (John H. Terpstra 著、Prentice Hall 社出版) — Samba 開発チームが刊行した、もう一つの公式なリリース。OpenLDAP、DNS、DHCP、印刷設定ファイルについての詳しい例を解説しています。関連情報がステップバイステップで記載されているので、実環境での実装に役立ちます。
- 『Using Samba, 2nd Edition』 (Jay Ts、Robert Eckstein、David Collier-Brown 共著、O'Reilly 社出版) — 包括的な参考資料を満載した、初級から上級ユーザー向けのリソースです。
18.1.12.3. 役立つ Web サイト
- http://www.samba.org/ — Samba 開発チームが作成した Samba ディストリビューション及びすべての正式なドキュメントのホームページ。数々のリソースを HTML と PDF 形式で入手できる他、有償配布のみの書籍も取り扱っています。これらのリンクの多くは、Red Hat Enterprise Linux 固有ではありませんが一部のコンセプトは該当します。
- http://samba.org/samba/archives.html — Samba コミュニティのアクティブな電子メール一覧。リストのアクティビティレベルが高いため、ダイジェストモードを有効にすることを推奨します。
- Samba ニュースグループ — NNTP プロトコルを使用する gmane.org などの Samba のスレッドのニュースグループも利用可能。メーリングリストの電子メールを受信する代わりに利用することができます。
このページには機械翻訳が使用されている場合があります (詳細はこちら)。