端くれプログラマの備忘録 AWS [AWS] EC2/LAMP環境を構築する(1) – インスタンス作成

[AWS] EC2/LAMP環境を構築する(1) – インスタンス作成

DigitalOceanで運用していたサイトをAWSに移すことになったので、AWSのEC2でLAMP環境を作る手順を覚え書き。

EC2インスタンスの作成

EC2インスタンスの要件は以下とする。

  • リージョン: N. California
  • OS: Amazon Linux 2
  • インスタンスタイプ: t2.micro (本稼働前にスケールアップする)
  • ストレージ: Rootボリューム(8GB)のみ
  • セキュリティグループ: HTTPとHTTPSは全許可、SSHは自分のIPのみ許可
  • Elastic IPで固定IP

インスタンスが作成できたら、インスタンス作成時に指定した鍵情報を使ってsshアクセスできることを確認する。

$ ssh ec2-user@xxx.xxx.xxx.xxx

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

https://aws.amazon.com/amazon-linux-2/
4 package(s) needed for security, out of 16 available
Run "sudo yum update" to apply all updates.
[ec2-user@ip-xxx-xxx-xxx-xxx ~]$

ユーザの作成

$ sudo su
# adduser user123
# passwd user123
Changing password for user user123.
New password: passwd123
Retype new password: passwd123
passwd: all authentication tokens updated successfully.

Root権限の付与

# gpasswd -a user123 wheel
Adding user user123 to group wheel

公開鍵認証の追加

# su - user123
$ mkdir .ssh
$ chmod 700 .ssh
$ vi .ssh/authorized_keys
公開鍵をコピペ
$ chmod 600 .ssh/authorized_keys
$ exit

SSHデーモンの設定 – rootでのログインを禁止する。

# vi /etc/ssh/sshd_config
PermitRootLogin no
# systemctl reload sshd

ログイン確認 – 現在のセッションは維持したまま、新しいターミナルを開いて試す。

$ ssh user123@xxx.xxx.xxx.xxx
Last login: Wed Sep 1 04:57:42 2021

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

https://aws.amazon.com/amazon-linux-2/
4 package(s) needed for security, out of 16 available
Run "sudo yum update" to apply all updates.
[user123@ip-xxx-xxx-xxx-xxx ~]$

スーパーユーザになれることを確認

$ sudo su
We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things:
#1) Respect the privacy of others.
#2) Think before you type.
#3) With great power comes great responsibility.
[sudo] password for user123: passwd123
#

(次回へ続く)