开发者社区> 问答> 正文

怎样使用实例自定义脚本自定义实例的管理员账号

实例自定义脚本是阿里云 ECS 为用户提供的一种自定义实例启动行为的脚本,详细信息请参考阿里云线上帮助文档: 实例自定义数据
本文档以 Linux 实例为例,说明在创建实例时,您应该怎样使用实例自定义脚本自定义实例的管理员账号。您也可以使用脚本自定义 Windows 实例的管理员账号。

场景


购买 ECS 实例时,如果您想达到如下效果,您就需要使用实例自定义脚本。

  • 不使用 ECS 实例默认自带的 root 用户作为管理员。您可以在实例自定义脚本中自定义具体的禁用方式和禁用程度。
  • 创建一个新的管理员账号,并自定义用户名。
  • 新创建的管理员账号在管理该实例的时候只使用 SSH 密钥对进行远程登录,不使用用户密码。
  • 该用户如果需要进行与管理员权限相关的操作,可在免密码的情况下使用 sudo 提权。


配置方法


您可以按以下步骤实现上述场景需求。

  1. 登录 阿里云 ECS 控制台,创建一个实例,配置如下:
    • 网络类型:VPC 网络
    • 实例规格:I/O 优化的实例
    • 镜像:公共镜像的 CentOS 7.2

  • 在创建页面的 [backcolor=transparent]自定义数据 输入框中输入如下内容:#!/bin/sh
    useradd test
    echo "test   ALL=(ALL)        NOPASSWD:ALL" | tee -a /etc/sudoers
    mkdir /home/test/.ssh
    touch /home/test/.ssh/authorized_keys
    echo "ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAhGqhEh/rGbIMCGItFVtYpsXPQrCaunGJKZVIWtINrGZwusLc290qDZ93KCeb8o6X1Iby1Wm+psZY8THE+/BsXq0M0HzfkQZD2vXuhRb4xi1z98JHskX+0jnbjqYGY+Brgai9BvKDXTTSyJtCYUnEKxvcK+d1ZwxbNuk2QZ0ryHESDbSaczlNFgFQEDxhCrvko+zWLjTVnomVUDhdMP2g6fZ0tgFVwkJFV0bE7oob3NOVcrx2TyhfcAjA4M2/Ry7U2MFADDC+EVkpoVDm0SOT/hYJgaVM1xMDlSeE7kzX7yZbJLR1XAWV1xzZkNclY5w1kPnW8qMYuSwhpXzt4gsF0w== rsa-key-20170217" | tee -a /home/test/.ssh/authorized_keys


    [backcolor=transparent]注意:
    • 第一行必须是 #!/bin/sh,前面不能带空格。
    • 全文不要有多余的空格和回车。
    • 最后一行的密钥为您的公钥,您可以自定义。
    • 如果需要做其他的配置,可以直接在脚本中添加。
    • 示例脚本仅限于 CentOS 7.2 镜像,其他镜像请根据操作系统类型进行自定义修改。

    在 [backcolor=transparent]安全设置 中选择 [backcolor=transparent]创建后设置。
    完成上述配置后,再单击 [backcolor=transparent]立即购买,并按页面指示开通实例。
    实例购买完成后,您可以使用自定义的 [backcolor=transparent]test 用户通过 SSH 私钥登录到实例中,同时也可以使用 sudo 提权,并执行各种需要管理员权限的操作,如图中示例所示。

  • 展开
    收起
    boxti 2017-10-19 11:16:15 2060 0
    0 条回答
    写回答
    取消 提交回答
    问答排行榜
    最热
    最新

    相关电子书

    更多
    《用管控策略设定多账号组织全局访问边界》 立即下载
    低代码开发师(初级)实战教程 立即下载
    阿里巴巴DevOps 最佳实践手册 立即下载