演练:使用 IAM 授权为 NFS 客户端启用 Root Squash - Amazon Elastic File System
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

演练:使用 IAM 授权为 NFS 客户端启用 Root Squash

在本演练中,您将 Amazon EFS 配置为阻止所有 AWS 委托人(单个管理工作站除外)对 Amazon EFS 文件系统的根访问权限。可以通过为网络文件系统 (NFS) 客户端配置 AWS Identity and Access Management (IAM) 授权来执行此操作。有关 EFS 中的 NFS 客户端的 IAM 授权的更多信息,请参阅 使用 IAM 控制文件系统数据访问

为此,需要配置两个 IAM 权限策略,如下所示:

  • 创建 EFS 文件系统策略,该策略明确允许对文件系统进行读取和写入访问,并隐式拒绝根访问。

  • 使用 Amazon EC2 实例配置文件将 IAM 身份分配给需要对文件系统进行根访问的 Amazon EC2 管理工作站。有关 Amazon EC2 实例配置文件的更多信息,请参阅 用户指南 中的使用实例配置文件AWS Identity and Access Management。

  • AmazonElasticFileSystemClientFullAccess AWS 托管策略分配给管理工作站的 IAM 角色。有关 EFS 的 AWS 托管策略的更多信息,请参阅适用于 Amazon EFS 的 AWS 托管(预定义)策略

要使用 IAM 授权为 NFS 客户端启用 Root Squash,请使用以下过程。

阻止对文件系统的根访问

  1. 通过 https://console.amazonaws.cn/efs/ 打开 Amazon Elastic File System 控制台。

  2. 选择 Filesystems (文件系统)

  3. File systems (文件系统) 页面上,选择要启用 Root Squash 的文件系统。

  4. 在文件系统详细信息页面上,选择 File system policy (文件系统策略),然后选择 Edit (编辑)。此时将显示 File system policy (文件系统策略) 页面。

    
          用于编辑和保存文件系统策略的文件系统策略页面。
  5. Policy options 下选择 Prevent root access by default*。策略 JSON 对象显示在 Policy editor (策略编辑器) 中。

  6. 选择 Save (保存) 以保存文件系统策略。

非匿名客户端可以通过基于身份的策略获得对文件系统的根访问权限。将 AmazonElasticFileSystemClientFullAccess 托管策略附加到工作站的角色时,IAM会根据工作站的身份策略授予对工作站的根访问权限。

从管理工作站启用根访问权限

  1. 通过以下网址打开 IAM 控制台:https://console.amazonaws.cn/iam/

  2. 为名为 EFS-client-root-access 的 Amazon EC2 创建角色。IAM 创建与您创建的 EC2 角色相名的实例配置文件。

  3. 将 AWS 托管策略 AmazonElasticFileSystemClientFullAccess 分配给您创建的 EC2 角色。本策略的内容如下所示。

    { “Version”: “2012-10-17”, “Statement”: [ { “Resource”: “*”, “Effect”: “Allow”, “Action”: “elasticfilesystem:Client*” } ], "Condition": {} }
  4. 将实例配置文件附加到您用作管理工作站的 EC2 实例,如下所述。有关更多信息,请参阅适用于 Linux 实例的 Amazon EC2 用户指南 中的将 IAM 角色附加到实例

    1. 打开 Amazon EC2 控制台 https://console.amazonaws.cn/ec2/

    2. 在导航窗格中,选择 Instances

    3. 选择实例。对于 Actions (操作),选择 Instance Settings (实例设置),然后选择 Attach/Replace IAM role (附加/替换 IAM 角色)

    4. 选择您在第一步中创建的 IAM 角色 EFS-client-root-access,然后选择 Apply (应用)

  5. 在管理工作站上安装 EFS 挂载帮助程序。有关 EFS 挂载帮助程序和 amazon-efs-utils 程序包的更多信息,请参阅使用 amazon-efs-utils 工具

  6. 通过使用带 iam 挂载选项的以下命令,在管理工作站上挂载 EFS 文件系统。

    $ sudo mount -t efs -o tls,iam file-system-id:/ efs-mount-point

    您可以将 Amazon EC2 实例配置为通过 IAM 授权自动挂载文件系统。有关使用 IAM 授权挂载 EFS 文件系统的更多信息,请参阅使用 IAM 授权挂载