アプリケーションのセルフホスティングは、開発者やテックエンスージアストの間でますます人気が高まっています。AuthentikはオープンソースのIDプロバイダーおよびアクセス管理ツールで、さまざまなアプリケーションのユーザー認証を容易にします。VPS上にAuthentikをセルフホストしたい場合、このガイドはその全過程を丁寧に解説します。
必要条件
始める前に、以下を準備してください:
-
VPSプロバイダー。推奨の選択肢は以下の通りです:
- Contabo VPS - 5.99 EUR/月
- Hetzner Cloud - 4.15 EUR/月
- DigitalOcean - 6 USD/月
- Vultr - 6 USD/月
- Linode(Akamai Cloud) - 5 USD/月 より詳細な比較については、完全なVPS比較をご覧ください。
-
Dockerおよびコマンドライン操作の基本的な理解。
-
VPSに向けて設定されたドメイン名(オプションだが推奨)。
ステップ1:VPSのセットアップ
VPSプロバイダーを選択したら、次の手順に従って環境を整えます:
- OSの選択:多くの人はUbuntu Server(20.04 LTS以降)を選びます。理由はコミュニティのサポートと使いやすさです。
- VPSにアクセス:SSHを使ってサーバーに接続します:
ssh root@your-vps-ip - パッケージリストの更新:
sudo apt update && sudo apt upgrade -y - Dockerのインストール:
以下のコマンドを実行してDockerをインストールします:
sudo apt install apt-transport-https ca-certificates curl software-properties-common -y curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" sudo apt update sudo apt install docker-ce -y - Docker Composeのインストール:
マルチコンテナのアプリケーションセットアップを容易にするために、Docker Composeをインストールします:
sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose
ステップ2:Authentik用ディレクトリの作成
ファイルを整理するために、Authentik用のディレクトリを作成します:
mkdir -p ~/authentik
cd ~/authentik
ステップ3:Docker Composeファイルの作成
Authentik用にdocker-compose.ymlファイルを作成します。テキストエディタでこのファイルを開きます:
nano docker-compose.yml
次の内容を入力します:
version: '3.7'
services:
authentik:
image: ghcr.io/goauthentik/server
restart: always
environment:
- DATABASE_URL=sqlite:authentik.db
- REDIS_URL=redis://redis:6379
volumes:
- ./authentik:/authentik
ports:
- "8000:9000"
redis:
image: redis:alpine
restart: always
保存して閉じます(nanoであればCTRL + X、次にY、最後にEnter)。
ステップ4:Authentikの起動
次のコマンドを実行してAuthentikを起動します:
docker-compose up -d
正常に動作しているか確認するには、実行中のコンテナをリストします:
docker ps
ステップ5:Authentikにアクセス
ウェブブラウザでhttp://your-vps-ip:8000にアクセスします。Authentikのセットアップ画面が表示されます。案内に従って管理者アカウントを作成してください。
Authentikの設定
Authentikの設定後は、さまざまな認証ソースやコネクタ、ユーザーインターフェースの設定を行います。この構成は利用ケースに応じて異なるため、詳細はAuthentikのドキュメントを参照してください。
オプション:リバースプロキシの設定
本番運用にはNginxやTraefikを使ったリバースプロキシの設定を推奨します。SSL終端やURLの整理に役立ちます。以下はNginxの基本設定例です:
- Nginxのインストール:
sudo apt install nginx -y - Authentik用の設定ファイルの作成:
sudo nano /etc/nginx/sites-available/authentik
この内容を追加します:
server {
listen 80;
server_name your-domain.com;
location / {
proxy_pass http://localhost:8000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
- 設定の有効化とNginxの再起動:
sudo ln -s /etc/nginx/sites-available/authentik /etc/nginx/sites-enabled/
sudo systemctl restart nginx
よくある質問(FAQs)
1. Authentikとは何ですか?なぜセルフホストするべきですか?
AuthenikはオープンソースのIDプロバイダーとアクセス管理ソリューションで、さまざまなアプリケーションのユーザー認証を効率化します。セルフホストにより、データの完全なるコントロールやカスタマイズが可能となり、既存のアプリケーションとシームレスに連携させることもできます。これにより、ユーザーデータのプライバシーを保護できます。
2. リソースが限られたVPSにAuthentikをインストールできますか?
はい、Dockerを用いた構築ならリソースが少なくても動作します。ただし、最適なパフォーマンスのためには最低1GBのRAMと1つのCPUコアを推奨します。HetznerやContaboのようなプロバイダーは低価格のVPSプランを提供しており、基本的なインストールに適しています。
3. DockerはAuthentikのインストールにどのように役立ちますか?
Dockerを使うことで展開が簡単になります。Dockerコンテナは依存関係や実行に必要なすべてを封じ込めており、異なる環境でも一貫して動作します。この方法はアップデート管理やスケーリングを容易にし、システムへの影響を最小限に抑えます。
このガイドに従えば、あなたのVPSに迅速かつ効率的にAuthentikをセットアップ可能です。セルフホストをお楽しみください!その他のリソースや、おすすめのセルフホストアプリについては、r/selfhostedやawesome-selfhostedリポジトリもぜひご参照ください。 --- END ---