VPS Web/Mail Server Design Docs
作成: Shintaro / Acia
対象OS: Debian 13 (Sakura VPS)
1. 目的
本設計書は、任意の独自ドメインを運用する VPS サーバの構築・運用手順を体系的に整理することを目的とする。
- VPS サーバ構築の再現性確保
- 将来のメンテナンスや移行時のナレッジベース
- セキュリティ・運用ポリシーの明文化
本書では、公開資料として再利用しやすいように以下のプレースホルダを利用する。
| 表記 | 意味 |
|---|---|
<DOMAIN> | 運用ドメイン |
<MAIL_HOST> | メールホストの FQDN |
<MAIN_USER> | 常用ユーザ |
<SERVER_IPV4> | VPS のグローバル IPv4 アドレス |
2. 契約 VPS のスペック
- サービス: さくらのVPS(v5) 512 IK01
- リージョン: 石狩第1ゾーン
- vCPU: 1 Core
- メモリ: 512 MB
- ディスク: SSD 25 GB
- 帯域: 共用 100 Mbps
3. 全体アーキテクチャ
本 VPS は以下のサービスを順次構築・運用する。
外部からのアクセスはまず UFW を経由し、許可されたポートのみ各サービスへ到達する。
また、Fail2ban が各サービスのログを監視し、総当たり攻撃や不審なアクセスを検知すると UFW にBANルールを反映する。
これにより SSH / Apache / Postfix / Dovecot を多層防御する。
- SSH セキュアアクセス
- Apache (Let’s Encrypt SSL)
- Postfix / Dovecot (メール送受信)
- Fail2ban(総当たり攻撃対策、不正アクセス検知、UFW連携)
- DNS + SPF / DKIM / DMARC
- 監視 / ログ / バックアップ
flowchart TD
Client[Client / Admin] -->|Traffic| UFW[UFW Firewall]
subgraph VPS["<DOMAIN> VPS"]
UFW --> SSH[SSH]
UFW --> Apache[Apache]
UFW --> Postfix[Postfix]
UFW --> Dovecot[Dovecot]
UFW --> Monitoring[Monitoring & Backup]
Fail2ban[Fail2ban] -.-> UFW
Fail2ban -.-> SSH
Fail2ban -.-> Apache
Fail2ban -.-> Postfix
Fail2ban -.-> Dovecot
end
4. 文書体系
- 00_top.md (本書 / 概要)
- 01_index.md(目次)
- 02_initial-setup.md(初期設定)
- 03_ufw.md
- 04_sshd.md
- 05_fail2ban.md
- 06_apache.md
- 07_postfix.md
- 08_dovecot.md
- 09_mail-auth.md
- 99_decision-log.md
5. 運用ルール
- Git で履歴管理する
- コミットコメントは英語 prefix (
chore:,feat:,fix:etc.) - 改行コード LF 統一
- バックアップ:
/etc,/var/www,/etc/letsencryptを対象に定期同期
変更履歴
| 日付 | 編集者 | 内容 |
|---|---|---|
| 2025-09-30 | Shintaro / Acia | 初版作成 |
| 2025-10-07 | Shintaro | 変更履歴を表形式に統一 |