ownCloud Enterprise Auditingを設定し、ログを確認する

ownCloud Enterpriseでユーザーと管理者の操作を記録するには、Enterprise専用の監査アプリをインストールして有効化し、そのadmin_auditログメッセージを管理者が保護および確認できるファイルにルーティングします。アプリの有効化は必須ですが、それだけでは不十分です。別のログ条件で監査メッセージを独自のファイルにルーティングしない限り、ownCloudのサーバーログレベルを1(情報)または0(デバッグ)に設定する必要があります。

必要な「アクティビティログ」を把握する

アクティビティ アプリと監査アプリは、それぞれ異なる目的で使用されます。アクティビティは、ファイルやコラボレーション イベントのユーザー向けストリームです。エンタープライズ監査アプリは、運用レビューと分析を目的とした構造化ログ エントリとして、選択されたユーザーおよび管理者の操作を記録します。アクティビティのみをインストールまたは構成しても、エンタープライズ監査証跡は有効になりません。ログイン、ファイル操作、共有の変更、ユーザー管理、アプリの変更、または OCC コマンドの追跡可能な記録が必要な場合は、監査を有効にしてください。ownCloud Server 11 の監査に関する最新のドキュメントには、これらのイベント カテゴリが記載されています。

確認済み:このアプリはエンタープライズ版のみで、ownCloud Marketplaceから入手できます。状況依存:アプリ管理画面と設定方法は、ownCloudのリリースと展開によって異なります。対処方法:アプリ一覧に表示されない問題のトラブルシューティングを行う前に、サーバーのバージョンと、エンタープライズ版サブスクリプションにこのアプリが含まれていることを確認してください。ownCloud監査機能ページにも、このアプリがエンタープライズ版の機能として記載されています。

ownCloudで監査を有効にする

  1. アプリがインストールされていることを確認してください。ownCloudアプリの設定で、「監査」を探してください。ownCloud 10.16 の公式ガイドでは、マーケットプレイスからダウンロードしてアプリの設定で有効にするように指示されています。ownCloud 11 のドキュメントでは、アプリをそこで有効にするように指示されています。見つからない場合は、パッケージをインストールする前に、エンタープライズライセンス、マーケットプレイスへのアクセス、およびサーバーバージョンのアプリ互換性を確認してください。
  2. アプリを有効にします。管理者としてアプリの設定を開き、監査が有効になっていることを確認してください。展開環境とバージョンによっては、コマンドライン管理者は、occ app:listインストールでサポートされているoccコマンドを使用してアプリの状態を検査することもできます。Web インターフェイスのアクティビティ フィードが表示されているからといって、監査アプリがアクティブであるとは限らないことに注意してください。
  3. 監査ログの記録先を選択してください。迅速な検証のために、ownCloudは監査ログを標準のファイルに書き込む場合がありますowncloud.log。継続的な運用においては、ログコレクターにルーティングして個別に確認しやすい、制限付きの監査ファイルを別途作成する方が便利です。
  4. 有効なログレベルまたは専用ルートを設定します。監査イベントを標準ログに記録する場合は、一般ログレベルを1または0に設定してください。あるいは、admin_audit専用ファイルに書き込むアプリIDの条件を追加することもできます。構文は、DockerでownCloud 11を使用しているか、PHP 10.16を使用しているかによって異なります。
  5. 無害なテストイベントを生成して検証してください。サインインするか、一時的なテストファイルを作成し、選択したログ出力先に新しい監査エントリがないか確認してから、設定を信頼してください。

監査記録を別のファイルにルーティングする

ownCloud Server 11 (Docker)

最新のownCloud 11ガイドには、OWNCLOUD_LOG_CONDITIONS環境変数に関する説明があります。ownCloudサービスのCompose環境にこの環境変数を追加し、ファイルパスをコンテナ内で使用可能な永続的な場所に調整してください。

OWNCLOUD_LOG_CONDITIONS=[{"apps":["admin_audit"],"loglevel":0,"logfile":"/mnt/data/files/admin_audit.log"}]

この例では、ownCloud で文書化されている Docker データ マウント パスを使用します。JSON 値を YAML に追加する際は有効なままにしておき、コンテナの置き換えによってログが破棄されないように、デプロイメントの永続的にマウントされたボリュームを使用します。通常のデプロイメント プロセスを使用して Compose の変更を適用し、サービスが起動してファイルが作成されることを確認します。Server 11 監査ガイドによると、個別の条件はグローバル ログ レベルに関係なく監査 メッセージをログに記録します。

ownCloud Server 10.16 PHPのインストール

ownCloudがドキュメント化した10.16 PHPベースの設定では、log.conditionsアクティブconfig.phpファイルにエントリを追加し、サンプルパスを置き換えてください。Webサーバーユーザーは、対象ファイルとそのディレクトリへの書き込み権限を持っている必要があります。

'log.conditions' => [
    [
        'apps' => ['admin_audit'],
        'logfile' => '/var/www/owncloud/data/admin_audit.log'
    ]
],

編集する前にバックアップを取りconfig.php、既に存在するキーを重複して作成しないでくださいlog.conditions。変更後はPHP構文とファイル権限を確認してください。10.16のPHP配列をDocker環境変数にコピーしたり、Server 11のJSON環境値をPHP設定ファイルにコピーしたりしないでください。これらは異なるデプロイメントインターフェースです。ownCloud 10.16の監査に関する公式手順を参照してください。

監査証跡が証明するものと証明しないもの

検証済み: 記録されたイベントには、ログインとログアウト、ファイルの作成/削除/移動操作、共有の変更、タグ、コメント、ユーザーとグループの管理、ユーザー設定、なりすまし、アプリの有効化、OCC の実行が含まれます。エントリにはイベント固有のフィールドが含まれ、分析用に構造化されています。ownCloud は JSON 互換レコードと Splunk などの統合について説明します。アクション: チームが監査する必要のあるカテゴリからテスト イベントを作成し、想定されるユーザー、アクション、時間、ファイル コンテキストが表示されることを確認します。

誤解:監査を有効にすると、自動的に別のadmin_audit.logファイルが作成される。実際には作成されません。別の保存先を設定しない限り、デフォルトではownCloudの標準ログが使用される場合があります。対処法:アプリの有効状態だけに頼るのではなく、実際のファイルパスとボリュームを確認してください。

制限事項:イベントログは、それ自体では完全なコンプライアンスプログラムではなく、カスタマイズされたデプロイメントにおけるすべてのアクションが記録されることを保証するものでもありません。利用可能なイベント、アプリのバージョン、フィルタ、ログレベル、および保持制御によって、確認できる内容が左右されます。対策:イベントの記録範囲をポリシーと比較し、保持およびアクセス制御を決定し、要件に応じて独立した保存が必要な場合は、重要な記録を適切に保護された中央ログシステムに転送してください。この最終的な制御に関する推奨事項は、運用上の安全対策です。ownCloudのアプリドキュメントは、イベントログと統合について説明しているものであり、特定の構成が法的要件を満たしていることを保証するものではありません。

アクセスと継続的な収集を確認する

テストイベントが発生したら、監査ファイルがサービスの再起動やコンテナの交換後も保持され、承認された管理者とログ収集者のみが読み取り可能であり、ログローテーションによってアプリの書き込み機能が損なわれないことを確認してください。標準ログを使用している場合は、ownCloud の管理ページに「ログファイルのダウンロード」オプションがあります。別のファイルに設定されている場合は、ドキュメントに記載されているように、そのファイルを手動で取得してください。イベントのタイムスタンプ、アクター、アクション、パスを承認チェックとして保持し、ログ設定のアップグレードや変更後に再度ログを確認してください。

コメントを残す

ownCloudのApache .htaccess警告を安全にクリアする

ownCloudのApache .htaccess警告を安全にクリアする

ownCloudのウェブルートに対してのみAllowOverride Allを設定し、アクティブなApache仮想ホストを検証し、安全にリロードして.htaccessルールを復元します。

ownCloud Enterprise Auditingを設定し、ログを確認する

ownCloudのエンタープライズ監査アプリを有効にし、admin_auditイベントを保護されたログファイルにルーティングして、実際のユーザー操作が記録されていることを確認します。

ownCloud Infinite ScaleをOIDCを使用してKeycloakに接続します。

ownCloud Infinite ScaleをOIDCを使用してKeycloakに接続します。

Keycloakのレルム発行者、Webクライアント、およびユーザークレームを整合させることで、ownCloud Infinite ScaleがWebクライアントとモバイルクライアント全体でユーザーを確実にサインインできるようにします。

ownCloudのファイルを共有を失うことなく新しい所有者に移動する

ownCloudのoccコマンドを使用して、所有ファイルと共有フォルダを転送し、何が残るかを把握し、古いアカウントを削除する前にアクセス権を確認してください。

ownCloud 10のクエリを安全にインデックス管理することで高速化

ownCloud 10のデータベースインデックスに注意が必要な場合、サポートされているスキーマ更新を安全に適用する方法、クエリチューニングやデータベースの変更がより適切な解決策となる場合について学びましょう。

ownCloudでLinuxマウントなしでSMB/CIFS共有をマウントする

外部ストレージを介してWindowsまたはSambaネットワーク共有をownCloudに接続し、認証情報を確認し、アクセスできないフォルダのトラブルシューティングを安全に行います。

occコマンドを使用してownCloudファイルバージョンを安全に削除する

occコマンドを使用してownCloudファイルバージョンを安全に削除する

1つのアカウントまたはすべてのユーザーについて、保存されているownCloud Server Classicのすべてのファイルバージョンを削除し、完全削除と保持期間に基づく有効期限切れを区別します。

ownCloudモバイル接続が拒否されましたか?URLと接続可能性を確認してください。

ownCloudモバイル接続が拒否されましたか?URLと接続可能性を確認してください。

ownCloudモバイル接続拒否の原因を特定するには、サーバーURL、電話ネットワーク、HTTPSエンドポイント、およびサーバーログを正しい順序で確認してください。

systemdタイマーを使用してownCloudのバックグラウンドジョブを確実に実行する

オンデマンドのジョブ実行を、ownCloudでサポートされているocc system:cronコマンドを15分ごとに実行するsystemdタイマーに置き換えます。

壊れたルートを見つけてownCloud WebDAV同期を復元する

Apache、Nginx、またはリバースプロキシを経由してWebDAVリクエストをトレースし、認証済みのPROPFINDテストを使用してownCloudの同期が機能することを確認します。