AWS的EC2为新用户添加私有密钥文件登录

问题

第三方厂商想要操作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的新用户使用私钥文件远程登录,后期我们还可以吊销这个私钥文件。

参考

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值