在Linux系统中加入Windows Active Directory (AD)域,可以使用winbind
和samba
工具,以下是详细的步骤:
安装必要的软件包
确保你的系统已经安装了winbind
、sambaclient
和sambacommon
等软件包,你可以使用以下命令来安装这些软件包:
sudo apt update sudo apt install y winbind sambaclient sambacommon krb5user
对于基于Red Hat的发行版(如CentOS或RHEL),可以使用以下命令:
sudo yum install y sambawinbind sambawinbindclients sambawinbindkrb5locator krb5workstation
配置Samba
编辑Samba配置文件/etc/samba/smb.conf
,添加以下内容:
[global] workgroup = YOUR_DOMAIN realm = YOUR_DOMAIN.COM security = ads password server = your_domain_controller_ip idmap config * : backend = tdb idmap config * : range = 10000999999 template shell = /bin/bash winbind use default domain = yes winbind offline logon = yes winbind enum users = yes winbind enum groups = yes winbind refresh tickets = yes
请将YOUR_DOMAIN
替换为你的AD域名,并将your_domain_controller_ip
替换为你的域控制器的IP地址。
配置Kerberos
编辑Kerberos配置文件/etc/krb5.conf
,添加以下内容:
[libdefaults] default_realm = YOUR_DOMAIN.COM dns_lookup_realm = false dns_lookup_kdc = true [realms] YOUR_DOMAIN.COM = { kdc = your_domain_controller_ip admin_server = your_domain_controller_ip } [domain_realm] .your_domain.com = YOUR_DOMAIN.COM your_domain.com = YOUR_DOMAIN.COM
同样,请将YOUR_DOMAIN.COM
替换为你的AD域名,并将your_domain_controller_ip
替换为你的域控制器的IP地址。
加入域
使用以下命令将Linux主机加入到AD域:
sudo net ads join U administrator
这里假设你使用的是域管理员账户,如果需要使用其他用户,可以指定用户名:
sudo net ads join U username@YOUR_DOMAIN.COM
输入密码后,系统会尝试将主机加入到AD域,如果成功,你会看到类似以下的输出:
Using short domain name YOUR_DOMAIN Joined 'YOUR_HOSTNAME' to realm 'YOUR_DOMAIN.COM'
验证配置
你可以使用以下命令来验证是否成功加入了域:
wbinfo u
这个命令应该列出所有AD用户,如果一切正常,你应该能够看到AD用户列表。
配置自动挂载CIFS共享(可选)
如果你需要自动挂载CIFS共享,可以在/etc/fstab
中添加相应的条目。
//your_domain_controller_ip/sharedfolder /mnt/sharedfolder cifs credentials=/etc/samba/credentials,uid=1000,gid=1000 0 0
并创建/etc/samba/credentials
文件,包含以下内容:
username=your_username password=your_password
确保文件权限正确:
sudo chmod 600 /etc/samba/credentials
重启服务
重启相关服务以应用更改:
sudo systemctl restart winbind sudo systemctl restart nmb sudo systemctl restart smb
至此,你已经成功将Linux系统加入到Windows AD域,并配置了相关的服务。