添加新的sudo用户到EC2 Ubuntu
这篇文章对我来说更像是一个添加新用户到Ubuntu的参考指南。我刚刚在AWS上启动了一个新实例,希望创建一个具有sudo特权的新用户,这样我就可以使用这个用户,而不是默认的ubuntu根用户。我还希望SSH使用我的计算机的私钥,而不是使用AWS生成的私钥进行身份验证。
SSH到EC2实例
使用您的私钥(在创建密钥对时由AWS提供)连接到EC2实例。
美元ssh-我mykey。pem ubuntu@public dns.compute - 1. amazonaws.com
创建一个新用户
首先,添加用户。我将指定要创建的主目录,使用默认的shell (bash),并将新用户添加到admin组:
美元sudoadduser—home /home/blove—shell /bin/bash—ingroup admin *用户名*
创建新用户之后,让我们为用户提供使用sudo命令的能力。我将这样做,以便用户在使用sudo命令后不需要输入密码。让我们使用我们最喜欢的编辑器vi来完成这项工作。
美元sudo6/etc/sudoers
将以下代码行添加到文件中。的根用户后添加用户权限规范部分:
#用户权限规范用户名=(所有)NOPASSWD:所有
设置SSH
我在Mac上运行,想把我的公钥添加到authorized_keys为我刚刚创建的新用户创建的文件。这将允许我通过SSH连接,而不需要指定用户的密码。
如果你的Mac(位于)上没有SSH密钥~ / . ssh / id_rsa . pub),然后您将需要生成一个:
ssh - keygen美元- b1024-f用户-t dsa
现在,将文件复制到服务器的tmp目录:
美元scp-我mykey。pem ~ / . ssh / id_rsa。酒吧ubuntu@public dns.compute - 1. amazonaws.com: / tmp /
回到服务器上,将这个文件复制到我们刚刚创建的用户的主目录:
美元苏美元的用户名cd~ $mkdir. ssh美元猫/ tmp / id_rsa . pub>. ssh / authorized_keys美元修改文件权限600. ssh / * $修改文件权限700. ssh /
您现在应该能够连接到服务器使用您新创建的用户名,而不必指定密码:
美元sshusername@public dns.compute - 1. amazonaws.com
你可以通过禁用密码登录你的机器来进一步保护你的ubuntu实例。你可以阅读更多关于如何做到这一点保护EC2实例的技巧文章由亚马逊提供。