serverbuild cheat sheet
昨今珍しくなってきましたが、サーバ構築時に最低限実施することのメモです。
server
サーバ以外のものでアクセスを必要最低限に制限し、開けた部分にパッチを自動で当て、パッチあてが問題なく進んでいることを確認しましょう。
アクセスを必要最低限に制限する
Firewallで利用ポートを限定しましょう。サーバ自身で守ってはNGです。脆弱性のExploitは最近はかなりのスピードで行われると聞きます。ですから、専任の技術者の方が運用体制をとってメンテナンスしているホスティング先の会社・クラウドが準備するもので守りましょう。例えば、AWSであれば外部からのアクセスはALB+Cognito経由にする、などの対策がありますし、最近はVPSでもさくらInternetさんなどはFirewallでアクセス制限をしてくれるようです。
パッチを自動であてる
こちらの方の記事がわかりやすかったです。 https://www.mikan-tech.net/entry/raspi-unattended-upgrades
sshdのアクセスを公開鍵認証のみとする
さくらInternetさんの記事がわかりやすかったです。 https://knowledge.sakura.ad.jp/3543/
最近は各クラウド・ホスティング業者さんももしものログイン経路を準備されている場合が多いと思いますからいらっしゃらないと思いますが、秘密鍵の紛失が怖くてパスワードログインの無効化に二の足を踏んでいる方がいましたら、このような対策をとれば安心ですから、パスワード認証はぜひ無効化いたしましょう。
- 複数端末からログインできるようにしておく
- sshではなくコンソールログインの経路を準備しておく
システムからの通知をメールで受けられるようにしておく
昨今自分でメールサーバを立てることは少なくなっていると思います。Spam対策、Antivirus対策、Bounceメールの処理に加えて、メール自体がミッションクリティカルなものとして扱われるため、(お金を頂戴せずに)自分で運用するのが割に合わなくなってきています。
ただ、何かのサーバ内部からの通知の送信には相変わらず便利ですから、送信専用に立てることはあろうかと思います。 DigitalOceanさんのエントリがわかりやすかったので、ここで紹介させてください https://www.digitalocean.com/community/tutorials/how-to-install-and-configure-postfix-as-a-send-only-smtp-server-on-ubuntu-20-04