一、CentOS 7 加入網域:
1.安裝相關套件:
yum install -y krb5-workstation realmd sssd samba-common adcli oddjob oddjob-mkhomedir samba samba-common-tools
2.查詢 AD 相關資訊及所需套件都已安裝:
realm discover tw.example
或者
realm list
3.Samba 加入 AD 網域
realm join tw.example --user administrator
Samba 退出 AD 網域
realm leave tw.example --user administrator
4.加入網域後,AD 上的帳號都可登入主機,若要限制可登入的使用者:
realm permit --all #允許任何 AD 帳號登入
realm deny --all #拒絕任何 AD 帳號登入
realm permit user@example.com #允許使用UPN格式的 user 帳號登入
realm permit DOMAIN\\User2 #允許使用SAM格式的 user2 帳號登入
realm permit --withdraw user@example.com #從主機刪除可登入的帳號
realm permit -g mis #mis 群組可登入主機
5.查詢網域內使用者帳號資訊:
id tw\\hansen
6.修改 sssd.conf 帳號資訊服務:
[sssd]
domains = tw.example
config_file_version = 2
services = nss, pam
[domain/tw.example]
ad_domain = tw.example
krb5_realm = TW.EXAMPLE
realmd_tags = manages-system joined-with-samba
cache_credentials = True
id_provider = ad
krb5_store_password_if_offline = True
default_shell = /bin/bash
ldap_id_mapping = True
use_fully_qualified_names = False #登入時,不需輸入網域
fallback_homedir = /home/%d/%u #登入後所自動建立的 home 目錄不會加上@DomainName
enumerate = True #使用 getent 指令時,從LDAP查詢帳號資訊
access_provider = ad
[sssd]
domains = tw.example
config_file_version = 2
services = nss, pam
[domain/tw.example]
ad_domain = tw.example
krb5_realm = TW.EXAMPLE
realmd_tags = manages-system joined-with-samba
cache_credentials = True
id_provider = ad
krb5_store_password_if_offline = True
default_shell = /bin/bash
ldap_id_mapping = True
use_fully_qualified_names = False #登入時,不需輸入網域
fallback_homedir = /home/%d/%u #登入後所自動建立的 home 目錄不會加上@DomainName
enumerate = True #使用 getent 指令時,從LDAP查詢帳號資訊
access_provider = ad
7.重啟 sss 服務:
systemctl restart sssd.service
8.列出帳號資訊:
列出使用者:
getent passwd
列出群組:
getent group
二、Samba 加入網域:
1.修改 smb.conf:
[global]
workgroup = TW
realm = TW.EXAMPLE
server string = Samba Server Version %v
security = ADS
kerberos method = secrets and keytab
log file = /var/log/samba/log.%m
max log size = 50
idmap config * : backend = tdb
cups options = raw
[homes]
comment = Home Directories
read only = No
browseable = No
root preexec = /opt/create-home.sh %S %H #自動建立使用者 HOME 目錄 script
[MIS]
comment = 資訊部
path = /home/mis
public = yes
;writable = yes
valid users = @"資訊部門"
write list = @"資訊部門"
2.自動建立使用者 HOME 目錄 script:
vi /opt/create-home.sh
#!/bin/bash
export PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin
user=$1
group="domain users"
home=$2
if [ "$user" == "" ] || [ "$home" == "" ]; then
exit 1
fi
if [ ! -d $home ]; then
mkdir -m 700 -p $home 2>> /tmp/smb_err.log
chown -Rf "$user:$group" $home 2>> /tmp/smb_err.log
fi
3.授予執行的權限:
chmod 700 /opt/create-home.sh
4.變更 MIS 目錄權值:
mkdir /home/mis
chown root:"資訊部門" -R /home/mis
chmod 775 -R /home/mis
5.重啟相關服務
systemctl restart sssd.service smb.service nmb.service
systemctl enable sssd.service smb.service nmb.service
6.測試使用者可不輸入密碼登入目錄
7.查看使用者使用情況:
smbstatus
XP 好像一直出發要打帳號密碼視窗,就是進不了,是XP的關係嗎?
回覆刪除這篇是文章是針對CentOS加入現有的Windows ad網域,不知你的 xp 是什麼情況��
回覆刪除