セキュリティは奥が深い。段階を踏んでいこう。
sshd
/etc/ssh/sshd_config
を編集して、以下実行する。
$ sudo systemctl restart sshd.service
変更する前にオリジナルは大事にとっておこう
$ cp /etc/ssh/sshd_config /etc/ssh/sshd_config.original
$ chmod a-w /etc/ssh/sshd_config.original
sshd_config 変更点
ポート番号を変更する。デフォルト値(22)はみんな知っている。
Port xxxx
パスワード認証を禁止する。公開鍵で認証するのだから不要である。
PasswordAuthentication no
必要ならrootでのSSHログインを禁止する。 (ubuntuはデフォルトではrootログイン無効化されているので、そのままであればたぶん不要)
PermitRootLogin no
ufw
必要ポートのみ許可、それ以外全ポート禁止とするのが安全。
基本は禁止
$ sudo ufw default deny
必要なポートを許可。
$ sudo ufw allow xxxx
サーバで提供するサービス様のポートを指定。
少なくともSSH(sshd_configで設定したポート番号)は許可しておかないとSSHログインできなくなる。
ちなみに、許可したポートの削除はこちら
$ sudo ufw delete allow xxxx
状態の確認をする。
$ sudo ufw status
インストール直後だと無効化状態なので有効化する。
再起動後も有効である。一回だけで良い。
$ sudo ufw enable
ufw起動中に設定を繁栄させる場合は
$ sudo ufw reload