使用者工具

網站工具


service:centos_7_設定_samba_加入_windows_2012_active_directory

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

service/centos_7_設定_samba_加入_windows_2012_active_directory.txt · 上一次變更: 2017/07/18 04:52 由 eddie