プライベート キーを使って、SSH 経由で Linux が稼働している EC2 インスタンスに接続でき、sudo を使って特権コマンドを実行できますが、インスタンスに root パスワードがありません。使用を開始する方法をお知りになりたいですか?

セキュリティのためには、root パスワードは避けるのがベストプラクティスです。タスクを完了するために一時的な root パスワードを取得するには、次の手順に従います。

  1. ユーザーに root 権限を付与するか、sudo su コマンドを実行して root ユーザー権限を継承します。
  2. root ユーザー用のパスワードを手動で作成します。
  3. タスクを完了します。
  4. root ユーザーのパスワードを削除します。

一時パスワードを作成する場合は、以下を理解しておく必要があります。

  • デフォルトでは、sshd daemon は root ユーザーによる直接的な SSH 接続を拒否するよう設定されています。root ユーザーによる直接的な SSH アクセスを許可することは避けてください。その代わりに、オペレーティングシステムに関連付けられたユーザー ID (たとえば、多くの Linux ディストリビューションでは "ec2-user") とキーペアで接続してください。
  • Linux を実行している EC2 インスタンスを起動するときは、SSH のキーペアをそのインスタンスと関連付け、SSH 経由でプライベートキーを使用してインスタンスを認証し、ログインします。インスタンスのデフォルトのユーザー名は OS に依存します。たとえば、CentOS には "centos"、Ubuntu Linux には "ubuntu"、その他のほとんどの Linux ディストリビューションには "ec2-user" が使用されます。
  • インスタンスのユーザー ID とパスワードでログインした後、以下の例のように、それぞれのコマンドの前にプレフィックスとして sudo コマンドを使うと特権コマンドを使用できます。
$ sudo mount /dev/sdf1/localfolder

root ユーザーに一時パスワードを追加するには、以下を実行します。

1.    SSH を使用して、Linux を実行している EC2 インスタンスに接続します。

2.    以下のコマンドを実行して、root ユーザーのパーミッションを引き受けます。

$ sudo su

3.    次のコマンドを実行し、root ユーザーの一時パスワードを作成します。

# passwd root 

4.    プロンプトが表示されたら、一時的な root パスワードを入力し、確認のためにもう一度入力します。

注意: このコマンドは root ユーザーとして実行する必要があります。

タスクを完了した後、次のコマンドを実行して root パスワードを削除します。

# passwd –d root

このページは役に立ちましたか? はい | いいえ

AWS サポートナリッジセンターに戻る

サポートが必要ですか?AWS サポートセンターをご覧ください。

公開日: 2016 年 1 月 27 日

更新: 2018 年 3 月 22 日