🈂️

サーバー構築をもう一度振り返ってみる!!(SSH公開鍵認証設定もあるよ)

に公開

サーバー構築(AlmaLinux + Apache + Fail2ban)

はじめに

このブログでは、Oracle VirtualBox上にAlmaLinuxを用いてWebサーバーを構築する手順を紹介します。Apacheの導入からセキュリティ強化まで、実践的な内容を網羅しています。


1. 仮想マシンの作成

  • 環境: Oracle VirtualBox
  • 設定:
    • CPU: 2コア
    • メモリ: 4096MB
    • ストレージ: 30GB
    • ネットワーク: ブリッジアダプター

2. OSインストールと初期設定

  • OS: AlmaLinux
  • 設定内容:
    • rootパスワード設定
    • 一般ユーザー作成
    • ストレージ設定はデフォルト

3. ネットワーク設定

  • IP固定:
    • インターフェース: enp0s3
    • IP: 192.168.30.69/23
    • ゲートウェイ: 192.168.31.254
    • DNS: 1.1.1.1
  • 設定ツール: nmtui

4. Webサーバー構築(Apache)

Apacheの導入と起動

dnf -y install httpd
systemctl start httpd
systemctl enable httpd

GitからWebコンテンツ取得

dnf install git
git clone https://github.com/arohajiro/testlp2.git
cp testlp2/* /var/www/html/
rm -rf testlp2

5. ファイアウォール設定

HTTP通信許可

firewall-cmd --add-service=http --permanent
firewall-cmd --reload

不要サービス削除

firewall-cmd --permanent --remove-service=cockpit
firewall-cmd --permanent --remove-service=dhcpv6-client
firewall-cmd --reload

6. セキュリティ強化(Fail2ban)

インストールと設定

dnf -y install epel-release
dnf -y install fail2ban
cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.d/jail.local
vim /etc/fail2ban/jail.d/jail.local
  • enable = true を追記
  • bantime = 10, findtime = 10, maxretry = 5

起動と自動起動設定

systemctl start fail2ban
systemctl enable fail2ban

7. SSH共通鍵認証設定

鍵の作成と登録

ssh-keygen -t rsa -b 4096
cat id_rsa.pub >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys

パスワード認証の無効化

vi /etc/ssh/sshd_config
# PasswordAuthentication no に変更
systemctl reload sshd.service

おわりに

この手順書を参考にすることで、仮想環境上に安全かつ効率的なWebサーバーを構築できます。セキュリティ対策としてFail2banやSSH鍵認証の導入も忘れずに行いましょう。

Discussion