AWS的EC2为新用户添加私有密钥文件登录
问题第三方厂商想要操作EC2实现,所以需要分配一个账号给第三方厂商进行远程登录。思路在AWS上面创建新的密钥对在EC2的Linux服务器上面创建用户和相关目录将公钥字符串设置到EC2的Linux服务器这样,新建的用户就可以使用私钥文件进行远程登录。解决创建密钥对https://docs.aws.amazon.com/zh_cn/AWSEC2/latest/UserGuide/ec2-key-pai
·
问题
第三方厂商想要操作EC2实现,所以需要分配一个账号给第三方厂商进行远程登录。
思路
- 在AWS上面创建新的密钥对
- 在EC2的Linux服务器上面创建用户和相关目录
- 将公钥字符串设置到EC2的Linux服务器
这样,新建的用户就可以使用私钥文件进行远程登录。
解决
创建密钥对
https://docs.aws.amazon.com/zh_cn/AWSEC2/latest/UserGuide/ec2-key-pairs.html#prepare-key-pair
参考aws文档即可,主要就是创建新的密钥对,并获得私钥文件。
创建新用户
登录到EC2服务器上面:
# 创建新用户
sudo adduser new_user
# 切换到新用户
sudo su - new_user
# 创建.ssh目录
mkdir .ssh
# 授权.ssh目录
chmod 700 .ssh
# 准备ssh认证文件
touch .ssh/authorized_keys
# 授权ssh认证文件
chmod 600 .ssh/authorized_keys
获得公钥字符串
通过aws的私钥文件获得公钥字符串:
ssh-keygen -y -f /path_to_key_pair/my-key-pair.pem
可以参考AWS文档:
https://docs.aws.amazon.com/zh_cn/AWSEC2/latest/UserGuide/ec2-key-pairs.html#retrieving-the-public-key
复制这个公钥字符串。
设置公钥
回到EC2的服务器上面:
# 切换到新用户
sudo su - new_user
cat >> .ssh/authorized_keys
# 将公有密钥粘贴到 .ssh/authorized_keys 文件中,然后按 Enter。
# 按住 Ctrl+d 退出 cat 并返回到命令行会话提示符。
配置sudo权限
# 为用户new_user设置密码
sudo passwd new_user
# 使用 usermod 命令将用户添加到 wheel 组
sudo usermod -aG wheel new_user
测试远程登录
# 私钥文件远程登录
ssh -i /path_to_key_pair/my-key-pair.pem new_user@public_dns_name_of_EC2_Linux_instance
# 查看当前用户信息
id
uid=1004(new_user) gid=1004(new_user) groups=1004(new_user)
这样就完成了EC2的新用户使用私钥文件远程登录,后期我们还可以吊销这个私钥文件。
参考
更多推荐
已为社区贡献2条内容
所有评论(0)