インストールガイド · 8 min read · Oct 20, 2025
Debian 12にFlarumコミュニティソフトウェアをインストールする方法

Flarumは、オンラインフォーラムを簡単に作成および管理するために設計されたオープンソースのコミュニティソフトウェアです。洗練されたモダンなインターフェースで構築されたFlarumは、パフォーマンスとシンプルさに最適化されたスリムなユーザーエクスペリエンスを提供します。Flarumは、管理者が特定のニーズや好みに合わせてフォーラムを調整できる強力な拡張システムを通じて、高度にカスタマイズ可能です。Flarumはレスポンシブデザインをサポートしており、さまざまなデバイスでの互換性を確保し、リアルタイム通知、リッチメディアの埋め込み、シームレスなモデレーションツールなどの機能を提供します。PHPとMySQLに基づいているため、幅広いウェブホスティング環境で利用可能であり、小規模なコミュニティやオンラインディスカッションのための効率的なプラットフォームを求める大規模な組織にアピールします。
このチュートリアルでは、Debian 12ベースのサーバーにFlarumコミュニティソフトウェアをインストールする方法を学びます。
前提条件
- Debian 12を実行しているサーバー。
- sudo権限を持つ非rootユーザー。
- サーバーを指す完全修飾ドメイン名(FQDN)、例えば
flarum.example.com。 - 1GB RAMのサーバーの場合、スワップストレージが有効になっていることを確認してください。
- すべてが更新されていることを確認してください。
$ sudo apt update && sudo apt upgrade - Flarumを実行するためにいくつかの必須パッケージが必要です。これらのいくつかはすでにサーバーにインストールされている場合があります。
$ sudo apt install curl wget nano software-properties-common dirmngr apt-transport-https ca-certificates lsb-release debian-archive-keyring gnupg2 ufw unzip -y
ステップ1 - ファイアウォールの設定
最初のステップはファイアウォールの設定です。Debianにはデフォルトでufw(Uncomplicated Firewall)が付属しています。
ファイアウォールが実行中かどうかを確認します。
$ sudo ufw status
次の出力が得られます。
Status: inactive
SSHポートを許可して、ファイアウォールを有効にした際に現在の接続が切断されないようにします。
$ sudo ufw allow OpenSSH
HTTPおよびHTTPSポートも許可します。
$ sudo ufw allow http
$ sudo ufw allow https
ファイアウォールを有効にします。
$ sudo ufw enable
コマンドは既存のssh接続を中断する可能性があります。操作を続行しますか(y|n)? y
ファイアウォールはアクティブで、システム起動時に有効になります
再度ファイアウォールの状態を確認します。
$ sudo ufw status
同様の出力が表示されるはずです。
Status: active
To Action From
-- ------ ----
OpenSSH ALLOW Anywhere
80/tcp ALLOW Anywhere
443 ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
80/tcp (v6) ALLOW Anywhere (v6)
443 (v6) ALLOW Anywhere (v6)
ステップ2 - Nginxのインストール
Debian 12には古いバージョンのNginxが付属しています。最新バージョンをインストールするには、公式のNginxリポジトリをダウンロードする必要があります。
Nginxの署名キーをインポートします。
$ curl https://nginx.org/keys/nginx_signing.key | gpg --dearmor \
| sudo tee /usr/share/keyrings/nginx-archive-keyring.gpg >/dev/null
Nginxの安定版リポジトリを追加します。
$ echo "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] \
http://nginx.org/packages/debian `lsb_release -cs` nginx" \
| sudo tee /etc/apt/sources.list.d/nginx.list
システムリポジトリを更新します。
$ sudo apt update
Nginxをインストールします。
$ sudo apt install nginx
インストールを確認します。Debianシステムでは、次のコマンドはsudoでのみ機能します。
$ sudo nginx -v
nginx version: nginx/1.24.0
Nginxサーバーを起動します。
$ sudo systemctl start nginx
サービスの状態を確認します。
$ sudo systemctl status nginx
? nginx.service - nginx - 高性能ウェブサーバー
Loaded: loaded (/lib/systemd/system/nginx.service; enabled; preset: enabled)
Active: active (running) since Thu 2023-11-09 12:08:18 UTC; 1s ago
Docs: https://nginx.org/en/docs/
Process: 1957 ExecStart=/usr/sbin/nginx -c /etc/nginx/nginx.conf (code=exited, status=0/SUCCESS)
Main PID: 1958 (nginx)
Tasks: 2 (limit: 1107)
Memory: 1.7M
CPU: 6ms
CGroup: /system.slice/nginx.service
??1958 "nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf"
??1959 "nginx: worker process"
ウェブブラウザでサーバーのIPアドレスを開きます。サーバーが正常に稼働していることを示す次のページが表示されるはずです。

ステップ3 - PHPのインストール
Debian 12にはデフォルトでPHP 8.2が付属しています。次のコマンドを実行してインストールできます。
$ sudo apt install php-cli php-fpm php-mysql php-xml php-gd php-json php-mbstring php-zip php-curl -y
常に最新のPHPバージョンを使用するか、複数のPHPバージョンをインストールしたい場合は、OndrejのPHPリポジトリを追加します。
まず、SuryのリポジトリPHP GPGキーをインポートします。
$ sudo curl -sSLo /usr/share/keyrings/deb.sury.org-php.gpg https://packages.sury.org/php/apt.gpg
Ondrej SuryのPHPリポジトリを追加します。
$ sudo sh -c 'echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list'
システムリポジトリリストを更新します。
$ sudo apt update
次に、Flarumに必要なPHPとその拡張機能をインストールします。
$ sudo apt install php-cli php-fpm php-mysql php-xml php-gd php-json php-mbstring php-zip php-curl -y
PHPが正しく動作しているか確認します。
$ php --version
次のような出力が表示されるはずです。
PHP 8.2.12 (cli) (built: Oct 27 2023 13:00:10) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.2.12, Copyright (c) Zend Technologies
with Zend OPcache v8.2.12, Copyright (c), by Zend Technologies
ステップ4 - Composerのインストール
ComposerはPHPの依存関係マネージャーです。Flarumはさまざまなコンポーネントをインストールおよび実行するためにComposerが必要です。
次のコマンドを実行してComposerをインストールします。まず、インストーラーを取得し、ハッシュを確認して検証し、その後PHPコマンドラインを使用してインストーラーを実行します。次に、バイナリを/usr/local/binディレクトリに移動します。
$ php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
$ php -r "if (hash_file('sha384', 'composer-setup.php') === 'e21205b207c3ff031906575712edab6f13eb0b361f2085f1f1237b7126d785e826a450292b6cfd1d64d92e6563bbde02') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
$ php composer-setup.php
$ php -r "unlink('composer-setup.php');"
$ sudo mv composer.phar /usr/local/bin/composer
Composerが正しくインストールされているか確認します。
$ composer --version
Composer version 2.6.5 2023-10-06 10:11:52
ステップ5 - MariaDBのインストール
MariaDBはMySQLのドロップイン置き換えであり、MariaDBを実行および操作するためのコマンドはMySQLと同じです。
Debian 12にはデフォルトでMariaDB 10.11.4が付属していますが、少し古くなっています。最新の安定版MariaDBを取得するには、公式リポジトリを使用する必要があります。
MariaDBのGPGキーをインポートします。
$ sudo curl -o /usr/share/keyrings/mariadb-keyring.pgp 'https://mariadb.org/mariadb_release_signing_key.pgp'
MariaDBのリポジトリファイルを作成します。
$ echo "deb [signed-by=/usr/share/keyrings/mariadb-keyring.pgp] https://deb.mariadb.org/10.11/debian `lsb_release -cs` main" | sudo tee /etc/apt/sources.list.d/mariadb-server.list
システムリポジトリリストを更新します。
$ sudo apt update
次のコマンドを実行してMariaDBサーバーをインストールします。
$ sudo apt install mariadb-server -y
MariaDBが正しくインストールされているか確認します。
$ mysql --version
次の出力が表示されるはずです。
mysql Ver 15.1 Distrib 10.11.6-MariaDB, for debian-linux-gnu (x86_64) using EditLine wrapper
mariadb --versionを使用してバージョンを確認することもできます。
MariaDBサービスはすでに有効になっており、実行中です。次のコマンドを使用してその状態を確認します。
$ sudo systemctl status mariadb
? mariadb.service - MariaDB 10.11.6データベースサーバー
Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; preset: enabled)
Drop-In: /etc/systemd/system/mariadb.service.d
??migrated-from-my.cnf-settings.conf
Active: active (running) since Tue 2023-11-14 08:42:03 UTC; 4min 1s ago
Docs: man:mariadbd(8)
https://mariadb.com/kb/en/library/systemd/
Process: 74903 ExecStartPre=/usr/bin/install -m 755 -o mysql -g root -d /var/run/mysqld (code=exited, status=0/SUCCESS)
Process: 74904 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
Process: 74906 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= || VAR=`cd /usr/bin/..; /usr/bin/galera_recovery`; [ $? -eq 0 ] && systemctl set-environment _WSREP_START_POSITION=$VAR>
Process: 74946 ExecStartPost=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
Process: 74948 ExecStartPost=/etc/mysql/debian-start (code=exited, status=0/SUCCESS)
Main PID: 74935 (mariadbd)
Status: "SQLリクエストを受け付けています..."
Tasks: 9 (limit: 1107)
Memory: 214.9M
CPU: 627ms
CGroup: /system.slice/mariadb.service
??74935 /usr/sbin/mariadbd
次のコマンドを実行して、rootパスワードの設定、匿名ユーザーの削除、リモートからのrootログインの禁止、テストテーブルの削除などのデフォルト設定を実行します。
$ sudo mariadb-secure-installation
rootパスワードを求められます。まだrootパスワードを設定していない場合は、Enterキーを押して続行します。
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!
MariaDBにログインしてセキュリティを確保するには、現在の
rootユーザーのパスワードが必要です。MariaDBをインストールしたばかりで、まだrootパスワードを設定していない場合は、ここでそのままEnterを押してください。
Enter current password for root (enter for none): [PRESS ENTER]
OK, successfully used password, moving on...
次に、unix_socketプラグインに切り替えるかどうかを尋ねられます。unix_socketプラグインを使用すると、Linuxユーザーの資格情報でMariaDBにログインできます。すでに保護されたrootアカウントがあるため、切り替えをスキップするためにnを選択します。
Setting the root password or using the unix_socket ensures that nobody
can log into the MariaDB root user without the proper authorisation.
You already have your root account protected, so you can safely answer 'n'.
Switch to unix_socket authentication [Y/n] n
... skipping.
次に、rootパスワードを変更するかどうかを尋ねられます。Debian 12では、MariaDBのrootアカウントは自動システムメンテナンスに密接に関連しているため、アカウントの認証方法を変更しないでください。そうしないと、パッケージの更新によって管理アカウントへのアクセスが削除され、データベースシステムが壊れる可能性があります。続行するにはnと入力します。
You already have your root account protected, so you can safely answer 'n'.
Change the root password? [Y/n] n
... skipping.
ここから先は、次の質問に対してデフォルトを受け入れるためにyを押してからEnterを押してください。これにより、匿名ユーザーへのアクセスが削除され、テストデータベースが削除され、リモートからのrootログインが無効になり、変更が適用されます。
By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them. This is intended only for testing, and to make the installation
go a bit smoother. You should remove them before moving into a
production environment.
Remove anonymous users? [Y/n] y
... Success!
Normally, root should only be allowed to connect from 'localhost'. This
ensures that someone cannot guess at the root password from the network.
Disallow root login remotely? [Y/n] y
... Success!
By default, MariaDB comes with a database named 'test' that anyone can
access. This is also intended only for testing, and should be removed
before moving into a production environment.
Remove test database and access to it? [Y/n] y
- Dropping test database...
... Success!
- Removing privileges on test database...
... Success!
Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.
Reload privilege tables now? [Y/n] y
... Success!
Cleaning up...
All done! If you've completed all of the above steps, your MariaDB
installation should now be secure.
Thanks for using MariaDB!
これで完了です。次回MariaDBシェルにログインするには、次のコマンドを使用します。
$ sudo mysql
プロンプトが表示されたらLinuxのrootパスワードを入力します。
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 39
Server version: 10.11.6-MariaDB-1:10.11.6+maria~deb12 mariadb.org binary distribution
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
exitを押してMariaDBシェルを閉じます。
ステップ6 - MariaDBの設定
MariaDBシェルにログインします。
$ sudo mysql
Flarumインストール用の新しいMySQLデータベース、データベースユーザー、およびパスワードを作成します。
MariaDB> CREATE DATABASE flarum;
MariaDB> CREATE USER 'flarumuser'@'localhost' IDENTIFIED BY 'yourpassword';
MariaDB> GRANT ALL PRIVILEGES ON flarum.* TO 'flarumuser'@'localhost';
flarum、flarumuser、およびyourpasswordをお好みの資格情報に置き換えます。強力なパスワードを選択してください。
また、rootアカウントと同じ権限を持つ管理ユーザーを作成します。
MariaDB> GRANT ALL ON *.* TO 'admin'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;
権限をフラッシュして、現在のセッションに保存されるようにします。
MariaDB> FLUSH PRIVILEGES;
MariaDBシェルを終了します。
MariaDB> exit
ステップ7 - Flarumのインストール
Flarumが存在するディレクトリを作成します。
$ sudo mkdir /var/www/flarum -p
-pディレクティブを使用すると、以前に存在しなかった親ディレクトリが作成されます。
Flarumディレクトリの所有権を現在ログインしているLinuxユーザーに変更し、sudoを使用せずにコマンドを実行できるようにします。
$ sudo chown -R $USER:$USER /var/www/flarum
インストールフォルダに移動します。
$ cd /var/www/flarum
Composerを使用してFlarumをダウンロードしてインストールします。
$ composer create-project flarum/flarum .
Flarumディレクトリの所有権をNginxサーバーのnginxに変更します。
$ sudo chown -R nginx:nginx /var/www/flarum
ディレクトリへの書き込みアクセスを許可します。
$ sudo chmod 775 -R /var/www/flarum
ここから先、Composerはsudo権限を必要とするため、推奨されません。ディレクトリのグループ権限をLinuxユーザーに変更し、Composerが完了した後に再びnginxに戻すこともできます。これは理想的な解決策ではなく、同じコマンドを繰り返し実行する必要があります。より永続的な解決策は、ユーザー名をnginxグループに追加することです。次のコマンドを実行して、現在ログインしているLinuxユーザーをnginxグループに追加します。
$ sudo usermod -a -G nginx $USER
新しいグループメンバーシップを適用するには、サーバーからログアウトして再度ログインするか、次のコマンドを入力します。
su - ${USER}
ステップ8 - SSLのインストール
SSL証明書を生成するためにCertbotをインストールする必要があります。Debianのリポジトリを使用してCertbotをインストールするか、Snapdツールを使用して最新バージョンを取得できます。Snapdバージョンを使用します。
Debian 12にはSnapdがインストールされていません。Snapdパッケージをインストールします。
$ sudo apt install snapd
次のコマンドを実行して、Snapdのバージョンが最新であることを確認します。
$ sudo snap install core && sudo snap refresh core
Certbotをインストールします。
$ sudo snap install --classic certbot
次のコマンドを使用して、Certbotコマンドが/usr/binディレクトリにシンボリックリンクを作成することで実行できることを確認します。
$ sudo ln -s /snap/bin/certbot /usr/bin/certbot
Certbotが正しく機能しているか確認します。
$ certbot --version
certbot 2.7.4
SSL証明書を生成します。
$ sudo certbot certonly --nginx --agree-tos --no-eff-email --staple-ocsp --preferred-challenges http -m [email protected] -d flarum.example.com
上記のコマンドは、サーバーの/etc/letsencrypt/live/flarum.example.comディレクトリに証明書をダウンロードします。
Diffie-Hellmanグループ証明書を生成します。
$ sudo openssl dhparam -dsaparam -out /etc/ssl/certs/dhparam.pem 4096
Certbotの更新スケジューラーサービスを確認します。
$ sudo systemctl list-timers
スケジュールされたサービスの1つとしてsnap.certbot.renew.serviceが表示されます。
NEXT LEFT LAST PASSED UNIT ACTIVATES
---------------------------------------------------------------------------------------------------------------------------
Tue 2023-11-14 15:39:00 UTC 24min left Tue 2023-11-14 15:09:02 UTC 5min ago phpsessionclean.timer phpsessionclean.service
Tue 2023-11-14 17:33:00 UTC 2h 18min left - - snap.certbot.renew.timer snap.certbot.renew.service
Tue 2023-11-14 19:03:30 UTC 3h 49min left Tue 2023-11-14 15:12:10 UTC 1min 58s ago apt-daily.timer apt-daily.service
SSL更新が正常に機能しているかどうかを確認するために、プロセスのドライランを実行します。
$ sudo certbot renew --dry-run
エラーが表示されなければ、すべて設定完了です。証明書は自動的に更新されます。
ステップ9 - PHP-FPMの設定
ファイル/etc/php/8.2/fpm/pool.d/www.confを開きます。
$ sudo nano /etc/php/8.2/fpm/pool.d/www.conf
PHPプロセスのUnixユーザー/グループをnginxに設定する必要があります。ファイル内のuser=www-dataおよびgroup=www-dataの行を見つけて、nginxに変更します。
; Unix user/group of the child processes. This can be used only if the master
; process running user is root. It is set after the child process is created.
; The user and group can be specified either by their name or by their numeric
; IDs.
; Note: If the user is root, the executable needs to be started with
; --allow-to-run-as-root option to work.
; Default Values: The user is set to master process running user by default.
; If the group is not set, the user's group is used.
user = nginx
group = nginx
...
ファイル内のlisten.owner = www-dataおよびlisten.group = www-dataの行を見つけて、nginxに変更します。
; Set permissions for unix socket, if one is used. In Linux, read/write
; permissions must be set in order to allow connections from a web server. Many
; BSD-derived systems allow connections regardless of permissions. The owner
; and group can be specified either by name or by their numeric IDs.
; Default Values: Owner is set to the master process running user. If the group
; is not set, the owner's group is used. Mode is set to 0660.
listen.owner = nginx
listen.group = nginx
Ctrl + Xを押してファイルを保存し、プロンプトが表示されたらYを入力します。
ファイルアップロードサイズを8MBに増やします。
$ sudo sed -i 's/upload_max_filesize = 2M/upload_max_filesize = 8M/' /etc/php/8.2/fpm/php.ini
PHP-FPMサービスを再起動します。
$ sudo systemctl restart php8.2-fpm
PHPセッションディレクトリのグループをNginxに変更します。
$ sudo chgrp -R nginx /var/lib/php/sessions
ステップ10 - Nginxの設定
次のコマンドを実行して、サイトの設定ファイルを追加します。
$ sudo nano /etc/nginx/conf.d/flarum.conf
エディタに次のコードを貼り付けます。
server {
listen [::]:80;
listen 80;
server_name flarum.example.com;
# httpをhttpsにリダイレクト
return 301 https://flarum.example.com$request_uri;
}
server {
listen [::]:443 ssl http2;
listen 443 ssl http2;
server_name flarum.example.com;
access_log /var/log/nginx/flarum.access.log;
error_log /var/log/nginx/flarum.error.log;
root /var/www/flarum/public;
index index.php;
include /var/www/flarum/.nginx.conf;
client_max_body_size 8M;
if ($host != "flarum.example.com") {
return 301 $scheme://flarum.example.com$request_uri;
}
# SSLコード
ssl_certificate /etc/letsencrypt/live/flarum.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/flarum.example.com/privkey.pem;
ssl_trusted_certificate /etc/letsencrypt/live/flarum.example.com/chain.pem;
ssl_session_timeout 1d;
ssl_session_cache shared:MozSSL:10m;
ssl_session_tickets off;
ssl_prefer_server_ciphers off;
ssl_stapling on;
ssl_stapling_verify on;
ssl_dhparam /etc/ssl/certs/dhparam.pem;
resolver 1.1.1.1 1.0.0.1 [2606:4700:4700::1111] [2606:4700:4700::1001] 8.8.8.8 8.8.4.4 [2001:4860:4860::8888] [2001:4860:4860::8844] valid=60s;
resolver_timeout 2s;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384;
tcp_nopush on;
types_hash_max_size 2048;
location ~ \.php$ {
fastcgi_pass unix:/run/php/php-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_index index.php;
include fastcgi_params;
}
}
このファイルは、/var/www/flarum/publicディレクトリにexample.comをホストすることを前提としています。Flarumには、Nginx設定に含めた/var/www/flarum/.nginx.confファイルにデフォルトのNginx設定が含まれています。
完了したら、Ctrl + Xを押してエディタを閉じ、プロンプトが表示されたらYを押してファイルを保存します。
ファイル/etc/nginx/nginx.confを編集のために開きます。
$ sudo nano /etc/nginx/nginx.conf
次の行をinclude /etc/nginx/conf.d/*.conf;の前に追加します。
server_names_hash_bucket_size 64;
Ctrl + Xを押してファイルを保存し、プロンプトが表示されたらYを入力します。Nginx設定をテストします。
$ sudo nginx -t
次の出力が表示され、設定が正しいことを示します。
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
Nginxサービスを再読み込みします。
$ sudo systemctl reload nginx
ステップ11 - Flarumインストールにアクセスし、完了する
ブラウザでhttp://example.comを開いてインストールを完了します。

上記で作成したデータベースの値を入力します。テーブルプレフィックスのエントリは空白のままにしてFlarumがデフォルトのプレフィックスを使用できるようにするか、fla_のようなカスタムプレフィックスを入力できます。ユーザー名、強力なパスワード、メールIDを選択してFlarumをインストールします。
Install Flarumボタンをクリックしてインストールを完了します。
インストールが完了すると、デフォルトのFlarumホームページが表示されます。

フォーラムは正常にインストールされ、使用する準備が整いました。
2FAを有効にする
二要素認証は、公共フォーラムにとって重要な機能です。Flarumにはこの機能がネイティブに搭載されていませんが、同様の拡張機能をインストールすることで有効にできます。この拡張機能はExtiverseを介して入手できます。Extiverseは、Flarumテーマやプラグインの非公式リポジトリです。
プラグインをインストールするには、まずFlarumディレクトリに移動します。
$ cd /var/www/flarum
Composerを使用してプラグインをインストールします。
$ composer require ianm/twofactor:"*"
次のステップは、Flarum管理パネルからプラグインを有効にすることです。ホームページの右上にある名前をクリックし、ドロップダウンメニューからAdministrationリンクをクリックします。

管理ダッシュボードに移動します。左側のメニューから2FA機能を選択し、オンにします。デフォルト設定で問題ないため、何も変更する必要はありません。

フォーラムのモデレーターに2FAを有効にしたい場合は、Modsボタンをクリックし、2FA required設定を有効にします。Save Changesボタンをクリックして完了します。

アカウントの2FAを有効にするには、フォーラムホームページの右上メニューから設定ページを開きます。左側のサイドバーからSecurityページを開きます。

Enable 2FAボタンをクリックすると、次のポップアップが開きます。

QRコードをスキャンするか、2FAアプリを使用して手動オプションを選択し、生成されたコードをボックスに入力します。完了したらVerifyボタンをクリックします。バックアップコードが表示されます。それを保存し、次のボタンをクリックして続行します。

再度確認を求められます。続行するにはOkボタンをクリックします。これでプロセスは完了です。

メール設定の構成
管理パネルからメール設定も構成する必要があります。FlarumはMailgun SMTPサービスをネイティブにサポートしているか、外部SMTPプロバイダーを使用できます。

私たちはAmazon SESサービスを使用しており、メールページのメールドライバーのドロップダウンメニューからsmtpを選択しました。Save Changesボタンをクリックし、次にSendボタンをクリックしてテストメールを送信します。ページはメールが正常に送信されたかどうかを通知します。次のメールが届くはずです。

Mailgunを使用したい場合は、ドロップダウンメニューからmailgunを選択します。必要なフィールドを入力し、設定を保存します。

テストメールを送信する前に、動作させるためにComposerパッケージをインストールする必要があります。サーバー上のFlarumディレクトリに移動します。
$ cd /var/www/flarum
Composerパッケージをインストールします。
$ composer require guzzlehttp/guzzle:^7.0
テストメールを送信して確認します。
結論
これで、Debian 12サーバーにFlarumコミュニティフォーラムソフトウェアをインストールするチュートリアルは終了です。質問やフィードバックがある場合は、下のコメントにお寄せください。
新しい投稿を受信箱で受け取る
スパムはありません。いつでも購読を解除できます。