布莱恩F爱
向一位来自Portlandyobet英雄联盟的谷歌开发专家学习Angular、Web技术和Node.js。
广告 ·ultimatecourses.com
用终极课程学习Angular的正确方法

添加新的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实例的技巧文章由亚马逊提供。

布莱恩F爱

嗨,我是布莱恩。我对TypeScript, Angular和Node.js感兴趣。我和我最好的朋友邦妮结婚了,我住在波特兰,我经常滑雪。