さくらのVPSでサーバーを新規作成したら、まずやってもらいたいことがあります。それはパケットフィルターを設定することです。
なぜパケットフィルターが必要か?
インターネット上に作成したサーバーは常に悪意のある第三者から攻撃される危険に晒されています。インストール直後のFreeBSDは、基本的にssh以外のサービスは外部に公開していないとはいえ、ネットワーク上で接続できるという事実は変わりません。
悪意のある第三者は攻撃して乗っ取ることができるターゲットを常に探していますので、たとえIPアドレスやFQDNを公開していなかったとしても攻撃される可能性はあります。その際に、攻撃の対象となるサービスを可能な限り減らしておくことが重要です。
パケットフィルターの設定
一般的なクラウドサービスでは「セキュリティグループ」が導入されています(AzureやAWSなど)。デフォルト拒否、指定したものだけを許可するルールが一般的です。さくらのVPSのパケットフィルターも有効にするとデフォルトは拒否になります(※)。そこで必要なサービスだけを許可に加えていきましょう。
(※厳密にはこちらに記載のあるように、いくつかのポートはデフォルトで許可になっています。)
sshの接続を許可する
まずはsshを追加しましょう。その際にsshの接続元のIPアドレスは可能な限り制限することが望ましいです。そこで「全てのポート」ではなく、自分がログインする接続元のIPアドレスだけの「一部許可」にして限定することをお勧めします。
なお、パケットフィルターでは全て許可にしておいて、サーバー側(つまりFreeBSD)で許可するIPアドレスを制限する方法もあります。しかし、こうするとIPアドレスが変わったり、設定を間違えた場合にFreeBSDにログインできなくなるリスクが生じます。
さくらのVPSのコントロールパネルは、どんなIPアドレスからでもアクセスできます。そこで、サーバー側ではなくパケットフィルター側でIPアドレスを制限することで、もしも接続元IPアドレスが変わってしまった場合でも変更できるようにしておくのです。
他のサービスの接続を許可する
今後、FreeBSDのサーバーでサービスを公開する(例えばWebとか)際には順次パケットフィルターに接続可能ポートを追加していくことになります。
ただ、現時点では特にサービスは公開していないので追加はしないでおきましょう。
次はいよいよFreeBSDサーバー側での設定を始めます。
参考
- さくらのVPS コントロールパネル
https://secure.sakura.ad.jp/vps/login - さくらのVPS マニュアル
https://manual.sakura.ad.jp/vps/index.html - さくらのVPS マニュアル パケットフィルター
https://manual.sakura.ad.jp/vps/network/packetfilter.html