1.学习目标:
学会增删改查命令行方式管理samba ad dc,最基本的命令。
其它内容传送门地址:
2.学习内容:
Samba AD DC有专用的管理程序,就是一个工具叫:samba-tool,界面是命令行操作,不是UI界面。
这个工具通过安装samba-ac-dc包就会自动安装,我们其实已经在安装过程使用过了。
samba工具界面,您可以直接管理域用户和组、域组策略、域站点、DNS服务、域复制和其他关键域功能。
使用下面这个命令可以直接看到samba-tool支持的所有功能。
samba-tool -h
相信我,你直接看这玩意你头大,我给说人话翻译一下:
Available subcommands:
computer - Computer management.
计算机 -负责域里面计算机主机的管理,对应win ad的主机管理。
contact - Contact management.
联系人 -负责联系人管理,联系人就比如域代表的企业员工名单管理。
dbcheck - Check local AD database for errors.
数据库检查 -负责检查本地的AD数据库是否有错误,debug时候用的。
delegation - Delegation management.
委派 -负责委派指定管理员这种,玩win ad的都知道可以指定委派角色。
dns - Domain Name Service (DNS) management.
dns -负责域名解析管理,DC域控都带这个功能,但我见运维都不用的,都是单独起其它机器,避免一锅端。
domain - Domain management.
域 -域管理,主要命令行管理,就用这个多。
drs - Directory Replication Services (DRS) management.
drs -通俗翻译就是目录负责服务,用来做主从DC的。
dsacl - DS ACLs manipulation.
dsacl -域控服务的ACL访问控制,做安全功能的。
forest - Forest management.
林 -多个域组成一个林,在win ad里面初始化就要求你指定林
fsmo - Flexible Single Master Operations (FSMO) roles management.
fsmo -负责单点登录这种规则的管理。
gpo - Group Policy Object (GPO) management.
组协议 -负责组协议的管理。
group - Group management.
组 -负责组管理
ldapcmp - Compare two ldap databases.
ldapcmp -负责检查两个LDAP目录是否一直,在主从配置里面debug时候用的多。
ntacl - NT ACLs manipulation.
ntacl -NT这个东西老了,也是网络管理的ACL列表,现在是NT4版本吧。
ou - Organizational Units (OU) management.
组织 -经典的DC专业术语,ou代表组织机构。
processes - List processes (to aid debugging on systems without setproctitle).
processes -这是一个进程检查工具,怎么说呢,检查服务是否开启,很多时候都是直接systemctl。
rodc - Read-Only Domain Controller (RODC) management.
rodc -有些时候域控服务器只是设置为只读模式,就需要用这个,主要是区分业务管理权限的。或许避免神经病删库吧。
schema - Schema querying and management.
schema -负责模式查询,因为LDAP是一种特殊树状数据库,玩数据库的可能更好理解模式查询是啥。
sites - Sites management.
站点 -站点管理,异地域控之间可能会用。
spn - Service Principal Name (SPN) management.
spn -我少用这个,他的功能也是一知半解。
testparm - Syntax check the configuration file.
检查语法 -配置dc域控,可以直接配置smb.conf文件的,这个命令就是检查语法工具。
time - Retrieve the time on a server.
时间服务器 -检索时间服务器NTP的时间的。
user - User management.
用户 -DC域控的主要功能之一,对域用户账号管理就在这里了。
visualize - Produces graphical representations of Samba network state.
虚拟可视化 -主要拿来看samba的网络状态的debug工具。
还没完,上面都是子命令,子命令还有子命令,可以通过下面语句继续查询:
samba-tool <subcommand> -h
基础内容我铺垫一点后,咱们步入正题吧:
2.1 学习user管理的内容:
user管理是AD域控的主要功能,咱们先查看一下user的子命令:
Available subcommands:
add - Add a new user.
addunixattrs - Add RFC2307 attributes to a user.
create - Add a new user.
delete - Delete a user.
disable - Disable a user.
edit - Modify User AD object.
enable - Enable a user.
getgroups - Get the direct group memberships of a user account.
getpassword - Get the password fields of a user/computer account.
list - List all users.
move - Move a user to an organizational unit/container.
password - Change password for a user account (the one provided in authentication).
rename - Rename a user and related attributes.
sensitive - Set/unset or show UF_NOT_DELEGATED for an account.
setexpiry - Set the expiration of a user account.
setpassword - Set or reset the password of a user account.
setprimarygroup - Set the primary group a user account.
show - Display a user AD object.
syncpasswords - Sync the password of user accounts.
unlock - Unlock a user account.
For more help on a specific subcommand, please type: samba-tool user <subcommand> (-h|--help)
这些内容,大家直接去找翻译翻吧,内容已经看关键字都能猜啥意思,因为每个命令都能传递非常多的参数,后面大家对add命令进行help查询会发现注释太多了,我摘几个经典的来说一下:
直接创建用户或者组,不带任何参数,只会默认要求你创建一个密码就行:
samba-tool user add <你定义的用户名>
samba-tool group add <你定义的组名>
创建用户,并要求这个用户下次登录必须改密码:
samba-tool user add <你定义的用户名> --must-change-at-next-login
上面这两个用的多一点,但这只是大家知道熟悉命令就行,很少情况下拿这个命令疯狂创建用户的。
用下面这个命令,可以查看所有用户列表:
samba-tool user list
如果遇到那个账号需要重置密码:
samba-tool user setpassword <你定义的用户名>
密码强度有规则限制的,下面两个命令可以看规则表,也可以自定义修改规则表:
samba-tool domain passwordsettings show
samba-tool domain passwordsettings -h //通过查看帮助,使用帮助里面的各类参数改
要删除桑巴舞AD域用户或者组,请使用以下语法:
samba-tool group delete <你定义的用户名>
samba-tool group delete <你定义的组>
以上基本就是最简单的增删改查的内容,这些东西掌握了,基本掌握你未来使用的百分之八十了。
下一篇,我们研究学习怎么把创建的账号用起来。