MukenVault
アップグレード (Founding 50 パートナー向け)
すでに稼働中の MukenVault Entry を最新版へ更新する手順です。新版が出ると check-update が Slack に通知します。適用は本ガイドの手順で、お客様の都合の 良いタイミングに実行していただきます。
0. はじめに (アップグレードの考え方)
MukenVault Entry の更新は pull モデルです。
mukenvault-check-update.timer は新版の有無を確認して
Slack に通知するだけで、バイナリを自動では置き換えません。
実際の適用はパートナーが本手順を明示的に実行したときに行われます。
これは、適用時に nginx が短時間 stop → restart されるためです。 トラフィックが落ちても支障のない時間帯をお客様自身で選べるよう、適用の タイミングを委ねています。
通知には深刻度 (severity) が付きます。 critical はセキュリティ修正などで早めの適用を推奨します。 technical は任意のタイミングで構いません。
1. アップグレード前の確認 (何もインストールしません)
現在の版と最新版の差分だけを表示します。
curl -fsSL https://install.mukenvault.com/upgrade.sh | sudo bash -s -- --check-only
このモードはインストールも変更も一切行いません。current (現在版) と
latest (最新版・severity・released・notes) を表示するだけです。
sudo mukenvault upgrade --check-only でも同じ確認ができます。
2. アップグレードの実行
2.1 推奨: CLI サブコマンド
sudo mukenvault upgrade
最も簡単な方法です。内部では upgrade.sh と同一の処理
(最新版の取得 → sha256 検証 → 展開 → インストーラー実行) を行います。
2.2 代替: スクリプトを直接実行
curl -fsSL https://install.mukenvault.com/upgrade.sh | sudo bash
⚠ 適用時に nginx が一瞬 stop → restart されます。 処理中の接続が短時間切れる可能性があるため、トラフィックの少ない 時間帯での実行を推奨します。
いずれの方法も root (sudo) が必要です。再アクティベーションに
ライセンスキー (/etc/mukenvault/license.key) を使用するため、
初回の setup.sh が完了済みであることが前提です。
3. アップグレードが行うこと (内部処理)
- 現在の版数を確認します (
mukenvault version)。 - admin の
/v1/version/latestから最新版メタデータ (version・severity・notes・sha256・tarball_url) を取得します。 - current / latest / severity / notes を表示します。 すでに最新の場合は何もせず終了します。
- ライセンスキー (
/etc/mukenvault/license.key) を確認します (再アクティベーション用)。 - 新しい tarball をダウンロードし、sha256 を検証します (不一致ならインストールを拒否します)。
- 展開してインストーラー (
installer/nginx-entry-install.sh) を 実行します (このとき nginx が再起動されます)。 - 新旧の版数を表示して完了します。
sha256 が一致しない場合、インストールは実行されません (改竄・破損を検知して安全側で停止します)。
4. アップグレード後の確認 (推奨)
sudo mukenvault status
期待される表示:
| 項目 | 期待値 |
|---|---|
| 1 行目 | MukenVault Entry v5.1.0-entry (新しい版数) |
| Status | FULL |
| Target | nginx (PID xxx, workers: N, libkeyless.so loaded ✓) |
| Protection | TLS key memory protection (active) |
続いて heartbeat を手動実行し、新しいバイナリで鍵保護が正常に動くことを確認します。
sudo mukenvault heartbeat
heartbeat はライセンスを更新し、DNA challenge-response を実行します (Founding 50 は default で observe モード。失敗してもログのみで運用は継続します)。
5. うまくいかないとき / ロールバック
インストーラーはアップグレード前のバイナリを自動でバックアップします。 問題が起きた場合はそこから復元できます。
/usr/lib/mukenvault/.bak.*— 旧 libkeyless.so (タイムスタンプ付き)/usr/local/bin/mukenvault.bak.*— 旧 CLI
nginx が起動しないなどの場合は、まずログをご確認ください:
journalctl -u nginx --since "5 minutes ago"。解消しない場合は support
へ上記ログを添えてご連絡ください。
回復・再適用目的で「最新でも強制的に入れ直す」場合は
… upgrade.sh | sudo bash -s -- --force を使用します。
| 症状 (exit code) | 確認 / 対処 |
|---|---|
| admin metadata 到達不可 / 不完全 (exit 3) | 一時的なネットワーク障害やメンテナンスの可能性です。現在のバイナリは稼働を継続します。時間をおいて再試行するか support へご連絡ください。 |
| license key file … not readable (exit 4) | 初回 setup.sh が未完了か、/etc/mukenvault/license.key に有効なキーがありません。先に setup.sh を実行してください。 |
| sha256 mismatch / install failed (exit 5) | ダウンロード破損の可能性があります。再実行してください。繰り返す場合は support へご連絡ください。 |
6. お問い合わせ
- 導入・運用に関する質問: support@mukenvault.com
- 脆弱性報告 (公開前): security@mukenvault.com
- その他: contact@superasystem.jp