読者です 読者をやめる 読者になる 読者になる

CaramelTrip

家族で海外を旅するフリーランス・プログラマーのログ

Amazon EC2 初期設定 | AmazonLinuxを立ち上げたら最初にすべき10の設定 [sshログイン〜ec2-userの削除まで]

f:id:parsetree:20170111113003p:plain

AmazonLinux 初期設定

この設定が必要なケースが結構あり、都度ググってました。

また、ググっても情報が古かったり、なんか違ったりするので自分がいつも行っている「sshログイン〜ec2userの削除まで」の設定を以下にまとめます。

また、これはAmazonLinuxの初期設定で、centosや他のOSだと設定が足りなかったり、違ったりしますのでご注意ください。

 

1. SSHでログイン


keyname.pemのあるディレクトリで以下のコマンドを実行 xxx.xxx.xxx.xxxはインスタンスのグローバルIP

$ ssh -i keyname.pem ec2-user@xxx.xxx.xxx.xxx

以下の文字が出てきてら接続OK

__| __|_ )
_| ( / Amazon Linux AMI
___|\___|___|

 

2. yumアップデート


ログインできたらyum update

$ sudo yum update -y

-y は「全部yesだよ」オプションです。

 

3. ホスト名の変更


インスタンスのホスト名を変更しましょう。

$ sudo hostname xxxx
$ sudo vi /etc/hosts
127.0.0.1 xxxx localhost.localdomain localhost

$ sudo vi /etc/sysconfig/network
HOSTNAME=xxxx

 

4. 日本時間(JST)にする


yum update しても戻らないよう設定します。

# sudo vi /etc/sysconfig/clock

ZONE="Asia/Tokyo"
UTC=false

# sudo cp /usr/share/zoneinfo/Japan /etc/localtime
# date
2016年 12月 9日 金曜日 22:34:49 JST

再起動

# sudo /etc/init.d/crond restart

 

5. 文字コードを日本語設定に変更


日本設定に変更します。

$ sudo vi /etc/sysconfig/i18n

LANG=ja_JP.UTF-8

 

6. userの追加


私は必ず新しいuserを作り、最後にec2-userを削除していますので、それらのステップになります。

新しいユーザーをnewuserとします

$ sudo adduser newuser

 

7. newuserにsudo権限を付与


newuserにsudo権限を与えます。 wheelグループに所属するユーザーはsudo権限があるので、wheelグループにnewuserを追加します。

$ sudo usermod -G wheel newuser

wheelグループのユーザの確認

$ grep wheel /etc/group
wheel:x:10:ec2-user,newuser

sudoersの設定で、rootの記述の下にnewuserのsudo権限を付与設定を追加する

$ sudo visudo
newuser ALL=(ALL) NOPASSWD: ALL

 

8. ec2-userのssh設定をnewuserに移行


ec2-userのauthorized_keysをnewuserの.sshディレクトリにコピーし、適切なパーミッションを設定します。

authorized_keysのコピーと適切なパーミッションの設定

$ sudo rsync -a ~/.ssh/authorized_keys ~newuser/.ssh/
$ sudo chown -R newuser:newuser ~newuser/.ssh
$ sudo chmod -R go-rwx ~newuser/.ssh
$ sudo ls -al ~newuser/.ssh
合計 12
drwx------ 2 newuser newuser 4096 12月 9 22:56 .
drwx------ 3 newuser newuser 4096 12月 9 22:56 ..
-rw------- 1 newuser newuser 388 12月 9 20:53 authorized_keys

newuserにsudo権限があるか確認 以下のコマンドでrootに切り替わればOK。exitします。

$ sudo su - newuser
$ sudo -s

[root@xxxx]# exit

 

9. sshから抜けて、newuserでsshログインできるか確認する


sshから抜ける

$ exit

newuserでsshログインできるか確認する

$ ssh -i keyname.pem newuser@xxx.xxx.xxx.xxx

 

10. ec2-userの削除


newuserでsshログインできたら、最後にec2-userを削除します。

$ sudo userdel ec2-user

 

まとめ

上記の10ステップはあくまで最低限やったほうが良い設定をまとめたものです。

上記以外にも、セキュリティやサーバー設定が必要なケースがありますので、状況に応じて対応して下さい。

 

お疲れ様でした♫