Amazon Elastic Compute Cloud
Linux インスタンス用ユーザーガイド

Linux インスタンスでのユーザーアカウントの管理

各 Linux インスタンスは、デフォルトの Linux システムユーザーアカウントで起動されます。デフォルトのユーザー名は、インスタンスを起動したときに指定された AMI によって決まります。Amazon Linux 2 または Amazon Linux AMI の場合は、ユーザー名は 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 インスタンスの保護のヒント」を参照してください。

Linux システムのユーザーアカウントを使用してユーザーが EC2 インスタンスに SSH アクセスできるようにするには、SSH キーをユーザーと共有する必要があります。または、EC2 Instance Connect を使用して、SSH キーを共有および管理せずにユーザーにアクセスを提供できます。詳細については、「EC2 Instance Connect を使用して Linux インスタンスに接続する」を参照してください。

ユーザーアカウントを作成する

最初にユーザーアカウントを作成してから、ユーザーがインスタンスに接続してログインできるようにする SSH パブリックキーを追加します。

前提条件

ユーザーアカウントを作成するには

  1. adduser コマンドを使用して、ユーザーアカウントを作成し、システムに追加します (/etc/passwd ファイルにエントリが追加されます)。このコマンドでも、グループが作成され、アカウントのホームディレクトリが作成されます。この例では、ユーザーアカウントは newuser という名前になります。

    [ec2-user ~]$ sudo adduser newuser

    [Ubuntu] ユーザーを Ubuntu システムに追加する場合は、このコマンドを使用して、--disabled-password パラメータを追加し、アカウントにパスワードが追加されないようにしてください。

    [ubuntu ~]$ sudo adduser newuser --disabled-password
  2. 新しいアカウントに切り替えて、作成するディレクトリとファイルが適切な所有権を持つようにします。

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

    この例では、シェルセッションが新しいアカウントに切り替わったことを示すために ec2-user から newuser に変更するように求められます。

  3. ユーザーアカウントに SSH パブリックキーを追加します。最初に SSH キーファイル用のディレクトリをユーザーのホームディレクトリに作成し、次にキーファイルを作成して、最後に公開キーをキーファイルに貼り付けます。

    1. .ssh ホームディレクトリに newuser ディレクトリを作成し、そのファイルのアクセス許可を 700 (所有者のみ、読み取り、書き込み、削除が可能) に変更します。

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

      重要

      厳密なファイル権限がなければ、ユーザーはログインできません。

    2. authorized_keys という名前のファイルを .ssh ディレクトリに作成し、そのファイルのアクセス許可を 600 (所有者のみ、読み取りおよび書き込みが可能) に変更します。

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

      重要

      厳密なファイル権限がなければ、ユーザーはログインできません。

    3. お好みのテキストエディタ (例: vimnano) で、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

      これで、newuser ファイルに追加したパブリックキーの対であるプライベートキーを使用して、インスタンスの authorized_keys アカウントにログインできるようになりました。

ユーザーアカウントの削除

ユーザーアカウントが不要になった場合、今後使用されないようにそのアカウントを削除できます。

システムからユーザーアカウントを削除するには、userdel コマンドを使用します。-r パラメータを指定すると、ユーザーのホームディレクトリとメールスプールが削除されます。ユーザーのホームディレクトリとメールスプールを維持するには、-r パラメータを省略します。

[ec2-user ~]$ sudo userdel -r olduser