MENU

在 Linux 实例上管理用户账户

2018 年 10 月 15 日 • 阅读: 2689 • linux

每个 Linux 实例类型均使用默认 Linux 系统用户账户启动。对于 Amazon Linux 2 或 Amazon Linux,用户名称是 ec2-user。对于 Centos,用户名称是 centos。对于 Debian,用户名称是 admin 或 root。对于 Fedora,用户名称是 ec2-user 或 fedora。对于 RHEL,用户名称是 ec2-user 或 root。对于 SUSE,用户名称是 ec2-user 或 root。对于 Ubuntu,用户名称是 ubuntu。另外,如果 ec2-user 和 root 无法使用,请与您的 AMI 供应商核实。

注意

Linux 系统用户不应与 AWS Identity and Access Management (IAM) 用户混淆。有关更多信息,请参阅 IAM 用户指南 中的 IAM 用户和组。

对于许多应用程序来说,使用默认用户账户就足够了,不过您可选择添加用户账户,以便个人有自己的文件和工作区。为新用户创建用户账户比授予多个 (可能缺乏经验的) 用户对 ec2-user 的访问权限更安全,因为如果使用不当,该账户可能对系统造成严重破坏。

添加用户账户后,您必须设置允许用户登录的访问密钥。

先决条件

为用户创建密钥对或使用现有密钥对。有关更多信息,请参阅 使用 Amazon EC2 创建密钥对。要从现有密钥对检索公有密钥,请参阅在 Linux 上检索密钥对的公有密钥。

添加用户账户

使用以下 adduser 命令将 newuser 账户添加到系统 (/etc/passwd 文件中会有一个条目)。该命令还可以为账户创建一个组和一个主目录。

[ec2-user ~]$ sudo adduser newuser

[Ubuntu] 在将用户添加到 Ubuntu 系统时,请使用该命令包含 --disabled-password 选项,以避免向该账户添加密码。

[ubuntu ~]$ sudo adduser newuser --disabled-password

切换到新账户,以便使新建的文件具有正确的所有权。

[ec2-user ~]$ sudo su - newuser
[newuser ~]$

注意,如果提示从 ec2-user 变为 newuser,则表示您已将 Shell 会话切换到新账户。

在 newuser 主目录中创建一个 .ssh 目录,并将其权限更改为 700 (只有文件所有者能够读取、写入或打开该目录。)

[newuser ~]$ mkdir .ssh
[newuser ~]$ chmod 700 .ssh

重要

如果没有这些确切的文件权限,用户将无法登录。

在 .ssh 目录中创建名为 authorized_keys 的文件并将其权限更改为 600 (只有文件所有者能够读取或写入此文件)。

[newuser ~]$ touch .ssh/authorized_keys
[newuser ~]$ chmod 600 .ssh/authorized_keys

重要

如果没有这些确切的文件权限,用户将无法登录。

使用您常用的文本编辑器 (如 vim 或 nano) 打开 authorized_keys 文件。

[newuser ~]$ nano .ssh/authorized_keys

将您的密钥对的公有密钥粘贴到该文件并保存更改。例如:

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQClKsfkNkuSevGj3eYhCe53pcjqP3maAhDFcvBS7O6V
hz2ItxCih+PnDSUaw+WNQn/mZphTk/a/gU8jEzoOWbkM4yxyb/wB96xbiFveSFJuOp/d6RJhJOI0iBXr
lsLnBItntckiJ7FbtxJMXLvvwJryDUilBMTjYtwB+QhYXUMOzce5Pjz5/i8SeJtjnV3iAoG/cQk+0FzZ
qaeJAAHco+CY/5WrUBkrHmFJr6HcXkvJdWPkYQS3xqC0+FmUZofz221CBt5IMucxXPkX4rWi+z7wB3Rb
BQoQzd8v7yeb7OzlPnWOyN0qFU0XA246RA8QFYiCNYwI3f05p6KLxEXAMPLE

用户现在应该能够使用对应添加到 authorized_keys 文件的公有密钥的私有密钥登录实例上的 newuser 账户。

从系统中删除用户

如果不再需要某个用户账户,可以将其删除,使它不再可用。当您指定 -r 选项时,用户的主目录和邮件后台打印将被删除。要保留用户的主目录和邮件后台打印,请省略 -r 选项。

[ec2-user ~]$ sudo userdel -r olduser
https://docs.aws.amazon.com/zh_cn/AWSEC2/latest/UserGuide/managing-users.html

兼总条贯 知至知终