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协议文件系统。
目录
相关文章
|
11天前
|
存储 运维 监控
深入Linux基础:文件系统与进程管理详解
深入Linux基础:文件系统与进程管理详解
53 8
|
17天前
|
存储 Linux 文件存储
Linux文件系统
Linux文件系统 一切皆文件 在Linux中,“一切皆文件”的概念意味着系统中的所有资源,包括硬件设备、目录及进程等,均被视为文件。这种设计简化了操作和管理,具体包括: 普通文件:存储数据的常规文件。 目录文件:包含其他文件和子目录的文件。 进程文件:在/proc目录下代表系统中运行的进程。 设备文件:位于/dev目录,代表硬件设备。 网络字节流套接字文件:用于网络通信的数据流。 链接文件:指向另一个文件的符号链接或硬链接。 管道文件:用于进程间通信的文件。
46 7
|
1月前
|
Linux
linux开机挂载镜像
【10月更文挑战第1天】在 Linux 系统中,开机挂载镜像通常涉及几个关键步骤,包括创建挂载点、编辑配置文件以及重新加载配置
80 0
|
2月前
|
存储 Linux 索引
Linux 下最主流的文件系统格式——ext
【9月更文挑战第8天】硬盘被划分为若干相同大小的块(Block),默认大小为4K,便于灵活管理文件数据。文件数据分散存放于这些块中,提高了数据添加、删除和插入的便利性。
|
3月前
|
编解码 Linux 程序员
深度探索Linux操作系统 —— 构建根文件系统2
深度探索Linux操作系统 —— 构建根文件系统
45 12
|
3月前
|
存储 人工智能 数据管理
深入理解Linux操作系统之文件系统管理探索人工智能:从理论到实践的旅程
【8月更文挑战第30天】在探索Linux的无限可能时,我们不可避免地会遇到文件系统管理这一核心话题。本文将深入浅出地介绍Linux文件系统的基础知识、操作命令及高级技巧,帮助你更有效地管理和维护你的系统。从基础概念到实践应用,我们将一步步揭开Linux文件系统的神秘面纱。
|
3月前
|
Ubuntu Linux
内核实验(四):Qemu调试Linux内核,实现NFS挂载
本文介绍了在Qemu虚拟机中配置NFS挂载的过程,包括服务端的NFS服务器安装、配置和启动,客户端的DHCP脚本添加和开机脚本修改,以及在Qemu中挂载NFS、测试连通性和解决挂载失败的方法。
207 0
内核实验(四):Qemu调试Linux内核,实现NFS挂载
|
2月前
|
存储 缓存 Linux
Linux文件系统的功能规划
【9月更文挑战第12天】本文通过类比图书馆,形象地解释了文件系统的组织形式和管理方法。首先,文件系统需按块存储文件,并设有索引区方便查找。其次,热点文件应有缓存层提高效率,文件需分类存储以便管理。最后,Linux内核需记录文件使用情况,通过文件描述符区分不同文件,确保文件操作准确无误。
|
10天前
|
监控 Linux
如何检查 Linux 内存使用量是否耗尽?这 5 个命令堪称绝了!
本文介绍了在Linux系统中检查内存使用情况的5个常用命令:`free`、`top`、`vmstat`、`pidstat` 和 `/proc/meminfo` 文件,帮助用户准确监控内存状态,确保系统稳定运行。
92 6
|
11天前
|
Linux
在 Linux 系统中,“cd”命令用于切换当前工作目录
在 Linux 系统中,“cd”命令用于切换当前工作目录。本文详细介绍了“cd”命令的基本用法和常见技巧,包括使用“.”、“..”、“~”、绝对路径和相对路径,以及快速切换到上一次工作目录等。此外,还探讨了高级技巧,如使用通配符、结合其他命令、在脚本中使用,以及实际应用案例,帮助读者提高工作效率。
47 3
下一篇
无影云桌面