【Mastodon3.2】CentOS7のセキュリティ

 

CentOS7が起動したので、マストドンを入れる前に、ある程度のセキュリティにしておこうと思った。

さくらVPSでは、selinuxは無効状態だった。時刻同期も問題はなかった。ネットワークの設定も出来ていた。bash-completionパッケージも設定されている。firewall も設定したほうが良いと思ったが、フィルタリングの機能があるので後回しにする。何が必要になっているのかわからないからだ。

SSHの設定だけはしっかりと好みに合わせておこなう。

ポート番号を標準の22から変更する。ユーザを一つ作る。いつも使っているユーザ名で作っておく、パスワードを設定して、グループも変更する。

useradd -p passwd user名

usermod -g wheel user名

つぎに、SSHの設定を変更する。/etc/ssh/sshd_config を開いて編集をおこなう。

Port 22 を、任意のポートに変更する。

PermitRootLogin no
PasswordAuthentication no

この二つの設定を no にする。上は、root ではログイン出来なくする。パスワード認証方式を無効にします。

service ssh restart

サービスのリスタートをおこなう前に、作成したユーザに秘密鍵を登録します。
Windows10 からの接続は、TeraTerm を使って行っています。
鍵の作成や、転送までは、ここ(秘密鍵と公開鍵の作成と公開鍵のサーバへの転送(Tera Term版))を参考にしてください。
転送は、作成したユーザでログインして行います。

転送後は、ユーザにログインします。

ファイルが転送されていることを確認してください。ユーザがroot では意味がありません。

次に、公開鍵を設定します。
フォルダは、.ssh になるので、なかったので、作成します。

mkdir ~/.ssh
chmod 700 ~/.ssh
cat ~/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys

これで、準備が出来たので、SSHをリブートします。接続が切れるので、設定のミスがないか確認してください。

service ssh restart

再度ログインを行います。作成したユーザでログインを行います。

ログインが無事終了したら、

不要なサービスを停止します。

systemctl disable auditd.service
systemctl disable abrt-ccpp.service
systemctl disable abrt-oops.service
systemctl disable abrt-xorg.service
systemctl disable abrt-vmcore.service
systemctl disable abrtd.service
systemctl disable libstoragemgmt.service
systemctl disable smartd.service
systemctl disable libvirtd.service
systemctl disable qemu-guest-agent.service
systemctl disable dmraid-activation.service
systemctl disable mdmonitor.service
systemctl disable kdump

なんとなく設定されていないサービスも有ったけど、CentOS7 を前にセットアップした時から使っているので、そのまま流し込みます。

最後にお待ちかねの、yum -y update

3-4分は必要だっったが、これで下準備が出来た。

これで、さくらが公式に出しているスクリプトを流せば、マストドンが立ち上がると思っていた。

しかし、事情は違っていた。

スタートアップスクリプトは、OSのインストール時に選択して実行しないと組み込みが出来ない。

呆然としてしまったが、しょうがない。マストドンを立ち上げるためだ・・・。悪あがきとして、スクリプトの内容が読めるので、スクリプトを見ながら、設定を試みるが、途中で挫折した。エラーが出てくるし、入っていないモジュールを探すのも大変だった。

悩むこと数時間・・・。

OSの再セットアップを決断。IPが変わらないことが幸いだった。