Mastodon 用 Ubuntu の初期設定メモ

前回 ConoHa の VPS に Mastodon を立てようとしたことを書いた。

ConoHa VPS に Mastodon をインストール(失敗) – with a Christian Wife
https://wacw.cf/2018/08/29/mastodon-on-conoha/

その際、一般の人にも使ってもらうサイトにするつもりなので、サーバーの設定はきっちりやっておいた。主にセキュリティに関する初期設定をしたので、そのメモを書いておく。

なお、ConoHa VPS のテンプレートを使った Mastodon は、Ubuntu 18.04.1 LTS で動いている。

Mac から SSH ログインするには ConoHa の管理画面で「サーバー>[対象サーバー]>ネットワーク情報>IP アドレス」で IP アドレスを確認し、以下のコマンドを打てばいい。

$ ssh root@[IP アドレス]

(1)パッケージのアップデートをする。

$ sudo apt update
$ sudo apt upgrade

「apt-get」はもう古い?新しい「apt」コマンドを使ったUbuntuのパッケージ管理 | Linux Fan
https://linuxfan.info/package-management-ubuntu

(2)ユーザーを追加する。

$ adduser USER

のちに root ログインを禁止するため。

(3)2のユーザーを sudo グループへ追加する。

$ usermod -aG sudo USER

Ubuntuのユーザ追加とグループへの追加のコマンド | WWWクリエイターズ
http://www-creators.com/archives/337

Linuxでユーザーをグループに追加する
https://qiita.com/orangain/items/056db6ffc16d765a8187

(4)ログアウト($ exit)して2のユーザーでログイン、sudo が実行できるかテストしてみる。

参考:
Ubuntu | ユーザーとグループの確認および所有設定 – Tbpgr Blog
http://tbpgr.hatenablog.com/entry/20130902/1378134072

(5)/etc/ssh/sshd_config を以下のように編集し、SSH ログイン用のポートを変更する。

変更前:#Port 22
変更後:Port 2222

以下のコマンドで ssh を再起動。

$ service ssh restart

普通に SSH 接続できないことを確認する。新しいポート番号(ここでは 2222)でログインするには以下のようにする。

$ ssh USER@[IP アドレス] -p 2222

ConohaにVPSを設置して、SSHログイン、ポート番号変更、rootログイン禁止までを30分で!
https://qiita.com/ongaeshi/items/bb17ebfbd4d22057c8fd

(6)/etc/ssh/sshd_config を編集し、root ログインを禁止する。

変更前:PermitRootLogin yes
変更後:PermitRootLogin no

以下のコマンドで ssh を再起動。root でログインができなくなったことを確認する。

$ service ssh restart

なお、root でログインができなくなったが、$ su - root でいつでも root にユーザーを切り替えられる。

(7)/etc/default/ufw を編集し、IPv6 を無効化する。

変更前:IPV6=yes
変更後:IPV6=no

(8)ssh、http、https、メール、Mastodon 用のポートを開放し、それ以外のポートを閉鎖する。

$ sudo ufw allow 2222
$ sudo ufw allow 80
$ sudo ufw allow 443
$ sudo ufw allow 587
$ sudo ufw allow 3000
$ sudo ufw default deny

ufw を以下で有効化する。

$ sudo ufw enable

ステータスの確認は以下。

$ sudo ufw status

Ubuntu 最低限抑えておきたい初期設定
https://qiita.com/kotarella1110/items/f638822d64a43824dfa4