ActiveDirectoryドメインコントローラに ユーザ を追加します。
このユーザは、参加したwindowsマシンのアカウント、Linuxのアカウントとして利用可能になります。
もちろんパスワードは同じ。
sambaでのprovisionの際に「--use-rfc2307」を有効にするとsamba-adの内でuid,gid,login shell, home directoryらが定義できます. uidとgidのみ必要なら「--use-rfc2307」を使わなくてもいい.
その場合、login shellとか皆同じ、home directoryもprefixが付くとか融通が利かなくなりますので、なるべくは「--use-rfc2307」を入れた方が幸せになれるかと
ここではこの「--use-rfc2307」を有効にした上でのユーザ登録を示してます
ユーザも作っていないのになんなのだが、ログインパスワードの要件を下げます。
数字大文字小文字を混ぜさせる要件は大事なのですが、、、ここでは簡単に複雑性はなし、履歴参照なし、文字列は3文字以上、無期限を有効にします。コマンドラインで下記入力を行うと達成されます。
[root@ad ~]# samba-tool domain passwordsettings set --complexity=off --history-length=0 \
--min-pwd-length=3 --min-pwd-age=0 --max-pwd-age=0
Password complexity deactivated!
Password history length changed!
Minimum password length changed!
Minimum password age changed!
Maximum password age changed!
All changes applied successfully!
[root@ad ~]#
まずはグループの登録から。
アカウントの登録もそうなのだが、方法は2通りある。1つはsamba-toolコマンドライン。もう一つはリモートサーバ管理ツールを使ったGUIによる登録。最終的に達成される結果は同じなので使い勝手のいい方を選んでよろしいのかと。
[root@ad ~]# samba-tool group add fate --group-scope=Global --group-type=Security \
--description='fateユーザグループ' --mail-address=xxxx@yyy.jp --notes='選ばれし者たち' \
--gid-number=2000 --nis-domain=chaperone
[root@ad ~]# samba-tool user create illya --must-change-at-next-login --random-password \
--given-name=Illyasviel --surname=Einzbern --initials=von --use-username-as-cn \
--description=天の杯・ホムンクルス --physical-delivery-office=衛宮邸道場 \
--telephone-number=+81-0-0000-0000 --mail-address=xxxxx@xxx.xxxx.xx --internet-address=INTERNET_ADDRESS \
--company=アインツベルン --department=タイガー道場 --job-title=ツッコミ \
--home-drive=z --home-directory="\\\c\home\illya" \
--uid=illya --uid-number=1002 --gid-number=2000 --gecos="Illyasviel von Einzbern" --login-shell=/bin/bash \
--nis-domain=chaperone --unix-home=/home/illya
[root@ad ~]# samba-tool user setpassword illya --newpassword=illya
[root@ad ~]# mkhomedir_helper illya 0022 /etc/skel
samba-toolコマンドラインとリモートサーバ管理ツールとの対応はsamba42/ユーザ登録/対応表を参照の事
kpasswを使用します
[illya@c ~]$ kpassw
provisionの際、その他のグループ/ユーザが実際には作られている。そのUID/GIDの配布状況を確認してみる
一見passwdファイルのよう見えて、どのようなUID/GIDが降られているのか確認できる。
でもgetent passwdやらには表示されない。
ホームディレクトリの表記に注目。winbindな形式なのだろうか。
[root@c ~]# PATH=/opt/samba/bin:$PATH;IFS=$'\n';for s4u in `wbinfo -u`;do wbinfo --user-info=$s4u;done
administrator:*:0:100::/home/SYBYL/administrator:/bin/false
krbtgt:*:3000022:100::/home/SYBYL/krbtgt:/bin/false
guest:*:3000011:3000012::/home/SYBYL/guest:/bin/false
dns-c:*:3000023:100::/home/SYBYL/dns-c:/bin/false
[root@c ~]#
[root@c ~]# PATH=/opt/samba/bin:$PATH;IFS=$'\n';for s4g in `wbinfo -g`;do wbinfo --group-info=$s4g;done
enterprise read-only domain controllers:x:3000017:
domain admins:x:3000008:
domain users:x:100:
domain guests:x:3000012:
(略
dnsupdateproxy:x:3000021:
[root@c ~]#
[root@c ~]#
より詳細には下記コマンドで閲覧できるが、データベースを直接触っているので要注意
[root@c ~]# /opt/samba/bin/ldbedit -H /opt/samba/private/sam.ldb
特定ユーザを特定グループに参加させたい。たとえば管理者なTosakaにarc(ryを加える感じで。
sambaで管理しているグループ一覧は下記コマンドで得られる
[root@c ~]# /opt/samba/bin/samba-tool group list
Allowed RODC Password Replication Group
Enterprise Read-Only Domain Controllers
・・・
Domain Admins
Domain Guests
Schema Admins
Domain Users
Replicator
IIS_IUSRS
DnsAdmins
Guests
Users
crystal
fate
[root@c ~]#
ここで現在のDomain Adminsグループに所属しているユーザを確認します。
[root@c ~]# /opt/samba/bin/samba-tool group listmembers "Domain Admins"
Administrator
[root@c ~]#
とAdministratorのみです。これにユーザsaberを加えてみます。
[root@c ~]# /opt/samba/bin/samba-tool group addmembers "Domain Admins" saber
Added members to group Domain Admins
[root@c ~]#
[root@c ~]# /opt/samba/bin/samba-tool group listmembers "Domain Admins"
Administrator
saber
[root@c ~]#
と加えることができた。
*複数のグループに所属して、代表となる所属とかはwindowsのGUI操作が必要みたい
他、サンプルアカウントとして
[root@c ~]# /opt/samba/bin/samba-tool user create saber --must-change-at-next-login --random-password \
--given-name=Artoria --surname=Pendragon --use-username-as-cn \
--description=剣士王 --physical-delivery-office=衛宮邸 \
--telephone-number=+81-0-0000-0000 --mail-address=xxxxx@xxx.xxxx.xx --internet-address=INTERNET_ADDRESS \
--company=衛宮家 --department=居間 --job-title=腹ペコ王 \
--home-drive=z --home-directory="\\\c\home\saber" \
--uid=saber --uid-number=1003 --gid-number=2000 --gecos="Artoria Pendragon" --login-shell=/bin/bash \
--nis-domain=sybyl --unix-home=/home/saber
[root@c ~]# /opt/samba/bin/samba-tool user setpassword saber --newpassword=saber
[root@c ~]# cp -r /etc/skel /home/saber
[root@c ~]# chown -R 1003:2000 /home/saber