Xserver VPSでMastodonインスタンスを立ち上げる方法
Mastodonインスタンス設置の流れ
- Xserver VPSの契約
- イメージタイプを選択
- 独自ドメインの設定
- DNSレコードの追加
- Mastodonサーバーの設定
- TLS証明書を取得・設定する
- 証明書の自動更新設定
- Mastodonの設定
- Mastodonサービスの起動
Xserver VPSの契約

- 推奨プランは4GBプラン(2GBプランでも可)
- イメージタイプは、アプリケーションタブ→その他のアプリケーションからMastodonを選択
- rootパスワードは、英字・数字・記号のいずれか2種類を含む9文字以上を記入し、メモしておく
イメージタイプを選択

イメージタイプは、
アプリケーションタブ → 他のアプリケーション からMastodonを選択
rootパスワード設定
rootパスワードは、英字・数字・記号のいずれか2種類を含む9文字以上を記入し、メモしておく。
SSH Keyは、「指定しない」でOK。
独自ドメインの設定

1.XserverVPSの管理画面、左メニューの「DNS設定」をクリック。
2.画面右上の「ドメインの追加」をクリック。
※ドメインは予め取得、設定済とする。
ドメイン名を入力して追加する。
DNSレコードの追加
「DNS設定」に戻ると登録したドメインが表示されているので「選択する」をクリック。
「DNSレコード設定の追加」をクリック。
ホスト名:空
種別:Aレコード
内容:サーバーのIPアドレス
それぞれ入力し、設定する。
ドメインの設定完了。
反映するまで1~2時間程度待つ。
確認方法
Windowsの場合は、コマンドプロンプトからping送信して名前解決できているか確認。

反応があれば次のステップに進む。
Mastodonサーバーの設定
/etc/nginx/sites-available/mastodon を編集する。

「example.com」と書かれている部分4か所を取得した独自ドメインに書き換えます。
TLS証明書を取得・設定する
証明書の取得
nginx起動
webroot認証
証明書の自動更新設定
/etc/cron.d/のディレクトリへ移動
letsencrypt-renewファイルを作成する。
ファイルの中身
cronデーモンの再起動
Mastodonの設定
mastodonユーザーにチェンジし、liveディレクトリに移動する。
Mastodonのセットアップ開始
| 設定する値 | 説明 |
|---|---|
| Domain name: | 独自ドメインを入力 |
| Do you want to enable single user mode? (y/N) | シングルユーザーモードとして設定を行うかどうかの項目 シングルユーザーモードの設定をしない(新規ユーザー作成をしない)場合、何も入力せずEnterキーを押してください。 |
| Are you using Docker to run Mastodon? (Y/n) | Xserver VPSのMastodonはDockerを使用していないのでnを入力。 |
| PostgreSQL host: (/var/run/postgresql) | 何も入力せずEnterキー。 |
| PostgreSQL port: (5432) | 何も入力せずEnterキー。 |
| Name of PostgreSQL database: (mastodon_production) | PostgreSQL内における、Mastodonデータベース名「/etc/motd」の「PostgreSQL mastodon db name」項目の値を入力。 デフォルトは「mastodon_production」 |
| Name of PostgreSQL user: (mastodon) | PostgreSQL内における、Mastodonデータベースに接続するユーザ名「/etc/motd」の「PostgreSQL mastodon user name」項目の値を入力。 デフォルトは「mastodon」 |
| Password of PostgreSQL user: | PostgreSQL内における、Mastodonデータベースに接続する際のパスワード「/etc/motd」の「PostgreSQL mastodon user password」の項目の値を入力。 設定必須:P@ssword0など大文字小文字英数字記号があることが理想 |
| Redis host: (localhost) | 何も入力せずエンターキー。 |
| Redis port: (6379) | 何も入力せずエンターキー。 |
| Redis password: | 何も入力せずエンターキー。 |
| Do you want to store uploaded files on the cloud? (y/N) | Mastodonに投稿された画像や動画などのファイルをクラウドサービスのオブジェクトストレージにアップロードするかどうかを設定する項目。 設定は任意(ここではN)。Yを選ぶとオブジェクトストレージへアップロードする際に必要な認証情報などが追加で求めらる。 |
| Do you want to send e-mails from localhost? (y/N) | Mastodonのアカウント作成や各種通知を送るメールをlocalhostから送信するかどうかを設定する項目。 適切なメールサーバから送信することが望ましいため、何も入力せずEnterキーを押す。 |
| SMTP server: (smtp.mailgun.org) | 利用するSMTPサーバー名を入力してください。 Gmailの場合は「smtp.gmail.com」 |
| SMTP port: (587) | 利用するSMTPサーバーのポート番号を入力。 Gmailの場合は587 |
| SMTP username: | 利用するSMTPサーバーのユーザーネームを入力。 Gmailの場合はメールアドレス |
| SMTP password: | 利用するSMTPサーバーのパスワードを入力。 Gmailの場合Gmailアカウントのパスワードではなく「Googleアカウントでアプリパスワードを入手して入力」 |
| SMTP authentication: (plain) | そのままエンターキー |
| SMTP OpenSSL verify mode: (Use arrow keys, press Enter to select) | 証明書の検証方法を選ぶ。特に使わなくてもOK ここでは、none、autoを選択 |
| E-mail address to send e-mails “from”: (Mastodon ) | Mastodonから届いたメールのFROMに表示したいメールアドレスを入力。 デフォルトではMastodonと表示 |
| Send a test e-mail with this configuration right now? (Y/n) | ここまで入力したメールの設定でテスト送信するかどうかを決定する項目。 メールの設定に失敗しているとMastodonのアカウントが作成できなくなるで、Yを選んで確認することがおすすめ。 |
| Send test e-mail to: | テストメールを送信するメールアドレスを入力。 テストなのでSMTP username:で設定したメールでも構いませんが別メールが理想。 |
| Save configuration? (Y/n) | ここまでの設定内容を保存するかどうかを決定する項目。 テストメールの配信状況などに問題が無ければ、Yを選んで保存。 |
| Prepare the database now? (Y/n) | Mastodon用のデータベースを構築するかどうか決定する項目。 Mastodonイメージではデータベースが空のため、Yを押してデータベースの構築を行う。 |
| Compile the assets now? (Y/n) | Mastodonのウェブ表示で使用するアセットのコンパイルを行うかどうか決定する項目。 実稼動時にかかる負荷などに影響するのでコンパイルする(Yを入力)ことがおすすめ。 |
| Do you want to create an admin user straight away? (Y/n) | Mastodonの管理者アカウントを作成するかどうかを決定する項目。 管理者アカウントが無くても正常に利用できるので作成は任意です。 作成する場合はYを入力しAdminユーザー名・Adminユーザー用のEメールを入力。その後、パスワードが自動で発行される。 |
Mastodonサービスの起動
exitコマンドでmastodonユーザーを抜ける。
マストドンのサービスを起動。
警告が出た場合は以下のコマンド。
マストドンへアクセス

VPSサーバーのセキュリティ強化
攻撃対象となりやすいSSH接続とFTP接続を遮断する設定が必要です。
UbuntuのUncomplicated Firewall (ufw)の設定を行います。
ファイアウォールを有効化してポートを閉じる
ファイアウォールを有効化
初期値が全通信が拒否の設定なので全通信を許可へ変更
SSH通信を拒否
FTP通信を拒否
ファイアウォール設定を再読み込み
ファイヤーウォールのステータス確認
必要に応じてポートを開く
閉じたポートの設定削除。
