Linux客户端以AD域用户身份挂载使用阿里云SMB协议文件系统

本文涉及的产品
对象存储 OSS,20GB 3个月
对象存储 OSS,恶意文件检测 1000次 1年
对象存储 OSS,内容安全 1000次 1年
简介: 本文介绍了如何在Linux客户端以AD域用户身份挂载使用阿里云SMB协议文件系统。

**本文内容可能不是最新的,请查看官方文档:
[Linux客户端连接AD服务器并挂载SMB文件系统
](https://help.aliyun.com/document_detail/311431.html#section-iq7-sk2-p8h
)
**
阿里云SMB协议文件存储服务可以支持基于AD域系统的用户身份认证及访问权限控制了,使线下传统的基于微软的Active Directory域的文件系统及应用可以无缝地迁移到阿里云上来,进一步降低SMB协议的文件系统使用和运维成本。阿里云SMB协议文件存储服务可以依赖用户部署在线下或者阿里云上的AD域控制器,通过Kerberos网络身份认证协议来进行AD域用户身份的认证,然后基于认证的域身份来进行目录和文件级别的访问权限控制。

本文介绍了如何在Linux客户端以AD域用户身份挂载使用阿里云SMB协议文件系统。如果需要在windows以AD域用户身份挂载使用阿里云SMB协议文件系统,请参考从Windows以AD域用户身份挂载使用阿里云SMB协议文件系统

需要注意的是,阿里云的SMB协议文件存储服务支持Kerberos认证协议和windows Active Directory对接,目前暂不支持NTLM的认证协议。因此,在以AD域用户身份挂载阿里云SMB文件系统时,需要指明使用Kerberos认证协议。否则,Linux系统会以默认NTLM的身份登录,在SMB文件系统支持guest身份登录的情况下,实际登录的是guest账号。

你可以在Linux系统加入域或者不加入域的情况下,都可以以域用户的身份挂载文件系统。下面以Linux系统不加入域的情况为例,描述以域用户身份挂载阿里云SMB协议文件系统的流程。

在Linux系统不加入域的情况下以域用户身份挂载阿里云SMB文件系统

  1. 确认你已经安装必须的包。要以域用户身份挂载阿里云SMB协议文件系统,需要cifs-utils和krb5-workstation两个包。

    yum install cifs-utils krb5-workstation
  2. 添加域控制器AD的kdc到/etc/hosts

    xxx.xxx.xxx.xxx    <kdc_domain_name>
  3. 修改/etc/krb5.conf, 添加域相关的kdc配置信息。

    [libdefaults]
    default_realm = <domain_name>
    [realms]
    # EXAMPLE.COM = {
    #  kdc = kerberos.example.com
    #  admin_server = kerberos.example.com
    # }
    <domain_name> = {
      kdc = <kdc_domain_name>
    }
  4. 得到访问阿里云SMB协议文件系统挂载点的票据信息(如果是比较新的Linux版本,可以跳过这一步。)。

    # kinit -S cifs/<smb_filesystem_mount_point> domain_user_name@<domain_name> -V
    Using default cache: persistent:0:0
    Using principal: domain_user_name@<domain_name>
    Password for domain_user_name@<domain_name>:
    Authenticated to Kerberos v5
  5. 查询票据信息:klist

    # klist
    Ticket cache: KEYRING:persistent:0:0
    Default principal: <domain_user_name>@<domain_name>
    Valid starting       Expires              Service principal
    07/31/2019 05:57:36  07/31/2019 15:57:36  cifs/<smb_filesystem_mount_point>@<domain_name>
       renew until 08/07/2019 05:57:32
  6. 用域用户身份挂载阿里云文件系统。注意,需要指明安全认证协议为krb5。否则用户会以guest账号登录。如果是比较旧的版本,需要进行第5步)

      mount -t cifs //<smb_filesystem_mount_point>/myshare /mnt -o vers=2.1,sec=krb5
  7. 挂载文件系统后,挂载目录中的文件和目录显示的用户名和组是Linux本地执行挂载命令的账号,权限为755。但是,如果访问挂载时所用的域用户没有权限的目录,则会访问失败。如下所示,testnopermission目录是其他域用户创建的目录,虽然ls -l显示有访问权限,但是其访问被SMB文件系统的ACL所限制。

1564525786097_fc89847f_2893_479e_b834_f10260e2470c

  1. 我们建议用windows客户端来配置阿里云SMB文件系统的acl。当然,你也可以用getcifsacl和setcifsacl命令来取得或者配置阿里云SMB文件系统中的文件或目录的acl。

1564530064726_1746b6e0_47ef_4f83_9a8a_e7a0d2f982e0

更多的关于SMB文件系统的ACL配置信息以及ACL规则,参考《阿里云SMB协议文件系统ACL权限控制使用指南》。

阿里云SMB协议文件存储服务基于AD域系统的用户身份认证及访问控制的相关文章

如果要使用阿里云SMB协议文件存储服务的基于AD域系统的用户身份认证及访问权限控制功能,请在阿里云文件系统控制台打开配置该功能。具体请参考将阿里云SMB协议文件系统挂载点接入AD域

下面是使用基于AD域系统的用户身份认证及访问权限控制可能需要的相关知识点:

  1. 阿里云SMB协议文件存储服务支持基于AD域的用户身份认证及权限访问控制介绍,总体介绍阿里云SMB协议文件存储服务支持基于AD域的用户身份认证及权限访问控制的设计实现。
  2. Kerberos网络身份认证协议介绍及SMB文件系统对其的支持,介绍Kerberos网络身份认证协议以及与SMB协议问系统的交互。
  3. 安装并启用Active Directory域服务与DNS服务,介绍如何在VPC中安装并启用AD域服务和DNS服务。
  4. 将Windows系统机器加入AD域,介绍如何将windows机器加入AD域。
  5. 将阿里云SMB协议文件系统挂载点接入AD域,介绍如何在AD域服务器以及阿里云SMB协议文件系统中进行必要的配置来支持基于AD域的用户身份认证及权限访问控制。
  6. 从Windows以AD域用户身份挂载使用阿里云SMB协议文件系统,介绍如何从windows客户端以域用户身份挂载使用阿里云SMB协议文件系统。
  7. Linux客户端以AD域用户身份挂载使用阿里云SMB协议文件系统,介绍如何从Linux客户端以域用户身份挂载使用阿里云SMB协议文件系统。
  8. 加入AD域的Linux客户端以AD域身份自动挂载阿里云SMB协议文件系统,介绍如何把Linux客户端加入AD域,如何挂载以及自动挂载阿里云SMB协议文件系统。
  9. 阿里云SMB协议文件系统ACL权限控制使用指南,介绍如何正确地配置阿里云SMB协议文件系统的ACL以及相应的规则描述。
  10. 阿里云SMB协议文件系统AD身份认证和ACL权限控制使用场景 - Home Directory / User Profile,介绍使用权限控制的域用户Home Directory以及User Profile两个场景下的相关配置及实现。
  11. MacOS客户端连接阿里云NAS SMB文件系统,介绍如何从MacOS客户端挂载使用阿里云SMB协议文件系统。
目录
相关文章
|
13天前
|
存储 Linux 数据处理
探索Linux操作系统的内核与文件系统
本文深入探讨了Linux操作系统的核心组件,包括其独特的内核结构和灵活的文件系统。文章首先概述了Linux内核的主要功能和架构,接着详细分析了文件系统的工作原理以及它如何支持数据存储和检索。通过比较不同的文件系统类型,本文旨在为读者提供一个关于如何根据特定需求选择合适文件系统的参考框架。
|
1月前
|
存储 缓存 Linux
【Linux】文件系统
在打开文件之前,我们需要找到文件 -> 就要从磁盘中找到对应文件 -> 通过文件路径与文件名
28 4
|
15天前
|
存储 缓存 Linux
【Linux】文件系统
【Linux】文件系统
|
15天前
|
Linux
45. 【Linux教程】文件系统检查
45. 【Linux教程】文件系统检查
21 0
|
15天前
|
Linux
44. 【Linux教程】创建文件系统
44. 【Linux教程】创建文件系统
18 0
|
15天前
|
存储 Oracle 关系型数据库
42. 【Linux教程】写时复制文件系统
42. 【Linux教程】写时复制文件系统
9 0
|
15天前
|
存储 算法 Unix
41. 【Linux教程】日志文件系统
41. 【Linux教程】日志文件系统
14 0
|
15天前
|
存储 Unix Linux
40. 【Linux教程】文件系统介绍
40. 【Linux教程】文件系统介绍
14 0
|
19天前
|
存储 数据管理 Unix
探索 Linux 文件系统的层次结构
【5月更文挑战第30天】 本文深入剖析了Linux操作系统中文件系统的结构及其运作机制。通过对文件系统层次标准的解读和实际案例的分析,揭示了Linux如何有效地组织和管理文件。文章不仅讨论了根文件系统的重要性、目录结构的设计理念,还探讨了如何通过文件系统层次来提升数据管理和系统性能。
|
19天前
|
运维 安全 Linux
深入理解 Linux 文件系统的权限管理
【5月更文挑战第30天】 在 Linux 操作系统中,文件系统权限管理是维护系统安全与数据完整性的基石。本文旨在深入探讨 Linux 权限模型的核心概念、实现机制及其对系统安全性的影响。通过对用户身份、文件权限和访问控制列表(ACL)等关键元素的剖析,揭示权限管理在实际操作中的应用细节。文章还将讨论如何有效配置权限来优化系统性能和提升安全性,以及解决常见的权限问题的策略。