将Samba与CentOS上的Active Directory集成
Samba是一个免费的软件重新实现SMB/CIFS网络协议,为各种Microsoft Windows客户端提供文件和打印服务,可以与Windows Server域集成。
在本教程结束时,我们将能够将Samba与CentOS和RedHat上的Microsoft Active Directory集成。
我们还涵盖了如何设置Linux域控制器以及如何在Ubuntu上加入域控制器。
要求
安装了CentOS的计算机。
互联网连接。
使用Active Directory服务的Microsoft Windows Server安装和配置。
安装必要的软件包
使用YUM命令安装Samba客户端工具如下:
$sudo yum install authconfig samba-winbind samba-client samba-winbind-clients oddjob-mkhomedir
加入Active Directory域
运行sudo authconfig-tui
,然后选择相同的选项,然后按下如下图所示。
现在,编写域,域控制器和AD领域(建议写所有大写字母)并选择安全模型AD和模板shell /BIN/BASH,如下所示
按加入域,系统会提示我们保存配置并编写域管理员密码,如下所示。
现在检查Active Directory用户和计算机,我们应该找到新的加入机器。
设置用户主目录
我们可以为Active Directory用户创建本地主目录,如下所示
$sudo mkdir /home/YOURDOMAIN //Your domain must be in capital letters
运行authconfig命令并启用主目录。
在命令行中使用--enablemkhomedir
选项。
$sudo authconfig --enablemkhomedir --update
配置smb.conf.
使用任何文本编辑器打开smb.conf(/etc/samba/smb.conf)。
在全局设置下配置如下:
[global] workgroup = YOURDOMAIN password server = DC.YOURtheitroad.com realm = YOURtheitroad.com security = ads idmap uid = 16777216-33554431 idmap gid = 16777216-33554431 template homedir = /home/YOURDOMAIN template shell = /bin/bash winbind use default domain = true winbind offline logon = false idmap backend = idmap_rid:yourdomain=16777216-33554431 obey pam restrictions = yes
配置System-auth
使用任何文本编辑器打开system-auth文件(/etc/pam.d/system-auth)。
在文件末尾添加以下行
session required pam_oddjob_mkhomedir.so skel=/etc/skel/umask=0022
现在重新启动Samba,Winbind和Oddjob服务
$sudo service smb restart $sudo service winbind restart $sudo service oddjobd restart
在CentOS 7及以上运行以下命令:
$sudo systemctl start winbind.service $sudo systemctl start oddjob
登录Active Directory
打开运行任何加入域的计算机,并运行以下命令中的任何一个命令
$su - ‘domain\domain_user’ $su - domain\domain_user
如果Winbind使用Default Domain = True参数在Samba配置文件中设置,则可以使用以下语法。
$su - domain_user $su - [email protected]
列出域用户和域信息
我们可以使用wbinfo
命令获取域用户和组信息。
此外,我们可以使用net
命令来获取域详细信息。
检查以下命令:
$sudo wbinfo -u $sudo wbinfo -g $sudo wbinfo -i domain_user $sudo net ads info
Unjoin(假)Active Directory
使用net命令从Active Directory解除计算机。
使用以下命令,需要重新启动以更改实现效果。
$sudo net ads leave -w domain-name -U domain-administrator
或者
$sudo net ads leave -S -U user%password
或者
$sudo realm leave ad.example.com
$sudo reboot