公開 更新 新機能・アップデート執筆・監修 佐々木 航人が監修しながらAIを活用して執筆
自社運用のNetBird、MySQLは0.82.0の前に移行
NetBirdは10月29日の0.82.0で、管理サーバーのデータをMySQLに置く形をなくした。自社で動かしてMySQLを使っているなら、0.81系のうちにPostgreSQLへ移す。社内への出入り口を複数置く構成で、経路の切り替えを減らす変更も入った。
自社のサーバーでNetBirdの管理サーバーを動かし、データの保存先にMySQLを使っているなら、0.82.0へ上げる前にPostgreSQLへ移す。10月29日に出た0.82.0ではMySQLの保存先がなくなり、設定がmysqlのままだと管理サーバーが起動しない。MySQLは10月15日の版で非推奨になったばかりで、2週間で外れた。
SQLiteとPostgreSQLは、これまでどおり使える。管理サーバーを自社で動かしていなければ、この件は当たらない。
移行は0.81系のうちに済ませる
移行ツールのnetbird-mysql-migrateは、0.82.0の配布物から外れた。そのため、0.81.5のリリースにあるツールで、上げる前に移しておく。手引きにある流れは次のとおり。
- 管理サーバーを0.81系に上げ、MySQLのまま一度起動して、データベースの形を新しくする。ツールは管理サーバーと同じ版のものを使う。
- 空のPostgreSQLのデータベースを用意する。ツールはLinuxだけで動き、MySQLとPostgreSQLの両方につながる機械で動かす。
- 管理サーバーを止め、データのフォルダとMySQLのダンプを取っておく。
- ツールで写し、管理サーバーの設定で保存先をPostgreSQLに替えてから起動する。
ツールはMySQLを読むだけで、書き換えない。管理のデータに加え、操作ログ(events.db)と組み込みのIdP(idp.db)もPostgreSQLへ写す。バックアップにはパスワードのハッシュも入るので、作業する本人しか読めない権限にしておく。
気をつけたい点は2つ。まず、設定にある暗号化の鍵は変えない。写したデータは暗号化されたままなので、同じ鍵でないと管理サーバーが読めない。また、MySQLの時刻はUTCとして読まれる。管理サーバーを別のタイムゾーンで動かしているなら、ツールに--mysql-timezoneを付ける。
出入り口の切り替えと、SSHの修正
社内のネットワークへの出入り口になる端末(ルーティングピア)を複数台並べた構成では、経路の切り替えが減る。これまでは遅延を接続の最初に1回だけ測り、要らない場面でも経路を移していた。切り替えのたびにその経路のTCPの接続が切れるため、SSHなどの長い接続が落ちやすかった。
0.82.0では遅延を測り続け、差が一定の幅を超えたときだけ移す。幅は20ミリ秒以上、かつ今の遅延の20%以上などだ。移したあとは、少なくとも30秒は同じ端末を使う。一方、つながらなくなったときの切り替えは、これまでどおりすぐに行う。切り替えは理由とともに警告として記録され、netbird status -dでも見られる。
NetBirdに組み込まれたSSHサーバーでは、rootのログインを断る設定が、uid 0のすべての利用者に効くようになった。これまでは、rootという名前の利用者だけが対象だった。FreeBSDのtoorのような別名も、これで断れる。接続する側から渡される言語やタイムゾーンなどの値も、パスを含むものは受け付けない。
量子コンピューターに備える暗号の仕組み(Rosenpass)は非推奨になった。今は動くものの、今後の版で外れる可能性がある。NetBirdは、新しく組む構成ではこれに頼らないよう案内し、代わりの方法を用意しているとしている。
出典
この記事は、公式の発表をもとに、人が監修しながらAIを活用して執筆しています。執筆と監修は佐々木 航(株式会社Game)が担い、公開した記事も人が確認しています。記事の中身の責任は編集部が負います。誤りに気づいたときは 訂正の窓口 からお知らせください。直したときは、記事の末尾に更新の行を残します。