一般情况下,NAS文件系统需要在同账号、同地域、同VPC下的计算节点中挂载访问。如果您想在macOS客户端中挂载NAS,则必须连通NAS所在地域VPC的网络。本文档介绍macOS客户端如何通过VPN挂载SMB协议文件系统以及如何使用macOS客户端通过Kerberos协议访问SMB协议文件系统。
前提条件
macOS客户端挂载SMB协议文件系统
通过VPN网关建立VPC到macOS客户端的远程连接。具体操作,请参见Mac客户端远程连接。
验证macOS客户端和SMB协议文件系统挂载点的连通性。
验证网络连通性
VPN网关连接后,通过ping命令ping VPC内SMB协议文件系统挂载点,验证通信是否正常。
说明如果挂载点无法ping通,则需要通过一台与SMB协议文件系统在同一VPC下的ECS云服务器ping挂载点得到挂载点IP,使用挂载点IP在macOS上进行挂载操作。
验证服务端口连通性
telnet [SMB协议文件系统挂载点] 445
挂载SMB协议文件系统。
macOS客户端通过Kerberos协议访问SMB协议文件系统
SMB协议文件系统默认只支持NTLM鉴权协议,无论macOS客户端以什么身份挂载,鉴权后得到的身份均为Everyone,默认拥有所有权限。而阿里云NAS SMB协议文件系统支持基于AD域的用户身份认证和文件系统级别的权限访问控制。您可以通过以下步骤控制不同用户访问SMB协议文件系统的权限。
搭建AD域。
建立SMB协议文件系统挂载点与AD域的连接。具体操作,请参见将SMB协议文件系统挂载点接入AD域。
添加VPN SSL网段到安全组。具体操作,请参见添加安全组规则。
请您在ECS实例的安全组中添加如下端口权限,确保macOS客户端的DNS请求和SMB请求在AD域中可执行。
DNS端口:UDP 53
Kerberos端口:TCP 88
LDAP端口:TCP 389
LDAP Global Catalog端口:TCP 3268
设置macOS客户端的DNS为AD域服务器。
通过ipconfig命令在AD域服务器上查询内网IP。
在macOS客户端桌面顶部的Finder栏,单击 。
在Network对话框,将macOS客户端的DNS设置为AD域服务器内网IP。
验证macOS客户端与AD域的连接。
使用ping命令连接AD域,如下图示例即为连接成功。
配置macOS客户端通过Kerberos协议挂载SMB协议文件系统。
执行kinit,验证AD域身份安全性。示例如下:
kinit user@MYDOMAIN.COM
执行
klist
命令,查看AD域身份。示例如下:klist
执行
kinit
命令,启动AD域身份。示例如下:kinit
执行命令,挂载SMB协议文件系统。示例如下:
mount_smbfs //administrator@nas-mount-point.nas.aliyuncs.com/myshare /Volumes/myshare
说明若出现如
mount_smbfs: server rejected the connection: Authentication error
的报错信息,请执行kinit命令,验证AD域身份后再次执行挂载。挂载成功会返回如下信息:挂载成功后执行klist命令,会显示两个服务主体,如下图所示:
说明macOS客户端不会显示SMB ACL,但实际AD域身份已生效。您在对任何文件进行操作时,SMB协议文件系统都会先验证ACL,然后允许或禁止该操作。如需设置ACL,请您在AD域服务器挂载该SMB协议文件系统时进行配置。