目錄表
CentOS 7 設定 Samba 加入 Active Directory
加入 Active Directory
網域資訊:
Domain:wieson.com
AD Server(DC):wstdc1.wieson.com
AD 管理帳號:administrator(但我不曉得, 就用自己的帳號登入 eddie.lin)
安裝必要套件:
# yum -y install realmd sssd oddjob oddjob-mkhomedir adcli samba-common krb5-workstation
查看 AD 資訊:
realm discover wstdc1.wieson.com
[root@svnserver RD]# realm discover wstdc1.wieson.com wieson.com type: kerberos realm-name: WIESON.COM domain-name: wieson.com configured: kerberos-member server-software: active-directory client-software: sssd required-package: oddjob required-package: oddjob-mkhomedir required-package: sssd required-package: adcli required-package: samba-common-tools login-formats: %U login-policy: deny-any-login [root@svnserver RD]#
加入 AD 網域:
使用 eddie.lin帳戶加入 AD 網域
root # realm join wieson.com --user eddie.lin Password for eddie.lin: [PASSWORD]
查看網域使用者資訊
接下來您就可以使用 id 命令來查詢網域中任何一個帳號的資訊,例如您可以輸入 Id wieson\eddie.lin命令,來得此帳戶的 ID 編碼、所屬的群組清單以及各群組的 ID 編碼。
[root@svnserver RD]# id wieson\\eddie.lin uid=947829313(eddie.lin) gid=947800513(domain users) groups=947800513(domain users),947829317(wmbu),947807725(multimedia),947829318(wsy(new)),947801720(wstiwww),947829276(wsy500),947809570(wsy000) [root@svnserver RD]#
PS. 或 eddie.lin@wieson 或 eddie.lin@wieson.com
查看本機網域資訊
及用 realm list 列出網域資訊
[root@svnserver ~]# realm list wieson.com type: kerberos realm-name: WIESON.COM domain-name: wieson.com configured: kerberos-member server-software: active-directory client-software: sssd required-package: oddjob required-package: oddjob-mkhomedir required-package: sssd required-package: adcli required-package: samba-common-tools login-formats: %U@wieson.com login-policy: allow-realm-logins
設定 sss 帳戶資訊服務
接下來, 你即可使用網域使用者來登入此 Server, 且會在 /home 下建立 eddie.lin@wieson.com 的使用者目錄, 可從 /etc/sssd/sssd.conf 看出, fallback_homedir = /home/%u@%d, 但我想要改成 /home/%d/%u, 如下.
且並將 use_fully_qualified_names = True 改為 False, 這樣登入就不必加上網域(如此 samba 的user設定也不用加上網域)
上述檔案改為:
from:
use_fully_qualified_names = True fallback_homedir = /home/%u@%d
to:
use_fully_qualified_names = False fallback_homedir = /home/%d/%u
[root@svnserver RD]# cat /etc/sssd/sssd.conf [sssd] domains = wieson.com config_file_version = 2 services = nss, pam [domain/wieson.com] ad_domain = wieson.com krb5_realm = WIESON.COM 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 access_provider = deny [root@svnserver RD]#
完成網域連線設定檔的修改之後,使用 systemctl restart sssd 命令以便讓其設定生效。接著您就可以嘗試下達 id 命令來查詢任何一位網域使用者的帳戶資訊,並且省略掉網域名稱的輸入。例如您可以下達 id eddie.lin 命令。
systemctl restart sssd
[root@svnserver RD]# id eddie.lin uid=947829313(eddie.lin) gid=947800513(domain users) groups=947800513(domain users),947829317(wmbu),947807725(multimedia),947829318(wsy(new)),947801720(wstiwww),947829276(wsy500),947809570(wsy000) [root@svnserver RD]#
限制網域使用者登入本機
預設加入 Active Directory 後,所有 AD 上的帳戶均可登入主機,若要限制指定群組才能登的話就必需設定 permit,本例設定 customercare 群組為可登入群組。
# realm permit -g customercare
或 全部限制
# realm deny --all
但, 若你已設定好 samba 加入 domain, 上限制會報錯, 把samba 關掉也不行, 要改 smb.conf 為不加入 ads 即可.
設定 Samba 加入 Active Directory
CentOS 7 設定 Samba 加入 Active Directory
在 RHEL/CentOS 7 中,可以很快速的將 Samba 服務加入到 Windows Active Directory 中,而不用額外設定許多檔案與服務。
在新版本的 RHEL/CentOS 7 裡,採用的認證方式為 kerberos,因此在設定 Samba 之前需先把系統加入 Active Directory。
設定smb.conf檔案
編輯 /etc/samba/smb.conf
[global] workgroup = WIESON realm = WIESON.COM 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 # Eddie customer follow symlinks = yes wide links = yes ; unix extensions = no create mask = 0775 directory mask = 0775 # Share Sample [RD] comment = WSY 研發部 path = /home/share/RD public = yes ; writable = yes valid users = @wsy500, @wsy501, @wsy601, oliverchen write list = @wsy500, @wsy501, [Module_BOM] comment = WSY Module BOM 資料 path = /home/share/Module_BOM public = yes valid users = tino.hsu, hjchen, eddie.lin, wayne_chen, elaine_hsu, shirley_cheng write list = tino.hsu, hjchen, eddie.lin
以上的 User 及 Group 為網域的帳號, 因有設制 sssd.conf(use_fully_qualified_names = False), 故不須帶 Domain 資料.
另外設定 create mask = 0775 及 directory mask = 0775, 讓目錄及檔案可讓所有網域成存取及修改. 並須將目前目錄群組改為 “Domain User”, 擁有者改不改無所謂.
# chown wsy:"domain users" -R share # chmod 775 -R share
[root@svnserver share]# ll 總計 6368040 drwxrwxr-x 50 wsy domain users 4096 4月 6 13:21 Module_BOM drwxrwxr-x 43 wsy domain users 4096 4月 6 13:21 Module_DataSheet drwxrwxr-x 17 wsy domain users 4096 4月 6 13:22 Module_DVT_Report drwxrwxr-x 8 wsy domain users 101 4月 10 10:27 RD [root@svnserver share]#
重啟 samba 後即可享用
# systemctl restart smb
詳細請參考 http://doc.lang.idv.tw/?cat=14
CentOS 7 使用 SSSD 加入 AD (Active Directory)
https://kenwu0310.wordpress.com/2016/05/27/centos-%E5%8A%A0%E5%85%A5-ldap/
RHEL/CentOS 7 設定 Samba 加入 Active Directory
http://technote.aven-network.com/835/rhel7-centos7-samba-join-active-directory
Active Directory Samba with Windbind
http://kb.skullboxx.net/?q=node/529
Freeradius 整合 Active Directory 認證(Multiple Domains模式)
https://sam198214.blogspot.tw/2015/02/freeradius-v2-with-active-directory-on.html