おひとりさまマストドンを立てた話(備忘録)
前書き
備忘録のきっかけ
こちらの記事でも軽く触れたのですが、mastodonの個人インスタンスを立てたときの話をもうちょっと備忘録兼ねてきちんと残しておこうかなと。
Xserverさんはいいぞ
個人サイトのドメインやレンタルサーバーはXserverさんを利用しているので、どうせなら同じところで作りたいなーと思い、色々見ているとXserverのVPSがmastodonのテンプレート対応しているとのことで「なるほどね!」と始めた次第。
よく考えなくても、Hostodonなどのホスティングサービスを使った方が早いし安いし個人で遊ぶなら断然そっちだろうなって思います。リージョンにもよるそうですが、月額550円からできるそうなので……僕の個人サーバーのレンタル代より安いな?Xserverくんは一年契約だとレンタルサーバー月額700円ほどです。
こちらのブログ記事を参考にしながら、Xserver VPSを登録。一番安い2GBのプランでも、個人でやるなら十分なのかなーと。一年契約で月額830円ぐらいだったかな。やっぱりホスティングサービスのほうが安いのでは?
misskeyじゃあかんのか?
Dockerなるものでmisskeyを立てられると聞いたものの、misskeyは更新頻度が早いし、僕一人で遊ぶところなので、リアクションシューティングこと絵文字機能はいらないなーと。チャンネルを作ったりすることもないですしね……ひとりだと……アンテナはあってもいいかな?と思ったりはしましたが、何分VPSとはなんぞ、という状態の人間向けのものが見当たらなかったので辞めました。
神ブログ記事を参考にインスタンスを建てます
いうて全て記事の通りにやるだけです
上記のブログ記事の通り、接続ポートを全部許可にしたり、サブドメインでのやりかたがわからなくて、新たにドメインを取得したり(レンタルサーバー借りてると、無料でドメイン取得できるんですが、このことを僕はすっかり忘れています。まあ、worksのドメインはないんですけども……)
取得したドメインはVPSのほうでDNS設定とDNSレコードの設定をする必要があります。これをしないとドメインとIPアドレスが一致しなくてページが出ないのだとかなんとか。
DNSレコードの種別はA、内容にVPSのIPアドレスをコピペするだけ。だいたい1時間ぐらいで浸透していくので、その間にご飯とかお風呂とかお昼寝するのがいいかもしれないし、別の作業をちょっとやっておくのも有り。
いじる時に必要なソフトがあるよ
Tera TermとWinSCPなるソフトをパソコンにインストール。Tera TermはなんかVPSに直接プログラミングっぽいことをするのに便利です。WinSCPはVPSにものを転送するときに使います。わからん。僕はその認識です。
インストール後の設定とかは神記事のこのあたりを見るといいです。僕にはよく分からないので……
中身を触っていきます
WinSCPでマストドンのファイルの書き換えをします。/etc/nginx/sites-available/のディレクトリにあるmastodonファイルにアクセス。4カ所あるexample.comを全部独自ドメインに書き直すだけ!そしたらファイルを上書き保存します。
そんなこんなをしていたら、きっとドメインが浸透したりして、http:// 独自ドメインを入力すると拒否されたとかいうワードが出ると思います。IPアドレスが見つかりません。」と表示されたらまだ浸透していないか、DNSレコードの種別が間違ってます。
問題なく拒否されたら(不思議な日本語~~~~!!!)下のコマンドを一行ずついれていきます。
certbot certonly --standalone -d ドメイン名 (
ドメイン前後は半角空白)
systemctl start nginx
certbot certonly --webroot -d ドメイン名 -w /home/mastodon/live/public/
そしたらWinSCPにもどって、/etc/cron.d/のディレクトリに移動して、新規ファイルを作ります。名前はletsencrypt-renewです。ファイルをひらいたら、内容に下をコピペしました。
0 0 1 * * root certbot renew --pre-hook "service nginx stop" --post-hook "service nginx start"
入力して保存したら、Tera Termで
systemctl restart cron
を入力。VPSの設定はこれでOKだとかなんとか。
Tera Termでマストドンの設定をしていきます。下記のコマンドを入力していくと、3つ目のコマンドでマストドンの設定ウィザードが開きます。
su - mastodon
cd ~/live
RAILS_ENV=production bundle exec rake mastodon:setup
設定に関しては神記事と首ったけになるのをオススメします。
アプリパスワードに関してはわからん!と叫びながらやってたらなんかできたんですが、おそらくここの記事にたどり着いていたような気がします。わからん。もう覚えてない。
最後のDo you want to create an admin user straight away? (Y/n)ですが、Mastodonの管理者アカウントを作成するかどうかを決定する項目です。管理者アカウントが無くても正常に利用できるので作成は任意なんですが、作っておくとテーマのCSSをいじれたりするので作っておくといいかも。
あとで足すなら、この神記事にもあるんですが、
su - mastodon
cd live
RAILS_ENV=production bundle exec bin/tootctl accounts modify 該当ユーザー名 --role Admin
ってやったら行けたような気がします。大文字小文字の区別があるみたいなので、adminってやるとエラーはかれたりします。しました。
最後に開いたポートから攻撃されないようにします
最後に神記事に従って、通信制御をします。もう全部神の記事を見てくれれば全部分かるよ。大丈夫だよ。
さいごに
自分だけのマストドンインスタンスを立てたら、あとはこっちの管理者向けチェック項目の記事を見ながら定期的にインスタンスのお手入れをしていく感じになるんじゃないんですかね。僕は立てたばかりなので……これからのおはなしです……