Python

AWSデフォルトユーザーから任意のユーザーに変更する

ec2-userは作業用のユーザーとしてもリスクがあるので変更すべき

デフォルトのユーザーは皆「ec2-user」で周知された名前であるため、セキュリティーの問題があります。

なるべく早い段階で、作業用の任意のユーザーを作成して乗り換えましょう。

下に示すコマンドは、すでにデフォルトユーザでログインした状態(「login as: ec2-user」を実行した後の状態)であることを前提にしています。

まだログインする前でこれからPuTTYの設定をする人は以下のリンクを参照してください。

python webアプリ
ん?sshクライアント「PuTTY」を使うって何? 教本「動かして学ぶPython Django開発入門」のchapter12に記載してある「EC2にSSHクライアントを利用して接続する...

PuTTYでログインが成功した直後の人はこの記事も読んでください。

AWS初心者向け!PuTTYの立ち上げ後に設定することを紹介 WindowsでAWSを始めたての人向け、初めてEC2を利用するためにPuTTYでログインした際に、やっておく必要がある設定(コマンド...

1.ユーザの設定

以下コマンドを順に入力してください。私もエラーになってしまいましたが、スペースが抜けるとエラーになる為、極力コピー&ペーストをお勧めします。「任意の名前」は好きな文字列で構いません。

作業用のユーザーを作成

sudo useradd 任意の名前

EC2ホームディレクトリから新たなユーザのホームディレクトリにSSHファイルをコピーする

sudo cp -arp /home/ec2-user/.ssh /home/任意の名前

sudo chowm -R 任意の名前 /home/任意の名前/.ssh

sudo権限を移し替えるためにsudoersを編集する。

sudo visudo -f /etc/sudoers.d/90-cloud-init-users

これを実行すると以下のテキストがPuttyの画面に出力されます。


# User rules for ec2-user

ec2-user ALL=(ALL) NOPASSWD:ALL


いきなりこれが表示されるので最初は「?」となりそうですが、これは、いわゆるPuttyのテキストファイルの表示モードに切り替わった状態と考えてください。

これが表示された状態で「i」のキーを押すと編集モードに切り替わります。

その状態で、以下のテキスト編集(赤字の部分)を行います。(※#の後にスペースが入っているので注意です。)


# User rules for ec2-user

# ec2-user ALL=(ALL) NOPASSWD:ALL

任意の名前 ALL=(ALL) NOPASSWD:ALL


編集が終わったら、「Esc」のキーで編集モードを終わらせてください。

そのあと、「:wq」と入力すると保存され、初めの画面に戻ります。

※もしエラーが表示されたら、「x」を入力して保存せずにもう一度やり直しをしてください。私は#の後のスペースが抜けていましたので、これに気づくまでだいぶ格闘していました。

すべて終了したら「exit」でログアウトできます。

2.PuTTYの設定変更

新たな作業ユーザーを設定する為、ホスト名の設定変更をする必要があります。

PuTTYを起動し、PuTTY Configurationを表示させてください。

その設定入力画面の「Host Name」の既存のパブリック DNS 名の前に新谷設定した「任意の名前」@を挿入してください。

PuTTYの設定画面
ホスト名に「任意の名前@パブリックDNS名」を入力
ABOUT ME
den
完全独学でWEBデザインを無謀にも挑戦している中年男。 工場勤務の会社員で3児の父。 チャレンジを忘れず、妻に怒られても心はおれず。 有益な情報を発信し、これを見ている人の為になればと思っています。
関連記事一覧