User and Group

ユーザとグループについて

Sambaでの、UNIXのユーザ・グループとWindowsのユーザ・グループを管理する機能の概要について。

 

Sambaのユーザ概念

SambaではSambaユーザという独自のユーザを作成し、そのパスワードも設定します。 さらに、SambaサーバがUNIX系(Linuxも含む)の場合はUNIX(Linux)のログインユーザ名とパスワードが必要になります。

つまり、Sambaユーザには必ず対応するUNIX(Linux)ユーザが存在し、ログイン認証後にUNIX(Linux)ユーザとの対応付けが行われます。

また、コンピュータ名も必要となりますので、SambaユーザとUNIX(Linux)ユーザに登録します。 自動登録などの仕組みは別途必要です。

UNIX(Linux)ユーザの作成

 useraddコマンドなどで、Windowsユーザ名と同じ名前をUNIX(Linux)ユーザにパスワード付きで登録

 useraddコマンドなどで、Windowsのコンピュータ名(名前の最後に$を付ける)と同じ名前をUNIX(Linux)ユーザにパスワード付き登録

Sambaユーザの作成

 ユーザ名とマシン名(最後に$を付ける)ともにpdbeditコマンドもしくはsmbpasswdコマンドを使います。

 追加 pbdedit -a <Sambaユーザ名>  削除 pbdedit -x <Sambaユーザ名>  表示 pbdedit -Lw

 

Sambaグループの作成、修正、削除、参照

Sambaユーザと同じようにUNIX(Linux)グループに対応するSambaグループを作成します。SambaグループはWindowsサーバに存在するローカルグループとして機能します。一般的に、マイクロソフトのWindowsドメインではない環境(ワークグループでのネットワーク運用)では、Sambaグループと言います。

Sambaグループの作成(既存UNIXグループに対応するローカルグループを作成する場合)

 net groupmap add unixgroup=UNIXグループ名 type=local ntgroup=Sambaグループ名 [ comment="<コメント文字>"]

Sambagグループの修正

 net groupmap modify unixgroup=UNIXグループ名 type=local ntgroup=Sambaグループ名 [ comment="<コメント文字>"]

Sambaグループの削除

 net groupmap delete ntgroup=<Sambaグループ名>

Sambaグループの参照

 net groupmap list

Sambaグループの作成(ローカルグループに対応するUNIXグループの定義をWinbind内で保持する場合)

 net sam createlocalgroup  <ローカルグループ名=UNIXグループ名>

Sambaユーザ、グループの参照(ローカルグループに対応するUNIXグループの定義をWinbind内で保持する場合)

 net sam list groups

 net sam list users

グループ名の指定

smb.conf にて valid users = @group1 +groiup2  という表現 @、+ でグループ名を指定

 

Sambaでドメインを構築する場合

グローバルグループとローカルグループ

グローバルグループの初期設定(NTドメインの標準グローバルグループを作成)

 groupadd domadmin  groupadd domuser  gtoupadd domguest

 net groupmap add rid=512 ntgroup="Domain Admin" unixgroup=domadmin type=domain

 net groupmap add rid=513 ntgroup="Domain Users" unixgroup=domuser type=domain

 net groupmap add rid=514 ntgroup="Domain Guests" unixgroup=domguest type=domain

ユーザの権利  (重要な SeAddUsersPrivilege と SeMachineAccountPrivilege を設定)

 net sam rights grant <Sambaユーザ / グループ > <ユーザの権利> -U <管理ユーザ>

 net sam rights grant administrator SeMachineAccountPrivilege

 net sam rights grant administrator SeTakeOwnershipPrivilege

 net sam rights grant administrator SeBackupPrivilege

 net sam rights grant administrator SeRestorePrivilege

 net sam rights grant administrator SeRemoteShutdownPrivilege

 net sam rights grant administrator SePrintOperatorPrivilege

 net sam rights grant administrator SeAddUsersPrivilege

 net sam rights grant administrator SeDiskOperatorPrivilege

 

 

Winbindについて

WinbindはWindowsドメインに参加しているSambaサーバ上で、Windowsドメインのユーザ情報に基づいてUNIX(Linux)ユーザの情報を自動的に生成し、NSS(Name Servcie Switch)機能を経由してUNIX(Linux)ユーザの情報を提供するプログラムです。

Winbindを実行させるにはNSS(Name Server Switch)機構が必要となり、サーバのプラットフォームごとに設定方法が異なります。

CentOS5、CentOS6の場合 次のコマンド実行で自動設定されます。  authconfig --enablewinbind --update

Winbindの起動  service winbind restart

Winbindの動作確認  wbinfo -t  wbinfo -u  wbinfo -g

 

PAMによるSamba以外のプログラムとの認証統合

pam_winbind のインストールと設定は、CentOSの場合  authconfig --enablewinbindauth --update

無効にする場合は authconfig --disablewinbindauth

動作検証は、WindowsドメインのユーザでSSHでSambaサーバへログインします。 ssh -l Windowsユーザ Sambaサーバ

 

タグ: 

オープンソースソフトウェア: