Sambaドメイン
提供:Samba-JP
ナビゲーションに移動検索に移動
ドメインの管理
Windowsマシンのドメイン参加
各種 Windows プラットフォームのマシンが Samba ドメインに参加できることを確認する。
Windows 7 Professional についても、レジストリを変更することで、Samba ドメインに参加できることを確認する。
関連パラメータなど
- workgroup = SAMBADOM 行
- domain logons = yes 行
- LDAP関連パラメータほか
確認手順
- 1. レジストリの編集(Windows 7 / Windows Server 2008 R2以降のみ)
- ドメインに参加させるWindowsマシンがWindows 7もしくはWindows Server 2008 R2以降の場合は、Windows 7からSambaドメインにログオンできない に従い、レジストリを変更する。
- ドメインに参加させるWindowsマシンがWindows Server 2008の場合は、未確認
- 2. NetBIOS名の名前解決の確認
- SambaサーバとWindowsマシンが同一IPサブネットに存在していない場合は、WINSやLMHOSTSファイルを設定してNetBIOS名の名前解決を適切に行う。
- 3. Samba ドメインへの参加
- NTドメインへの参加と同様にして、Sambaドメインに参加する。ドメイン参加の際のユーザ名とパスワードとして、administratorとsambaを用いる。
- 4. ドメインのユーザとしてログオン
- 再起動後、以下のユーザでSAMBADOMドメインにログオン可能なことを確認する
- Administrator
- パスワード samba
- ldap01
- パスワードldap01
- 注意: ldap01ユーザは一般ユーザのため、サーバOSの場合は、事前に該当ユーザにローカルログオン権限を付与しておく必要がある。
参照
- 改訂版 Sambaのすべて P.557 - 558
NTドメインの管理ツールのインストールと実行
Windows マシンから NTドメインの管理ツールである「ドメイン ユーザー マネージャ」および「サーバー マネージャ」でアクセスできることを確認する。
関連パラメータなど
- 特になし
確認手順
- 1. NTドメインの管理ツールの入手
- Windows NT Workstation 4.0 用の Windows NT サーバー ツール より、あらかじめ管理ツールのアーカイブファイル srvtools.exe を入手の上、適宜展開する
- MS-DOS 形式の自己展開ファイルとなっているが、ファイルの拡張子を zip に変更することで、普通の zip 形式の圧縮ファイルとして扱うことも可能
- 2. 管理ユーザとしてログオン
- ドメインに参加している Windows マシンに Administrator などの管理ユーザとしてログオンする。
- ドメイン外のマシンから、\\sambapdc\IPC$ 共有に SAMBADOM\Administrator としてアクセスすることで、要件を満たすことなども可能。
- 管理ツールは Windows XP もしくは Windows Server 2003 R2 以前のプラットフォームでしか起動しないので、当該プラットフォームの Windows マシンにログオンする必要がある。
- 3. ドメイン ユーザー マネージャの起動
- 展開した管理ツール内にある usrmgr.exe を起動する。
- 一般ユーザとしてログオンした上で、「別のユーザーとして実行」メニューから SAMBADOM\Administrator 権限で usrmgr.exe を起動するなどの方法を取ることも可能
- 4. サーバー マネージャの起動
- 展開した管理ツール内にある srvmgr.exe を起動する。
- 一般ユーザとしてログオンした上で、「別のユーザーとして実行」メニューから SAMBADOM\Administrator 権限で srvmgr.exe を起動するなどの方法を取ることも可能
補足
- フォントが見づらい場合は、各ツールの「Options」-「Fonts」メニューから「MS ゴシック」などの非プロポーショナルフォントに変更する。
- Windows NT Workstation 4.0 用の Windows NT サーバー ツールへのリンクファイルが shared 共有直下にあるので、これを用いてアクセスすることもできる。要リンク設置
参照
- 改訂版 Sambaのすべて P.559 - 560
アカウントポリシー
確認手順
- 基本的に NT ドメインと同様の手順で確認可能
- pdbedit コマンドにより、Samba サーバ上で設定を行うことも可能
参照
- 改訂版 Sambaのすべて P.601 - 611
信頼関係
確認手順
- Samba ドメイン検証環境では検証できない
- 基本的に NT ドメインと同様の手順で確認可能
- 各種コマンドにより、Samba サーバ上で設定を行うことも可能
参照
- 改訂版 Sambaのすべて P.621 - 632
Samba ユーザの管理
ユーザの追加
ユーザの追加方法を確認する。
関連パラメータなど
- LDAP関連パラメータ
確認手順1(GUI)
- 現在のユーザ一覧の確認
- usrmgr.exe を起動し、これから追加しようとしているユーザ名のユーザが存在していないことを確認する。
- ユーザ追加
-
- 1. usrmgr.exe のメニューで「User」-「New User」とたどり、表示された画面で Username 欄に任意のユーザ名を指定する。
- 必要に応じて、適宜 Password欄や他の欄も設定する。なお、Username 欄以外をまったく変更しなかった場合、ユーザのパスワードは空となり、初回ログオン時にパスワード変更を要求される。
- 2. 「Add」を押す。
- 3. 「Close」を押す。
- 追加されたユーザの確認
- 改めて usrmgr.exe の画面を確認し、追加したユーザ名のユーザがユーザ一覧に表示されていることを確認する。
確認手順2(CUI)
- 現在のユーザ一覧の確認
- pdbedit -L コマンドを実行し、これから追加しようとしているユーザ名のユーザが存在していないことを確認する。
- ユーザ追加
- pdbedit -a username を実行する。
- ldapsam:editposix 環境では、事前に UNIX ユーザを LDAP 上に作成しておく必要はない。
- 追加されたユーザの確認
- 改めて pdbedit -L コマンドを実行し、追加したユーザ名のユーザが表示されていることを確認する。
参照
- 改訂版 Sambaのすべて P.569
ユーザの削除
ユーザの削除方法を確認する。
関連パラメータなど
- LDAP関連パラメータ
- ldap delete dn パラメータ
確認手順1(GUI)
- 現在のユーザ一覧の確認
- usrmgr.exe を起動し、これから削除しようとしているユーザ名のユーザが存在していることを確認する。
- ユーザ削除
-
- 1. usrmgr.exe のユーザ一覧画面で削除したいユーザをフォーカスし、「DEL」キーを押下する
- 2. 警告画面で「OK」を押す。最終確認画面でも「はい」を押す。
- ldap delete dn パラメータにより、LDAP 上に格納されている、Samba ユーザに対応する UNIX ユーザの DN も削除される。
- ユーザ削除の確認
- 改めて usrmgr.exe の画面を確認し、削除したユーザ名のユーザがユーザ一覧に表示されていないことを確認する。
確認手順2(CUI)
- 現在のユーザ一覧の確認
- pdbedit -L コマンドを実行し、これから削除しようとしているユーザ名のユーザが存在していることを確認する。
- ユーザ削除
- pdbedit -x username もしくは smbpasswd -x username を実行する。
- ldap delete dn パラメータにより、LDAP 上に格納されている、Samba ユーザに対応する UNIX ユーザの DN も削除される。
- ユーザ削除の確認
- 改めて pdbedit -L コマンドを実行し、削除したユーザ名のユーザがユーザ一覧に表示されていないことを確認する。
補足
- CUI で作成したユーザを GUI で削除したり、その逆を行ったりしても構わない。
参照
- 改訂版 Sambaのすべて P.569
パスワードの変更と複雑なパスワードの強制
一般ユーザがパスワードを変更する際に、複雑なパスワードを強制する機構について確認する。
関連パラメータなど
- LDAP関連パラメータ
- check password script パラメータ
確認手順
- パスワードの変更
- 以下のいずれかの方法でパスワードを変更する
- 1. 「ようこそ画面」を用いない設定の Windows マシンにログオン後、Ctrl + Alt + Del を押下すると表示される画面から、「パスワードの変更」をクリックし、パスワードの変更を行う
- 現在ログオンしているユーザ以外のユーザも含め、任意のユーザのパスワードを変更できる。
- このほか、ADSI による変更など、Windows で可能な様々な方法を用いたパスワード変更が可能。
- 2. Samba サーバに一般ユーザとしてログオンし、smbpasswd コマンドを用いて、自身のパスワードを変更する
- オプションを指定することで、Windows マシンを含む任意のサーバの任意のユーザのパスワード変更が可能。
- パスワード変更の確認
- パスワードが変更されたユーザでログオン中の場合は一旦ログオフし、再度該当のユーザとしてログオンする。
- 変更前のパスワードではログオンできず、変更後のパスワードでログオンできることを確認する。
- 複雑なパスワードの強制を有効化する
-
- 1. [global] セクション内の、以下の設定のコメントをはずす
# forcibly apply complex password ; check password script = /usr/local/sbin/crackcheck -c -s
- 2. Samba サーバを再起動する、もしくは smbcontrol smbd reload-config コマンドなどで、変更を反映させる
- 複雑なパスワードの強制の確認
- 再度パスワードを変更する。たとえば Windows マシンからアルファベット英小文字のみのパスワードを指定しようとしても、パスワードは要求された複雑さを満たさないというエラーとなり、変更できない。
補足
- 最小パスワード長や、パスワードヒストリ等については、アカウントポリシーにより制御される。
- 管理ユーザによるパスワード変更は、本制限の対象外となる(NTドメインと同様)。
参照
- 改訂版 Sambaのすべて P.114 - 118
Windows ユーザと Samba ユーザとのマッピング
任意のユーザ名と Samba ユーザとのマッピングができることを確認する。
関連パラメータなど
- username map = /etc/samba/smbusers
- /etc/samba/smbusers ファイル
確認手順
- Windows マシンから、以下のユーザ名でログオンする(パスワードはldap01)
- LDAP01 user
- 00000001
- LDAPユーザー 01
- いずれの場合も ldap01 としてログオンしていることを確認する
- たとえば、コマンドプロンプトから net use コマンドを実行すると、ホームディレクトリが \\sambapdc\ldap01 になっていることがわかる。
補足
- /etc/samba/smbusers ファイルを編集することで、上記以外のマッピングも行える。
参照
- 改訂版 Sambaのすべて P.109 - 110
ユーザー属性一般
ユーザー権利
参照
- 改訂版 Sambaのすべて P.611 - 614
移動プロファイル
参照
- 改訂版 Sambaのすべて P.615 - 617
グローバルグループ
参照
- 改訂版 Sambaのすべて P.594 - 601
ローカルグループ
UNIX ユーザの管理ほか
ホームディレクトリの設定および自動作成
ドメインの個々のユーザに対して、ホームディレクトリの設定(マウント先の共有、マウントするドライブ)が設定できることを確認する。
併せて新規ユーザーのログオン時にホームディレクトリが自動的に作成されることを確認する。
関連パラメータなど
- logon home =
- (logon drive)
- root preexec = /usr/local/sbin/createhomedir %D %S
- 本来であれば、上記設定を行わずとも、PAM の設定によりホームディレクトリが自動作成されるはずだが、今回の環境で検証した限り、自動作成がうまくいかなかったため、暫定的に root preexec パラメータを用いて自動作成を行っている。
- [homes] 共有
- (template homedir)
確認手順
- たとえば以下のようにして、 testuser という名前で、新規ユーザを作成する
# pdbedit -a testuser
GUIから作成しても構わない。
- たとえば以下のようにして、ホームディレクトリを /home/SAMBADOM/testuser に設定し、H: ドライブにマウントするように設定する
# pdbedit -h \\\\sambapdc\\testuser -D h: testuser
GUIから設定しても構わない。なお、Samba サーバ上では、[homes] 共有により、testuser でログオンすると /home/SAMBADOM/testuser が \\sambapdc\testuser という名前で共有される。
- たとえば以下のようにして、 testuser ディレクトリが存在しないことを確認する
root@sambapdc:/home/SAMBADOM# ls -l total 8 drwx------ 2 ldap01 domusers 4096 Jul 8 21:21 ldap01 drwx------ 2 ldap02 domusers 4096 Jul 8 21:24 ldap02
- Windows マシンから testuser でログオンする
- 再び ls -l /home/SAMBADOM を実行し、以下のように testuser ディレクトリが作成されていることを確認する
root@sambapdc:/home/SAMBADOM# ls -l total 12 drwx------ 2 ldap01 domusers 4096 Jul 8 21:21 ldap01 drwx------ 2 ldap02 domusers 4096 Jul 8 21:24 ldap02 drwx------ 2 testuser domusers 4096 Aug 6 19:31 testuser
- Windows マシン上でコマンドプロンプトを起動し、先ほどホームディレクトリのマウント先として指定したドライブがカレントドライブとなっていることを確認する。
- net use コマンドを実行し、カレントドライブがホームディレクトリとして指定した共有になっていることを確認する。
- たとえば以下のようにして、何かファイルを書き込み、その内容が Samba サーバ上からも参照できることを確認する。
H:\> echo test1 > test1.txt
# cat ~testuser/test1.txt test1
応用
- logon home パラメータと logon drive パラメータにより、新規作成するユーザに設定するホームディレクトリの共有パスおよびマウント先のドライブ名を指定することができる。Samba PDC では、logon home ドライブを明示的に空文字に指定しているため、デフォルトでは、ホームディレクトリのマウントは行われない。