MacOS客户端通过阿里云VPN连接阿里云NAS SMB文件系统

本文涉及的产品
对象存储 OSS,20GB 3个月
日志服务 SLS,月写入数据量 50GB 1个月
文件存储 NAS,50GB 3个月
简介: SMB远程文件传输协议在远程文件系统领域具有相当的统治地位。主流客户端厂家,包括微软、苹果以及Linux生态圈都支持SMB协议,并且苹果的MacOS已经将SMB作为其默认的远程文件协议。作为国内云厂商的龙头企业,阿里云NAS SMB文件系统也可以支持MacOS客户端。

SMB远程文件传输协议在远程文件系统领域具有相当的统治地位。主流客户端厂家,包括微软、苹果以及Linux生态圈都支持SMB协议,并且苹果的MacOS已经将SMB作为其默认的远程文件协议。
作为国内云厂商的龙头企业,阿里云NAS SMB文件系统也可以支持MacOS客户端。接下来就给大家介绍如何用MacOS客户端连接阿里云NAS SMB文件系统。
本篇文章分为两个部分:MacOS客户端连接专有网络内的NAS SMB挂载点;MacOS客户端通过Kerberos连接AD域内的NAS SMB挂载点。

1. MacOS客户端连接专有网络(VPC)内的NAS SMB挂载点


1.1. 建立VPC和NAS SMB挂载点


参考 文件存储 > 用户指南 > 管理挂载点创建VPC和NAS SMB文件系统挂载点。
专有网络下的挂载点

1.2. MacOS客户端通过SSL-VPN接入VPC


参考 Mac客户端远程连接通过SSL-VPN接入VPC。

1.2.1. 创建VPN网关

1.2.2. 创建SSL服务端


需要注意本端网段是VPC的网段,比如如果VPC的网段是172.31.0.0/16,本端网段就填172.31.0.0/16。客户端网段与本端网段不重合,比如192.168.1.0/24。
VPC配置

SSL服务端

1.2.3. 创建并下载SSL客户端证书


按照 Mac客户端远程连接就可以配置成功。

1.2.4. 连接测试


OpenVPN连接后,ping VPC内的挂载点可以成功。
Ping VPC内NAS SMB挂载点

1.3. 挂载NAS SMB


可以使用MacOS的Finder->Go->Connect to Server挂载,选择Guest身份。参考 Apple Mac OS X connect to SMB share
注意使用Finder时myshare挂载完成之后可能显示myshare的内容为空,是因为MacOS会去询问所有文件的信息,延迟较大或者文件较多的时候需要等一段时间才能看到内容,请耐心等待。

也可以使用mount_smbfs命令挂载,nas-mount-point.nas.aliyuncs.com为1.1.中创造的挂载点

mount_smbfs '//guest@nas-mount-point.nas.aliyuncs.com/myshare' /Volumes/myshare/

挂载之后就可以正常使用挂载卷。

2. MacOS通过Kerberos挂载与使用VPC中的NAS SMB卷


在默认情况下NAS SMB卷只支持NTLM鉴权协议,无论以哪个身份挂载,鉴权后得到的身份都是Everyone。默认Everyone拥有所有权限。
最近NAS SMB开始支持AD功能,用户可以在VPC中建立一个Windows操作系统的AD服务器,然后给NAS SMB卷设置一个服务账号,并上传服务账号的Keytab文件到NAS控制台。之后用户就可以在MacOS客户端上使用Kerberos协议鉴权,鉴权时使用的AD域身份就是用户挂载后的身份。挂载后ACL将启用,用户对于某个文件文件夹拥有何种权限取决于文件文件夹上的ACL权限表。
官方文档: 使用AD域实现用户身份认证和文件级别的权限访问控制

2.1. 将NAS SMB卷接入AD域


参考 将阿里云SMB协议文件系统挂载点接入AD域,进行以下几个步骤:

2.1.1. 安装ADDS和DNS,建立AD服务器


请参考 安装并启用Active Directory域服务与DNS服务完成该步骤。

2.1.2. 添加服务账号

dsadd user CN=alinas,DC=MYDOMAIN,DC=com -samid alinas -display "Alibaba Cloud NAS Service Account" -pwd tHePaSsWoRd123 -pwdneverexpires yes

2.1.4. 注册NAS文件系统挂载点

setspn -S cifs/nas-mount-point.nas.aliyuncs.com alinas

setspn成功之后显示如下:
setspn以后

另外这一步成功之后在AD服务器上尝试挂载AD域的卷挂载点,会发现鉴权已经开始使用Kerberos。

net use z: \\nas-mount-point.nas.aliyuncs.com\myshare

Kerberos Wireshark截图

2.1.5. 生成Keytab服务账号秘钥文件

ktpass -princ cifs/nas-mount-point.nas.aliyuncs.com@MYDOMAIN.com -ptype KRB5_NT_PRINCIPAL -crypto All -out c:\nas-mount-point.keytab -pass tHePaSsWoRd123

2.1.6. 将Keytab上传到NAS控制台


NAS SMB ACL控制台已经在亚太南部1(孟买)和中国香港(香港)区域上线,其他区域也在陆续上线中。如果您需要的区域没有上线,可以发工单联系我们上传Keytab。其他具体内容请参考官方文档: 使用AD域实现用户身份认证和文件级别的权限访问控制

2.2. 将NAS AD SMB卷配置为MacOS可以访问


2.2.1. 添加VPN SSL网段到安全组


如果不添加足够的权限,MacOS的DNS和SMB请求在AD域中走不通。需要在ECS的VPC安全组中添加下面的权限。
VPC安全组设置
需要添加:
  1. DNS端口:UDP 53
  2. Kerberos端口:TCP 88
  3. LDAP端口:TCP 389
  4. LDAP Global Catalog端口:TCP 3268

2.2.2. 将MacOS的DNS设置为AD服务器


ipconfig命令在AD服务器上找到内网IP。然后将它设置成MacOS的DNS。
设置MacOS的DNS

ping测试可以连通AD域名。
ping测试可以连通AD域名

2.2.3. MacOS用Kerberos鉴权以及AD域用户身份挂载NAS SMB


用kinit user@MYDOMAIN.COM得到AD身份,klist验证身份已经得到,kinit告诉mount_smbfs要启动身份,最后用mount_smbfs命令挂载。
kinit user@MYDOMAIN.COM
klist
kinit
mount_smbfs //administrator@nas-mount-point.nas.aliyuncs.com/myshare /Volumes/myshare

如果出现错误mount_smbfs: server rejected the connection: Authentication error,说明mount_smbfs走到了NTLM,请运行kinit启用身份再mount_smbfs。
一个成功的例子:
mount_smbfs成功

成功后klist会显示两个principals:
klist有两个principals

注意MacOS客户端不会显示SMB ACL,但是AD域用户身份是起作用的。用户对任何文件进行操作时,NAS SMB卷会验证ACL,然后允许或者禁止该操作。如需设置ACL可以在AD服务器上挂载该卷进行设置。

参考文档

  1. 文件存储 > 用户指南 > 管理挂载点
  2. Mac客户端远程连接
  3. Apple Mac OS X connect to SMB share
  4. 使用AD域实现用户身份认证和文件级别的权限访问控制
  5. 将阿里云SMB协议文件系统挂载点接入AD域
  6. 安装并启用Active Directory域服务与DNS服务
  7. nsmb.conf说明文档
目录
相关文章
|
1月前
|
SQL 关系型数据库 MySQL
2024年阿里云数据库创建_数据库账号密码和连接教程
阿里云数据库怎么使用?阿里云百科整理阿里云数据库从购买到使用全流程,阿里云支持MySQL、SQL Server、PostgreSQL和MariaDB等数据库引擎,阿里云数据库具有高可用、高容灾特性,阿里云提供数据库备份、恢复、迁移全套解决方案。详细阿里云数据库购买和使用流程方法如下
|
1月前
|
SQL 关系型数据库 MySQL
阿里云MySQL数据库价格、购买、创建账号密码和连接数据库教程
阿里云数据库使用指南:购买MySQL、SQL Server等RDS实例,选择配置和地区,完成支付。创建数据库和账号,设置权限。通过DMS登录数据库,使用账号密码访问。同地域VPC内的ECS需将IP加入白名单以实现内网连接。参考链接提供详细步骤。
498 3
|
28天前
|
存储 运维 5G
基于阿里云数据库 SelectDB 内核 Apache Doris 的实时/离线一体化架构,赋能中国联通 5G 全连接工厂解决方案
数据是 5G 全连接工厂的核心要素,为支持全方位的数据收集、存储、分析等工作的高效进行,联通 5G 全连接工厂从典型的 Lambda 架构演进为 All in [Apache Doris](https://c.d4t.cn/vwDf8R) 的实时/离线一体化架构,并凭借 Doris 联邦查询能力打造统一查询网关,数据处理及查询链路大幅简化,为联通 5G 全连接工厂带来数据时效性、查询响应、存储成本、开发效率全方位的提升。
基于阿里云数据库 SelectDB 内核 Apache Doris 的实时/离线一体化架构,赋能中国联通 5G 全连接工厂解决方案
|
23天前
|
弹性计算 Ubuntu Linux
为什么要学习去使用云服务器,外网 IP能干什么,MAC使用Termius连接阿里云服务器。保姆级教学
为什么要学习去使用云服务器,外网 IP能干什么,MAC使用Termius连接阿里云服务器。保姆级教学
|
1月前
|
消息中间件 弹性计算 物联网
【阿里云弹性计算】阿里云ECS在IoT领域的应用:支撑大规模设备连接与数据处理
【5月更文挑战第26天】阿里云ECS是弹性计算服务,支持IoT设备的连接与数据处理。通过MQTT协议实现设备快速接入,配合消息队列处理异构实时数据。ECS可用于部署数据处理工具、应用服务,如智能家居控制系统,通过弹性伸缩适应负载变化。结合阿里云其他服务,ECS为IoT提供完整解决方案,助力企业数字化转型。
45 0
|
1月前
|
弹性计算 关系型数据库 MySQL
阿里云数据库服务器价格表,数据库创建、连接和使用教程
阿里云数据库使用流程包括购买和管理。选择所需数据库类型如MySQL,完成实名认证后购买,配置CPU、内存和存储。确保数据库地域与ECS相同以允许内网连接。创建数据库和账号,设置权限。通过DMS登录数据库,使用账号密码连接。同一VPC内的ECS需添加至白名单以进行内网通信。参考官方文档进行详细操作。
178 3
|
1月前
|
SQL 关系型数据库 MySQL
阿里云数据库使用教程、购买、价格、连接数据库全流程
阿里云数据库使用涉及购买、创建及登录步骤。支持MySQL、SQL Server等引擎。购买时选择所需配置、地域和可用区。创建数据库和账号后,通过DMS登录。在同一地域内,ECS需将IP加入RDS白名单以实现内网连接。详细流程见阿里云官方文档。
|
25天前
|
Java Shell 开发工具
03. 【Java教程】在 MacOS 上安装 Java
03. 【Java教程】在 MacOS 上安装 Java
14 1
|
11天前
|
JavaScript iOS开发 开发者
pnpm的安装与配置(Windows/macOS)
pnpm的安装与配置(Windows/macOS)
46 0
|
11天前
|
资源调度 JavaScript iOS开发
yarn的安装与配置(Windows/macOS)
yarn的安装与配置(Windows/macOS)
69 0

相关产品

  • 文件存储NAS