AWS EC2インスタンスでUbuntuをセットアップした際に最初に行うべき基本的なステップについて解説します。これらの手順は、セキュリティと安定性を確保するための基本設定となります。
1. SSHでEC2インスタンスに接続
まず、SSHキーを使用してインスタンスに接続します。
ssh -i /path/to/aws-tikeda-access-key.pem ubuntu@your-ec2-public-ip
2. パッケージの更新
最初に、すべてのパッケージを最新の状態に更新します。これにより、セキュリティパッチやバグ修正が適用されます。
sudo apt update && sudo apt upgrade -y
3. ファイアウォールの設定 (UFW)
UFW (Uncomplicated Firewall) を有効化してセキュリティを強化します。基本的には、SSH(ポート22)、HTTP(ポート80)、HTTPS(ポート443)を許可します。
sudo ufw allow OpenSSH
sudo ufw allow 'Apache Full'
# 必要に応じて他のサービスも許可
sudo ufw enable
4. ユーザー管理とSSH設定の強化
セキュリティを強化するため、ubuntu
ユーザー以外の新しい管理ユーザーを作成し、sudo権限を与え、公開鍵認証のみでSSHログインを許可する設定に変更します。
sudo adduser newuser
sudo usermod -aG sudo newuser
その後、/etc/ssh/sshd_config
ファイルを編集し、パスワード認証を無効にし、ルートログインも禁止します。
sudo nano /etc/ssh/sshd_config
以下のように設定します:
PermitRootLogin no
PasswordAuthentication no
変更を保存したら、SSHを再起動します。
sudo systemctl restart ssh
5. タイムゾーンの設定
サーバーのタイムゾーンを設定します。
sudo timedatectl set-timezone Asia/Tokyo # 例: 東京時間に設定
6. 自動アップデートの設定 (オプション)
セキュリティアップデートを自動でインストールする設定を行います。
sudo apt install unattended-upgrades
sudo dpkg-reconfigure --priority=low unattended-upgrades
7. スワップファイルの設定 (必要に応じて)
メモリが少ない場合、スワップファイルを設定して仮想メモリを利用できるようにします。
sudo fallocate -l 1G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
sudo bash -c 'echo "/swapfile none swap sw 0 0" >> /etc/fstab'
これで基本的なセットアップが完了です。セキュリティと安定性が向上し、AWS EC2インスタンス上のUbuntuを安全に運用する準備が整いました。