我有一台现有的 Ubuntu 服务器。用户已经使用 AD 凭据登录。问题是有一个已安装的文件共享 - 在 Windows 环境中,用户只能访问他们有权访问的文件夹。在 Ubuntu 服务器上,使用共享的通用帐户访问该文件夹,该帐户的凭据存储在 /etc/smbmounts 中的隐藏文件中。我的任务是使文件夹能够使用用户最初登录计算机时使用的相同 AD 凭据进行访问。这是问题的摘要,具体内容如下:
设置如下:
/etc/krb5.conf 如下所示:
[libdefaults]
default_realm = DOMAIN.NAME
ticket_lifetime = 24h #
renew_lifetime = 7d
/etc/samba/smb.conf 如下所示:
[global]
workgroup = DOMAIN
client signing = yes
client use spnego = yes
kerberos method = secrets and keytab
realm = DOMAIN.NAME
security = ads
server signing = mandatory
/etc/sssd/sssd.conf:
[sssd]
domains = DOMAIN.name
config_file_version = 2
services = nss, pam
debug_level = 5
[domain/DOMAIN.name]
ad_domain = DOMAIN.name
krb5_realm = DOMAIN.NAME
realmd_tags = manages-system joined-with-adcli
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/domain/%u
#access_provider = ad
#ad_access_filter = (memberOf=cn=Linux Login Allowed,ou=Domain Groups,dc=Domain,dc=local
access_provider = simple
simple_allow_users = administrator
simple_allow_groups = Domain Admins, Linux Login Allowed
enumerate = true
对于 sssd 权限:
sudo chown root:root /etc/sssd/sssd.conf
sudo chmod 600 /etc/sssd/sssd.conf
加入域:
sudo kinit [insert domain admin username here]
sudo klist
sudo net ads join –k
我们一直使用 PAM 来挂载 Windows 文件夹:
<debug enable="0" />
<!-- Volume definitions -->
<volume sgrp="Linux Login Allowed" fstype="cifs" server="fileshare" path="files/userdata/%(USER)/Documents/linux_home" mountpoint="/home/DOMAIN/%(USER)" options="dir_mode=0700,sec=ntlm"/>
<!-- pam_mount parameters: General tunables -->
<logout wait="5000" hup="1" term="2" kill="3" />
在 /etc/fstab 中:
//fileshare/folder /folder cifs credentials=/etc/smbmounts/.folder,gid=1003,iocharset=utf8,file_mode=0770,dir_mode=0770,sec=ntlm 0 0
为了全面披露,我将我能想到的与此设置相关的所有内容都包括在内,但要明确的是,问题不在于 PAM 主文件夹安装。问题在于 fstab - //fileshare/folder 是具有 NTFS 权限的共享文件夹,这让我很烦恼。
我认为如果我不大幅颠覆现有的文件夹权限设置的话会更好。
理想情况下,我想更改 fstab 以从初始 Samba/SSSD/Kerberos 设置中查找凭据以进行 AD 身份验证和登录,而不是从包含共享用户名/密码的 smbmounts 文件中查找凭据。如果可能的话,可以进行单点登录。可以这么简单吗?如果可以,需要进行哪些更改?
我很感激任何帮助,因为我对 Linux 总体来说还是比较陌生。
如果需要添加/删除更多信息以使该主题更加简洁,请告诉我。
答案1
谢谢大家的帮助!我在这个链接中找到了答案,这是最佳答案帖子:https://community.spiceworks.com/topic/484483-mounting-windows-shares-on-lubuntu
PBIS 不需要加入域或获取身份验证,即使没有这些它也能工作。