#author("2024-09-29T19:28:17+00:00","default:sysosa","sysosa") #author("2024-09-30T11:14:18+00:00","default:sysosa","sysosa") &color(darkorchid){''ActiveDirectoryドメインコントローラ''};に ユーザ を追加します。 このユーザは、参加したwindowsマシンのアカウント、Linuxのアカウントとして利用可能になります。 もちろんパスワードは同じ。 ***idmap バックエンド [#j61a1405] [[samba]]でのprovisionの際に「--use-rfc2307」を有効にするとsamba-adの内でuid,gid,login shell, home directoryらが定義できます. uidとgidのみ必要なら「--use-rfc2307」を使わなくてもいい. &size(10){その場合、login shellとか皆同じ、home directoryもprefixが付くとか融通が利かなくなりますので、なるべくは「--use-rfc2307」を入れた方が幸せになれるかと}; ここではこの「--use-rfc2307」を有効にした上でのユーザ登録を示してます ***パスワード要件を緩めに [#z1f9b8a9] ユーザも作っていないのになんなのだが、ログインパスワードの要件を下げます。 数字大文字小文字を混ぜさせる要件は大事なのですが、、、ここでは簡単に複雑性はなし、履歴参照なし、文字列は3文字以上、無期限を有効にします。コマンドラインで下記入力を行うと達成されます。 #code(nonumber){{ [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 ~]# }} ***アカウントの作成 [#u397f3d9] まずはグループの登録から。 アカウントの登録もそうなのだが、方法は2通りある。1つは&color(orangered){samba-toolコマンドライン};。もう一つは&color(green){リモートサーバ管理ツール}; [[samba/RSAT]] を使ったGUIによる登録。最終的に達成される結果は同じなので使い勝手のいい方を選んでよろしいのかと。 -&color(orangered){samba-toolコマンドライン}; グループfateを登録してみます。 #code(nonumber){{ [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 }} 次にユーザを登録 #code(nonumber){{ [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 }} &color(red){*};「&color(red){--home-directory};」 の値はwindowsクライアントにログインの際のホームディレクトリになります。 「--unix-home」の値はlinuxの時のホームディレクトリを表します. ここでは 「&color(red){--home-directory="\\\c\home\illya"};」「/home/illya」としてます。 初回パスワードを付与 #code(nonumber){{ [root@ad ~]# samba-tool user setpassword illya --newpassword=illya }} 次にホームディレクトリを用意する。 #code(nonumber){{ [root@ad ~]# mkhomedir_helper illya 0022 /etc/skel }} 作られたホームディレクトリ(\\c\home\illya)のアクセス許可をwindows側から確認すると下記になる &ref(2015y11m22d_131507999.png,nolink); これでユーザ登録は完了 ~ -&color(green){リモートサーバ管理ツール}; windowsPCに[[samba/RSAT]] をインストールして、windowsのGUIで登録操作を行います。 アカウント登録後にホームフォルダを定義すると自動的に対象フォルダを作成しますが、結構注意点がある[[samba/ACLs]] &color(orangered){samba-toolコマンドライン};と&color(green){リモートサーバ管理ツール};との対応は[[samba42/ユーザ登録/対応表]]を参照の事 ***パスワード変更には [#q6db1bc3] ''kpassw''を使用します #code(nonumber){{ [illya@c ~]$ kpassw }} ***sambaサーバの既定ユーザ/グループの確認 [#jf51f56f] provisionの際、その他のグループ/ユーザが実際には作られている。そのUID/GIDの配布状況を確認してみる 一見passwdファイルのよう見えて、どのようなUID/GIDが降られているのか確認できる。 でもgetent passwdやらには表示されない。 ホームディレクトリの表記に注目。winbindな形式なのだろうか。 #code(nonumber){{ [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@ad ~]# PATH=/opt/samba/bin:$PATH;IFS=$'\n';for s4u in `wbinfo -u`;do wbinfo --user-info=$s4u;done CHAPERONE\administrator:*:0:100::/home/CHAPERONE/administrator:/bin/false CHAPERONE\guest:*:3000011:3000012::/home/CHAPERONE/guest:/bin/false CHAPERONE\krbtgt:*:3000021:100::/home/CHAPERONE/krbtgt:/bin/false CHAPERONE\illya:*:1002:100::/home/CHAPERONE/illya:/bin/false [root@ad ~]# [root@ad ~]# PATH=/opt/samba/bin:$PATH;IFS=$'\n';for s4g in `wbinfo -g`;do wbinfo --group-info=$s4g;done CHAPERONE\cert publishers:x:3000022: CHAPERONE\ras and ias servers:x:3000023: CHAPERONE\allowed rodc password replication group:x:3000024: CHAPERONE\denied rodc password replication group:x:3000005: CHAPERONE\dnsadmins:x:3000025: CHAPERONE\enterprise read-only domain controllers:x:3000026: CHAPERONE\domain admins:x:3000004: CHAPERONE\domain users:x:100: CHAPERONE\domain guests:x:3000012: CHAPERONE\domain computers:x:3000020: CHAPERONE\domain controllers:x:3000027: CHAPERONE\schema admins:x:3000006: CHAPERONE\enterprise admins:x:3000007: CHAPERONE\group policy creator owners:x:3000008: CHAPERONE\read-only domain controllers:x:3000028: CHAPERONE\protected users:x:3000029: CHAPERONE\dnsupdateproxy:x:3000030: CHAPERONE\pc-join:x:3000031: CHAPERONE\fate:x:2000: [root@ad ~]# }} より詳細には下記コマンドで閲覧できるが、データベースを直接触っているので要注意 #code(nonumber){{ [root@c ~]# /opt/samba/bin/ldbedit -H /opt/samba/private/sam.ldb [root@ad ~]# /opt/samba/bin/ldbedit -H /opt/samba/private/sam.ldb }} ***グループへの参加 [#d193388d] 特定ユーザを特定グループに参加させたい。たとえば管理者なTosakaにarc(ryを加える感じで。 sambaで管理しているグループ一覧は下記コマンドで得られる #code(nonumber){{ [root@c ~]# /opt/samba/bin/samba-tool group list [root@ad ~]# /opt/samba/bin/samba-tool group list | awk 'BEGIN {OFS="\t";} {print length(),$0}' | sort -nr | cut -f2 Enterprise Read-only Domain Controllers Allowed RODC Password Replication Group Enterprise Read-Only Domain Controllers ・・・ Denied RODC Password Replication Group Windows Authorization Access Group Pre-Windows 2000 Compatible Access Terminal Server License Servers Network Configuration Operators Certificate Service DCOM Access Incoming Forest Trust Builders Read-only Domain Controllers Group Policy Creator Owners Performance Monitor Users Cryptographic Operators Performance Log Users Distributed COM Users Remote Desktop Users RAS and IAS Servers Domain Controllers Event Log Readers Enterprise Admins Account Operators Server Operators Domain Computers Backup Operators Protected Users Print Operators Cert Publishers DnsUpdateProxy Administrators Schema Admins Domain Guests Domain Admins Domain Guests Schema Admins Domain Users Replicator IIS_IUSRS DnsAdmins pc-join Guests Users crystal fate [root@c ~]# [root@ad ~]# }} ここで現在のDomain Adminsグループに所属しているユーザを確認します。 #code(nonumber){{ [root@c ~]# /opt/samba/bin/samba-tool group listmembers "Domain Admins" [root@ad ~]# /opt/samba/bin/samba-tool group listmembers "Domain Admins" Administrator [root@c ~]# [root@ad ~]# }} とAdministratorのみです。これにユーザsaberを加えてみます。 #code(nonumber){{ [root@c ~]# /opt/samba/bin/samba-tool group addmembers "Domain Admins" saber [root@ad ~]# /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" [root@ad ~]# [root@ad ~]# /opt/samba/bin/samba-tool group listmembers "Domain Admins" Administrator saber [root@c ~]# [root@ad ~]# }} と加えることができた。 &color(red){*};複数のグループに所属して、代表となる所属とかはwindowsのGUI操作が必要みたい ***サンプルアカウント [#l6543b2d] 他、サンプルアカウントとして #code(nonumber){{ [root@c ~]# /opt/samba/bin/samba-tool user create saber --must-change-at-next-login --random-password \ [root@ad ~]# /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@ad ~]# /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 [root@ad ~]# cp -r /etc/skel /home/saber [root@ad ~]# chown -R 1003:2000 /home/saber }}