SaQura CertWatch — はじめに（Windows）

1. このフォルダを任意の場所に展開します（フォルダは中身をそろえたまま
   お使いください）。
2. 「SaQura CertWatch」（Q のアイコン）をダブルクリックします。監視が
   バックグラウンドで始まり、画面がブラウザで開きます。初回起動時は
   そこでパスワードを設定します。
   Windows SmartScreen の警告が表示された場合は「詳細情報」→「実行」を
   選択してください。
   動作ログは data\certwatch.log に記録されます。

3. Q を表示させる（初回のみ、お勧めします）: Windows 11 は新しいアイコンを
   最初は隠します。Q は、タスクバーの言語・Wi-Fi・時計の左にある矢印（^）の
   中にあります。常に表示させるには、タスクバーを右クリック →
   「タスクバーの設定」→「その他のシステム トレイ アイコン」→
   「SaQura CertWatch」のスイッチをオンにしてください。

Q が表示されている間は、監視が動作しています。右クリックすると
次の項目が選べます。
  ダッシュボードを開く  — ブラウザで画面を開きます（ダブルクリックと同じ）
  ログを開く            — data\certwatch.log
  監視を終了 …          — 確認のうえ、監視を終了します

その後、ドメイン（例: your-domain.co.jp）を登録してください。CertWatch は
すぐに検査を行い、同じドメインで見つかった他の証明書も候補として提案し、
以降は毎日自動で検査します。項目をクリックすると詳細画面
（証明書チェーン、失効状態、評価の理由）が開きます。

メール送信の設定: 歯車アイコン（⚙）→ メールサーバー・差出人・宛先を
入力 → 「テストメールを送信」。再起動なしで即時に有効になり、
アップデート後も保持されます。メール送信を設定しなくても、すべての情報は
画面と data\outbox フォルダで確認できます。

24 時間の常時稼働（サーバーでの運用にお勧めします）: 監視は Windows への
サインインに紐づいているため、サインアウトや再起動で停止します。これを
切り離すには、Windows サービスとして登録してください。管理者として
コマンドプロンプトを開き、パスをご自身の環境に合わせて実行します。

  sc.exe create SaQuraCertWatch binPath= "\"C:\CertWatch\CertWatch.Server.exe\"" start= auto DisplayName= "SaQura CertWatch"
  sc.exe description SaQuraCertWatch "証明書を監視し、有効期限を事前に通知します。"
  sc.exe start SaQuraCertWatch

サービスとして動作する場合も data\certwatch.log への記録は続きます。ここには
チェック結果（評価）、発報したアラート（記録番号付き）、障害が残り、各行に
日付・時刻・タイムゾーンが付きます。すべての操作の完全な記録は連鎖記録に
保存され、画面の「アクティビティ」で確認できます。Windows のイベントログ
（ソース「SaQura CertWatch」）に残るのは、サービスの開始と重大な障害だけです。
ウォッチドッグの動作を確認するにはファイルをご覧ください。イベントログはサーバー
自体の監視のためのものです。
画面はこれまでどおり http://127.0.0.1:5210 で開きます。CertWatch は意図的に
ローカルのみで待ち受けるため、この端末からご利用ください。サービスとして
動かす場合、通知領域の Q は不要です。その状態でダブルクリックすると
ダッシュボードだけが開きます。サービスを削除する場合は次のとおりです。
  sc.exe stop SaQuraCertWatch     そのあと     sc.exe delete SaQuraCertWatch

新しいバージョンへの更新: まず監視を終了し（Q を右クリック →「監視を終了 …」。
サービスの場合は sc.exe stop SaQuraCertWatch）、次に新しいフォルダを隣に
展開し、旧フォルダから data\ フォルダをコピーしてから、旧フォルダを
削除してください。data\ にはパスワード、検査履歴、メール設定、
レポートチェーンなど、すべての状態が保存されています。なお、古い監視が
動作したままだと、新しいほうをダブルクリックしても古いダッシュボードが
表示されます。

封印済みレポートは2つの方法で入手できます。歯車（⚙）→「封印済みレポート」→
「今すぐ作成」、または定期送信時に自動で作成されます。作成後は data/reports
フォルダーに保存され、レポートメールにファイルとして添付されます。

レポートを検証する（CertWatch なしでも可能）:
封印済みレポートには、上部に記録番号と内容のチェックサムが記載されています。
検証する側だけで計算し直せます。HTML ファイル内で data-seal を検索し、2つの
目印にはさまれた部分を UTF-8 のまま SHA-256 で計算すると、記載のチェックサムと
一致します。連鎖記録まで含めた完全な検証は、そのレポートを作成した
インストール先のフォルダーで次を実行してください:
   CertWatch.Server.exe --verify-report report.html
「レポートは変更されていません。内容・記録番号・連鎖記録のすべてが一致しました。」
と表示されれば、ファイルは変更されていません。ブラウザーで表示するだけの
レポートは、意図的に未封印です。
検証は必ず「ファイル」に対して行ってください（メールソフトの表示ではありません）。
定期送信ではレポートがファイルとしてメールに添付され、同じファイルがレポート
フォルダーにも保存されます。メールソフトの表示は描画であり、HTML が書き換えられる
ことがあります。その場合、チェックサムが一致しないのは当然です。

警告のタイミングを変更する（任意）: 残り 30 日で「監視」、14 日で「中」、7 日で
「高」、1 日で「重大」と判定します。証明書を手作業で取得している場合は、最初の警告を
早めるとよいでしょう。値は appsettings.json の CertWatch セクションにある
WarnDaysWatch / WarnDaysMedium / WarnDaysHigh / WarnDaysCritical（日数）です。
変更後はウォッチドッグを再起動してください。一覧の信号表示も同じ値に従います。

パスワードを忘れた場合:  通知領域の Q を右クリック →「パスワードをリセット …」。
  確認のうえ監視を一時停止し、アクセス情報をリセットして再起動します。その後
  ブラウザーで新しいパスワードを設定してください。データはそのまま残り、操作は
  連鎖記録に残ります。サービス運用やコマンドプロンプトからは従来どおり:
  CertWatch.Server.exe --reset-password
  （確認のうえ終了します。そのあとウォッチドッグを再起動してください。
  スクリプトでは --yes を付けます。）
  でアクセスをリセットし、ブラウザで新しいパスワードを設定します。
無人セットアップ（スクリプト用）:  初回起動前に
  set CERTWATCH_PASSWORD=<8文字以上>  を設定するとブラウザでの
  設定なしでパスワードが適用されます
  （set CERTWATCH_NO_BROWSER=1 でブラウザの自動起動を抑止できます）。

Windows ではすべての検査が完全に動作します。TLS 1.3 と失効状態
（OCSP/CRL）の検査も含みます。

デジタル署名: 「SaQura CertWatch.exe」と CertWatch.Server.exe には、
Microsoft の署名サービスを通じて「KyotoTech LLC」に発行された、公的に
信頼される証明書が付いています（発行者「Microsoft ID Verified CS EOC CA 04」）。
そのため Windows は起動時に発行元を表示します。確認方法: ファイルを
右クリック → プロパティ → デジタル署名。
固定のフィンガープリントは意図的に記載していません。このサービスは
短期間で失効する証明書を継続的に更新しながら発行するためです。各署名には
Microsoft のタイムスタンプが付いており、署名に使われた証明書が失効した後も
署名は有効なままです。
配布実績がまだ少ないファイルでは、SmartScreen が一度確認を求めることが
あります。これは証明書ではなく、ファイルの認知度によるものです。
重要: 証明書を「信頼されたルート証明機関」にインストールしないでください。
CertWatch がそれを求めることは一切ありません。管理されたシステム
（WDAC/AppLocker）の管理者は、EXE の署名から証明書を直接エクスポートし、
対象を絞ったルールで許可できます。

画面を使わずに起動する場合（管理者向け）: CertWatch.Server.exe は
コマンドプロンプトからフォアグラウンドでも動作します。終了は Ctrl+C です。


ライセンス条件・第三者コンポーネント・プライバシー
------------------------------------------------
本パッケージには次の3つのファイルが含まれています。
  LICENSE.txt ................ 使用許諾契約（EULA）。CertWatch で何ができるかを
                               定めています。ドイツ語版が優先し、英語版と
                               日本語版を併載しています。
  THIRD-PARTY-NOTICES.txt .... 製品に含まれる第三者コンポーネント（.NET ランタイム、
                               SQLite）とそのライセンス。
  PRIVACY.txt ................ CertWatch がお客様のシステムに保存する内容と、
                               外部への接続について。

ご質問・不具合・ライセンスに関するお問い合わせ: support@kyototech.co.jp
