Zimbraの送信メール遅延を修正:「接続タイムアウト ポート25」
ポート25におけるZimbra送信メールの遅延エラーを診断します。キュー、MX DNS、ファイアウォール、プロバイダブロックを確認し、承認済みのSMTPリレーを設定してください。
Raspberry Pi 4 は、家庭、プライベートグループ、または研究室向けの実用的な小型 Matrix ホームサーバーを構築できます。Conduit は軽量ハードウェアを念頭に置いて設計されています。Matrix は分散型通信のためのオープンプロトコルです。ユーザーはホームサーバーに接続し、ホームサーバーはユーザーのアカウントとルームデータを保存します。フェデレーションにより、そのホームサーバーは他の Matrix サーバーとイベントを交換できます。
このガイドでは、Docker 内の Conduit を使用し、HTTPS 用に NGINX を前面に配置します。これにより、Matrix サービスは Pi 上で隔離され、公開 Web ポートのみが公開されます。手順は、2026 年 10 月時点で入手可能な Conduit、Matrix、Raspberry Pi、Docker、および NGINX のドキュメントに基づいて確認されています。重要な制限事項が 1 つあります。Conduit はまだベータ版であるため、Matrix の一部の機能や古いルーム バージョンが、成熟した Synapse デプロイメントとまったく同じように動作しない可能性があることを許容できるユーザーに最適です。重要なサービスに使用する前に、公式の Conduit プロジェクトを確認してください。

最終的な処理経路は単純明快です。ElementなどのMatrixクライアントがに接続しhttps://matrix.example.com、NGINXがTLSを終端してリクエストをPi上のConduitに転送します。Conduitはデータベースを永続的なDockerストレージに保存します。フェデレーションが有効になっている場合、他のホームサーバーも同じパブリックHTTPSエンドポイントにアクセスできます。
Raspberry Pi 4、安定した電源、microSDカードまたはSSD、そして64ビットオペレーティングシステムが必要です。Matrixはデータベースとメディアデータを継続的に書き込むため、長期間使用する予定のサーバーにはSSDが推奨されます。サーバーをインターネットからアクセス可能にする必要がある場合は、ドメイン名も必要になります。
2026年9月15日現在、最新のRaspberry Pi OS 64ビット版はDebian 13「Trixie」をベースとしており、Raspberry Pi 4向けにはRaspberry Pi OS Liteが利用可能です。詳細は公式のRaspberry Pi OSダウンロードページをご覧ください。このサーバーには、不要なデスクトップ環境を排除したLite版が最適です。
このガイドでは、サーバー名は ですmatrix.example.com。結果として生成される Matrix ユーザー ID は のようになります@alice:matrix.example.com。この名前は長期的な ID として扱ってください。Matrix ID とフェデレーション参照にはサーバー名が含まれるため、後で変更しても、単に Web ホストの名前を変更するのと同等にはなりません。
Raspberry Pi Imagerを使用して、Raspberry Pi OS Lite 64ビット版をカードまたはSSDに書き込みます。ヘッドレスインストールを行う場合は、イメージング中にSSHを有効にし、Piを起動します。64ビットARMシステムであることを確認してください。
uname -m
cat /etc/os-release
uname -m通常は報告されるはずですaarch64。その後、最新のアップデートをインストールしてください。
sudo apt update
sudo apt full-upgrade -y
sudo reboot

Dockerのドキュメントによると、64ビット版Raspberry Pi OSのユーザーは、古い32ビット版Raspberry Pi OSのパスではなく、サポートされているDebian ARM64パッケージを使用する必要があるとのことです。正式な手順は、Docker Engine for Debianのページに記載されています。以下のリポジトリ設定は、この方法に従っています。
sudo apt update
sudo apt install -y ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo docker run --rm hello-world
最後のコマンドでDockerのhello-world確認メッセージが表示されれば、コンテナランタイムは正常に動作しています。sudo dockerこのガイドの残りの部分もそのまま使用できます。アカウントをdockerグループに追加するのは任意ですが、Dockerグループのメンバーになると、実質的にホストのrootレベルの制御権限が付与されることを覚えておいてください。
ConduitはTOMLファイルまたは環境変数で設定できます。公式のConduit設定リファレンスserver_nameでは、、、database_backendおよびがdatabase_path必須フィールドとして挙げられており、RocksDBが推奨されています。
作業ディレクトリを作成します。
sudo mkdir -p /opt/conduit
sudo chown "$USER":"$USER" /opt/conduit
cd /opt/conduit
nano conduit.toml
この初期設定を使用し、ホスト名と登録トークンを置き換えてください。
[global]
server_name = "matrix.example.com"
database_backend = "rocksdb"
database_path = "/var/lib/matrix-conduit/"
address = "0.0.0.0"
port = 6167
allow_registration = true
registration_token = "replace-with-a-long-random-secret"
allow_federation = true
trusted_servers = ["matrix.org"]
なぜ0.0.0.0ここなのか?コンテナ内では、Conduitはコンテナのインターフェースでリッスンする必要があり、Dockerがそれにアクセスできるようになっているためです。ホスト側のポートは引き続きのみにバインドされる127.0.0.1ため、ポート6167はインターネットに直接公開されません。

作成する/opt/conduit/docker-compose.yml:
services:
conduit:
image: registry.gitlab.com/famedly/conduit/matrix-conduit:latest
container_name: matrix-conduit
restart: unless-stopped
ports:
- "127.0.0.1:6167:6167"
volumes:
- ./conduit.toml:/etc/conduit.toml:ro
- conduit-data:/var/lib/matrix-conduit/
environment:
CONDUIT_CONFIG: /etc/conduit.toml
volumes:
conduit-data:
安定版のGitLab Registryイメージは、公式のConduit Dockerドキュメントで推奨されているイメージです。無作為に選んだチュートリアルから古いイメージタグをコピーすることは避け、公式レジストリを使用し、アップグレード前にリリースノートを確認してください。

サービスを開始して、その状態を確認してください。
cd /opt/conduit
sudo docker compose pull
sudo docker compose up -d
sudo docker compose ps
sudo docker compose logs --tail=100 conduit
コンテナがUp繰り返し再起動ループに陥ることなく、実行状態または待機状態を維持するようにしたい場合、NGINX を設定する前にローカル API を確認してください。
curl http://127.0.0.1:6167/_matrix/client/versions

パブリック IPv4 アドレスを指すAレコードを作成してください。レコードを公開する場合は、IPv6 が実際に Raspberry Pi に到達することを確認してください。IPv6 レコードが破損していると、IPv4 が正常に動作していてもクライアントが接続できなくなる可能性があります。matrix.example.comAAAA
一般的な家庭用ルーターでは、TCPポート80と443をRaspberry Piに転送してください。ISPがキャリアグレードNAT(CGNAT)を使用している場合、通常の受信ポート転送は機能しない可能性があります。その場合は、パブリックIPアドレス、VPS/リバーストンネル構成、または別のホスティング構成が必要になります。
NGINXをインストールする:
sudo apt install -y nginx
作成する/etc/nginx/sites-available/matrix:
server {
listen 80;
server_name matrix.example.com;
client_max_body_size 20M;
location / {
proxy_pass http://127.0.0.1:6167;
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の公式リバースプロキシガイド文書proxy_passと、ここで使用されている転送ヘッダー。
sudo ln -s /etc/nginx/sites-available/matrix /etc/nginx/sites-enabled/matrix
sudo nginx -t
sudo systemctl reload nginx

Matrixを通常の公開展開するには、有効なHTTPS接続が必要です。DNSがRaspberry Piに解決され、ポート80にアクセス可能になった後にのみ、証明書を取得してください。Debian TrixieにはCertbotパッケージが用意されており、Certbotプロジェクトはcertbot.eff.orgで最新のプラットフォーム固有の手順も公開しています。
Debian/NGINXでよく使われるルートは次のとおりです。
sudo apt install -y certbot python3-certbot-nginx
sudo certbot --nginx -d matrix.example.com
CertbotがNGINX仮想ホストを更新した後、再度設定をテストしてください。
sudo nginx -t
sudo systemctl reload nginx
このガイドでは、Matrixサーバー名とパブリックエンドポイントに同じホスト名を使用しているため、Conduitは/.well-knownリバースプロキシ経由でMatrix検出パスに応答できます。Matrix仕様では、クライアントや他のサーバーが正しいホームサーバーのURLを検出できるように、これらのエンドポイントを定義しています。Matrixクライアント/サーバー仕様を参照してください。
ConduitのDockerドキュメントによると、新しいホームサーバーで最初に作成されたアカウントが管理者になります。登録トークンをサポートするMatrixクライアントを開き、カスタムホームサーバーを選択して、以下を入力してください。
https://matrix.example.com
トークンを使用して最初のアカウントを登録してくださいconduit.toml。これは、サービス開始後すぐに行ってください。それ以降の登録を希望しない場合は、設定を編集してallow_registration = falseコンテナを再起動してください。
cd /opt/conduit
sudo docker compose restart conduit

次に、ドメインにアクセスできる任意のマシンから、次の3つのチェックを実行します。
curl https://matrix.example.com/_matrix/client/versions
curl https://matrix.example.com/.well-known/matrix/client
curl https://matrix.example.com/.well-known/matrix/server
最初の要求では、サポートされているMatrixクライアントAPIのバージョンを記述したJSONが返されるはずです。既知の要求では、有効なJSON検出情報が返されるはずです。フェデレーションについては、Matrixフェデレーションテスターを使用して、新しいアカウントからフェデレーションルームに参加してみてください。

127.0.0.1ホスト上でポート6167をバインドしたままにして、NGINX経由でHTTPSを公開します。以下の条件がすべて満たされたら完了です。Conduitコンテナが再起動後も実行状態を維持し、https://matrix.example.com/_matrix/client/versionsJSONを返します。Matrixクライアントがカスタムホームサーバーに登録またはサインインできます。アカウントがルームを作成してメッセージを送信できます。フェデレーションが有効になっている場合、フェデレーションテスターがサーバーにアクセスでき、ユーザーが別のホームサーバー上のアカウントと通信できます。
小規模なRaspberry Pi環境においては、これは管理の終着点ではなく、あくまでもクリーンなベースラインです。空きストレージを監視し、Raspberry Pi OSとDockerのパッチ適用を最新の状態に保ち、データベースのバックアップを取り、追加機能を有効にする前にConduitの公式ドキュメントを必ずお読みください。ConduitはPiクラスのハードウェアにとって軽量で魅力的な選択肢ですが、ベータ版であることは単なる注釈ではなく、運用上の重要な考慮事項となります。
ポート25におけるZimbra送信メールの遅延エラーを診断します。キュー、MX DNS、ファイアウォール、プロバイダブロックを確認し、承認済みのSMTPリレーを設定してください。
Raspberry Pi 4上に、Conduit、Docker、NGINX、HTTPS、登録制御、フェデレーション、およびチェック機能を備えた軽量なMatrixホームサーバーをセットアップします。
共有の Jitsi Meet 環境に Jitsi Videobridge サーバーを追加し、登録とファイアウォール アクセスを設定し、ブリッジの選択を確認し、Octo が必要となるタイミングを把握します。
Zimbraに商用SSL証明書を安全にインストールするには、CSRを作成し、CAチェーンを構築し、鍵と証明書を検証し、展開し、サービスを再起動し、HTTPSを確認します。
BigBlueButtonのデフォルトロゴを変更したり、個々の会議にロゴを追加したり、より広範なインターフェースブランディングにカスタムクライアント構築が必要な場合を理解したりします。
Learn how to identify, archive, compress, and remove old Zimbra audit logs, when to avoid truncating audit.log, and how to verify that disk space and logging recover correctly.
Kopano dagentストレージサーバーへの接続障害のトラブルシューティングを行うには、サーバーの状態、server_socket、Unixソケットの権限、リモートリスナー、および制御された配信テストを確認します。
トランザクションロックを特定し、ロックストレージをRedisに移動し、クラスタをチェックし、安全に再テストすることで、ownCloudのファイルロックタイムアウトエラーを修正します。
Troubleshoot Matrix Synapse OOM problems during /sync by checking memory pressure, tuning caches carefully, isolating initial sync, and monitoring workers.
マスターキーモード、APCu、Redis、またはValkeyによるロック、そしてパフォーマンスへの影響を最小限に抑える段階的な導入により、Nextcloudのサーバー側暗号化を安全に有効化します。