# VPSでMatrixサーバーを運用するには？

> 4 GB VPSに、Matrix.orgのパッケージからSynapseをインストールします。12か月契約では月額$8.25で、PostgreSQLとリバースプロキシを併用します。

- URL: https://gloamport.com/ja/guides/how-to-host-a-matrix-server/
- 最終更新: 2026-11-10
- 発行者: Gloamport (https://gloamport.com)

Matrixはオープンなチャットプロトコルで、Synapseはその参照サーバーです。このガイドでは、プロジェクトのDebianパッケージからSynapseをインストールし、その前にリバースプロキシを置きます。

**概要 — VPSでMatrixサーバーを運用するには？**

VPSでMatrixサーバーを運用するには、Matrix.orgのaptリポジトリからSynapseをインストールし、PostgreSQLデータベースを設定して、ポート8008の前にHTTPSリバースプロキシをポート443で置きます。Gloamportのプラン Gloam（2 vCPU, 4 GB RAM, 80 GB NVMe, 4 TB traffic、12か月契約で月額$8.25）はこの用途に合わせた規模です。

## Synapseのインストールには何が必要ですか？

| 項目 | 設定 | 理由 |
| --- | --- | --- |
| サーバー名 | ユーザーIDのドメイン部分（例：example.com）。後から変更できません | フェデレーションのID |
| パッケージ | packages.matrix.orgのmatrix-synapse-py3 | Debianの公式パッケージは、Debian 13以前では利用できません |
| 設定の上書き | /etc/matrix-synapse/conf.d/ | パッケージ更新時に設定ファイルの置き換えを求められません |
| クライアントとフェデレーションのリスナー | localhost:8008でHTTP、プロキシの背後に配置 | プロキシがHTTPSを終端します |
| データベース | PostgreSQL（psycopg2） | ドキュメントではSQLiteはテスト専用としています |
| ポート | クライアント用は443。フェデレーション用は、443に委任しない限り8448 | 両方ともインターネットから到達可能である必要があります |
| プラン | Gloam: 2 vCPU, 4 GB RAM, 80 GB NVMe, 4 TB traffic | Gloamportのプラン一覧 |

*価格確認日: 2026年11月10日.*

## Matrixサーバーを入れる前に必要なものは？

ご自身が管理するドメイン名と、パブリックIPv4アドレスを持つVPSが必要です。サーバーよりもドメインの方が重要です。Synapseのドキュメントでは、サーバー名がすべてのユーザーIDのドメイン部分であり、後から変更できないと説明されています。インストールの前に決めてください。

Gloamportの各VPSにはすべてのプランでIPv4 1つとIPv6 /64が付属するため、DNSレコードを直接向けられます。ここではドメインは販売していません。お好みの場所で購入し、使用するホスト名のAレコードを作成してください。Linuxのみです。Debian、Ubuntu、AlmaLinux、Rocky Linuxのイメージがあります。Windowsはありません。DNSと証明書には、インストールとは別に約1時間を見込んでください。

## Debian 13またはUbuntu 24.04にSynapseをインストールする方法

以下のコマンドは公式のSynapseドキュメントに従っています。rootまたはsudoで実行してください。

1. **DNSをVPSに向ける** — VPSのアドレスを指す matrix.example.com のAレコードを作成します（IPv6を使う場合はAAAAレコードも）。証明書を要求する前に、名前解決できるようになるまで待ってください。
2. **Matrix.orgのaptリポジトリを追加** — 署名鍵をダウンロードし、リポジトリの行を追加して apt update を実行します（最初のコードブロックのとおり）。ドキュメントには鍵のフィンガープリント AAF9AE843A7584B5A3E4CD2BCF45A512DE2DA058 が記載されているので、信頼する前に gpg で照合してください。
3. **matrix-synapse-py3をインストール** — apt install matrix-synapse-py3 を実行し、尋ねられたらサーバー名を設定します。設定の変更は /etc/matrix-synapse/conf.d/ 内のファイルからのみ行ってください。
4. **PostgreSQLデータベースを作成** — PostgreSQLとlibpq5ライブラリをインストールし、2番目のコードブロックのコマンドでユーザーとデータベースを作成してから、そこに示すデータベースブロックでSynapseを接続します。
5. **前段にリバースプロキシを置く** — Webサーバーをインストールし、ホスト名の証明書を取得して、3番目のコードブロックのとおり /_matrix と /_synapse/client を localhost:8008 に転送します。8008リスナーに x_forwarded: true を設定してください。
6. **ユーザーを作成してテスト** — registration_shared_secret を設定し、Synapseを再起動して register_new_matrix_user を実行します。その後、Matrixクライアントからホームサーバーのアドレスでサインインします。

*1. Matrix.orgのリポジトリとパッケージ*

```bash
sudo apt install -y lsb-release wget apt-transport-https
sudo wget -O /usr/share/keyrings/matrix-org-archive-keyring.gpg https://packages.matrix.org/debian/matrix-org-archive-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/matrix-org-archive-keyring.gpg] https://packages.matrix.org/debian/ $(lsb_release -cs) main" |
    sudo tee /etc/apt/sources.list.d/matrix-org.list
sudo apt update
sudo apt install matrix-synapse-py3
```

*2. PostgreSQL：ユーザー、データベース、Synapseのデータベースブロック*

```bash
sudo apt install postgresql libpq5
sudo -u postgres createuser --pwprompt synapse_user
sudo -u postgres createdb --encoding=UTF8 --locale=C --template=template0 --owner=synapse_user synapse

# /etc/matrix-synapse/conf.d/database.yaml
database:
  name: psycopg2
  args:
    user: synapse_user
    password: CHANGE_ME
    dbname: synapse
    host: localhost
    cp_min: 5
    cp_max: 10
```

*3. リバースプロキシとリスナー（Synapseドキュメントのnginxのlocation）*

```text
# nginx: inside a server block that listens on 443 ssl for matrix.example.com
location ~ ^(/_matrix|/_synapse/client) {
    proxy_pass http://localhost:8008;
    proxy_set_header X-Forwarded-For $remote_addr;
    proxy_set_header X-Forwarded-Proto $scheme;
    client_max_body_size 50M;
}

# Synapse listener on port 8008, in homeserver.yaml or a conf.d file
listeners:
  - port: 8008
    type: http
    x_forwarded: true
    bind_addresses: ['127.0.0.1']
    resources:
      - names: [client, federation]
```

*4. 最初のユーザー*

```bash
# conf.d/registration.yaml  (a random value, kept secret)
registration_shared_secret: "RANDOM_VALUE"

sudo systemctl restart matrix-synapse
register_new_matrix_user -c /etc/matrix-synapse/homeserver.yaml
```

> **リポジトリがお使いのリリースに対応しているか確認** apt update が packages.matrix.org にお使いのコードネームの Release ファイルがないと報告した場合は、そこで止めて、Synapseインストールページにある別の方法を使ってください。Debianが自ら管理するDebianパッケージは、Debian 13では利用できません。

## 自前のMatrixホームサーバーにはどの程度のサーバーが必要ですか？

数人で使うプライベートなホームサーバーなら中規模のプランで足ります。負荷が増えるのは、大規模な公開ルームへのフェデレーションです。Synapseのベンチマークは行っておらず、ユーザー数の目安も示しません。Gloamportでは、Matrixサーバー、Vaultwarden、SearXNGを一緒に向けのプランとしてGloamを挙げています：2 vCPU, 4 GB RAM, 80 GB NVMe, 4 TB traffic、12か月契約で月額$8.25、1か月契約では$16.50です。

ルームの多いチームチャットには、Night（4 vCPU, 8 GB RAM, 160 GB NVMe, 8 TB traffic、12か月契約で月額$13.50）が負荷の高いリレー、チームのチャットサーバー、または複数のサービス向けに挙げられています。

## フェデレーションには8448番ポートが必要ですか？

いいえ。委任すればフェデレーションは443番ポートで動作できます。Synapseのリバースプロキシのページには、.well-known/matrix/server の応答で委任すれば8448番ポートを開ける必要はなく、フェデレーションは443を使うと記載されています。委任しない場合、既定のフェデレーションポートは8448なので、ファイアウォールで開き、そのポートで待ち受ける2つ目のserverブロックを追加してください。

クライアントは https://your-server-name/.well-known/matrix/client で配信される /.well-known/matrix/client ファイルからサーバーを見つけられます。このファイルは m.homeserver の base_url でホームサーバーを指定します。ブラウザ用のクライアントにはCORSヘッダーも必要で、Synapseの public_baseurl には同じURLを設定してください。サーバー名を裸のドメインで運用するのは、そこでそのファイルを配信できる場合に限ってください。

## 自前のMatrixサーバーを安全に保つには？

署名鍵、データベース、メディアストアをバックアップし、ホストにパッチを当て続けてください。ドキュメントでは、他のサーバーが署名鍵に依存するため、署名鍵を必ず保存するよう警告しています。エンドツーエンド暗号化されていないルームのメッセージは、VPS上のデータベースで読める状態で残るため、ディスク暗号化も検討する価値があります。[VPSのディスクをLUKSで暗号化できますか？](https://gloamport.com/ja/guides/how-to-encrypt-a-vps-disk-with-luks/ "VPSのディスクをLUKSで暗号化できますか？") で、ディスク暗号化が守れるものと守れないものを説明しています。

どのプランにもバックアップは含まれません。失うと困るものは、必ずご自身でコピーを保管してください。Gloamportが2026年11月10日について行った調査によると、49件のプロバイダーのうち28件が登録時に身分証明書類を求めないため、書類を渡さずにVPSを購入できます。ただし、サーバーのセキュリティはご自身の責任です。[新しいVPSでSSHを強化するには？](https://gloamport.com/ja/guides/how-to-harden-ssh-on-a-vps/ "新しいVPSでSSHを強化するには？") のように、鍵のみのSSHを設定してください。

**まとめ**

- Synapseはpackages.matrix.orgからmatrix-synapse-py3としてインストールされます。
- サーバー名は永続的です。最初にドメインを選んでください。
- PostgreSQLを使ってください。ドキュメントではSQLiteはテスト用途に限り許容されるとしています。
- /_matrix と /_synapse/client をHTTPSの背後で localhost:8008 にプロキシしてください。
- 委任により、フェデレーションは8448の代わりに443番ポートを使えます。
- Gloamは、12か月契約で月額$8.25の適合するプランです。
- 署名鍵、データベース、メディアをバックアップしてください。どのプランにもバックアップは含まれません。

## Matrixサーバー運用：よくある質問

### Matrixにはドメイン名が必要ですか？

はい。サーバー名はすべてのユーザーIDの一部で、インストール時に設定されます。後から変更できないため、インストールの前にドメインを用意するか選んでください。

### なぜSQLiteを使わないのですか？

Synapseのドキュメントでは、SQLiteはテスト専用で本番では使うべきでないとされています。ほとんどのインストールではPostgreSQLを使うべきです。

### 独自の設定はどこに置きますか？

/etc/matrix-synapse/conf.d/ 内のファイルに置いてください。ドキュメントでは、パッケージ更新時に設定ファイルを置き換えるかを尋ねられないよう、この方法を推奨しています。

### 最初のアカウントはどう作成しますか？

Synapseの起動後、ホームサーバーの設定に対して register_new_matrix_user -c を実行します。これは registration_shared_secret を使い、それを知る人は管理者を含めてアカウントを作成できます。

### Matrixを他のサービスと併用できますか？

Gloam以上のプランなら可能です。VaultwardenとSearXNGは、Matrixに比べれば小さな負荷です。[Vaultwardenのセルフホスト](https://gloamport.com/ja/guides/how-to-self-host-vaultwarden/ "VPSでVaultwardenをセルフホストするには？") ガイドをご覧ください。

## 出典

1. [Synapseドキュメント：インストール手順](https://element-hq.github.io/synapse/latest/setup/installation.html) — Element / Matrix.org Foundation (checked 2026-11-10)
2. [Synapseドキュメント：リバースプロキシの利用](https://element-hq.github.io/synapse/latest/reverse_proxy.html) — Element / Matrix.org Foundation (checked 2026-11-10)
3. [Synapseドキュメント：Postgresの利用](https://element-hq.github.io/synapse/latest/postgres.html) — Element / Matrix.org Foundation (checked 2026-11-10)

---

Gloamport: Gloamportは、KYCなしのLinux KVMサーバーを販売するVPSプロバイダーです。アカウント番号で注文し、暗号資産で支払います（Moneroを優先）。運営元は、パナマで登録された法人DomaineGoat LLCです。注文では、プラン、コイン、そして希望する場合のみメールアドレスを求めます。氏名、住所、電話番号、身分証明書は求めません。12か月契約では、各プランの価格は、2026年11月10日に読み取ったKYCなしの暗号資産VPSホスト38社の調査から選んだ、名前の付いた比較対象プランより少なくとも25%安くなっています。
