1.
实例自动化配置框架
实例自动化配置框架是阿里云ECS为用户提供的一种自定义实例启动行为的架构,详细信息请参考阿里云线上帮助文档:https://help.aliyun.com/knowledge_detail/49121.html
本文档主要介绍怎么通过该框架在创建实例时让用户自己定义实例的管理员用户的方法。
2.
场景
用户想要在阿里云ECS购买时中达到如下的效果:
1)
不使用ECS默认自带的root用户作为管理员(具体用户可在脚本中进行禁止远程登录)
2)
创建一个新的管理员用户,用户名可由用户自定义
3)
新创建的管理员用户在管理该实例的时候只使用ssh密钥对进行远程登陆,不使用用户密码
4)
该用户如果需要进行与管理员权限相关的操作,可在免密码的情况下使用sudo进行提权
3.
配置方法
你可以通过下列各操作来达到上述场景的需求:
1. 登陆阿里云ECS控制台,创建VPC网络下的IO优化的CentOS 7.2实例
![c14fddae5592b218e337c6e72756e952a63ec50c]()
![512fad910710cb395da9cbf2743698e92d277448]()
![cbee64e0b9f30594db4b1e4860aa30cea144896e]()
2.在创建页面的“用户数据”输入框中输入如下内容:
![9c3b39f308779b76cc3d9c6a42e90ef08a48cc0d]()
#!/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
注:
1)第一行必须是#!/bin/sh,前面不能带空格
2)全文不要有多余的空格/回车
3)最后一行的密钥为你的公钥,你可以自己进行定义
4)如果需要做其他的配置,可以直接在脚本中添加
3.
“安全设置”中选择”创建后设置”,然后完成“实例购买“
![35057036ac64fdc0e62bd7c2893e0fa95726f2fa]()
4.实例购买完成后,您可以使用你自定义的“test“用户通过SSH 私钥登陆到实例中,同时也可以使用sudo提权进行需要各种需要管理员权限的操作:
![8023fd9551b7473caeed9621dbfd876bc8b4d486]()