Matomoのセキュリティ設定
Matomo (Piwik)チームは、Matomoのソースコードが安全であることを保証するために最善を尽くしています。これは次のようにして行われています。
- バグを発見した科学者に積極的に報酬を与える
- 外部専門家によるセキュリティ・レビューの実施と支援
- コミットに対するコードレビューの実施
しかし、これらのセキュリティ・ステップはMatomoソフトウェアに限定されている。Matomoをダウンロードしてインストールすると、さらに多くの要因が絡んでくる。
Matomoを安全に保つためのヒント
データをより安全にするために、日常生活の中で簡単に変えられることがいくつかあります。このページではMatomoのインストールを強化する方法を具体的に説明します。これにより、サーバー上の不要なデータを誰かが入力したり、変更したり、単に読み取ったりすることが困難になります。Matomoをインストールし、ウェブサーバを管理する人が、以下のガイドを読み、これらの変更の一部または全部を実装していることを確認してください。
Matomoサーバーをより安全にし、分析データをより安全にするためいくつかのヒントをいくつか紹介します。
- Matomoを別のMySQL(またはMariaDB)データベースにインストールする。
こうすることで、ハッカーがCMSのデータベースにアクセスしても、Matomoにアクセスできないようにしています。 - データベースの安全性を高める.
MySQLセキュアインストールツールを実行し、デフォルトのセキュリティ設定を改善します:mysql_secure_installation
MySQL サーバを保護し、ベストプラクティスを実施するために、すべてのセキュリティ質問に「はい」と回答することをお勧めします。これはマリアDBにも有効です。
- Matomo DBに新しいMySQLユーザーとパスワードを使用する。
どこでも同じユーザーとパスワードを使っていると、ハッカーがデータにアクセスしやすくなる。
ユーザー名とパスワードがデータベースごとに一意であることを確認し、SQLインジェクションが1つの製品にしか影響しないようにする。 - データベースサーバーがインターネットからアクセス可能でないことを確認してください。.
最適なセキュリティのために、データベースサーバはインターネットから利用できないようにしてください。Matomo ウェブ(アプリ)サーバのみが DBサーバに接続できるようにしてください。 - >常にhttps://を使用する。
Matomo の機密情報には、ログイン名、パスワード、token_auth(API
認証に使用)が含まれます。これらの情報は、Matomoサーバからのレスポンスに定期的に含まれ、トラフィックを見た誰もが見ることができます。公衆wi-fiや暗号化されていないWi-fiネットワークはスパイしやすいです。解決策は比較的簡単です。もしあなたが本当にセキュリティを気にしていて、誰もあなたのパスワードやAPIトークンにアクセスできないようにしたいのであれば、次のことを確認してください。常にhttps://
経由で Matomo に接続する。 - Matomoの自動SSLリダイレクトを有効にする参照:よくある質問を見る.
- MySQLデータベースをバックアップしconfig/config.ini.phpファイルをバックアップします。
MySQLデータベースをバックアップし、バックアップが機能していることを確認するためにリストアテストを行ってください。
また、設定ファイルはMySQLのパスワードを含むMatomoのインストール状況を保持するファイルなので、データベースと同様にバックアップをとって安全に扱ってください。 - 最新のPHP、MySQL(またはMariaDB)、ウェブサーバー(Apache/Nginx)、オペレーティングシステム(Linux/Windows)を使用する。
パフォーマンスとセキュリティのアップデートは、Matomoが必要とする一般的なツールから頻繁にリリースされます。Linux+Apache/Nginxのようなフリーソフトのみを使用し、最新バージョンを使用することを強くお勧めします。 - Nginxウェブサーバーを使用している場合
MatomoのNginx設定を使って、Matomoの一時ファイルmatomo/tmpとconfig/へのアクセスがブロックされていることを確認することをお勧めします。 - Matomoの変更ログを購読し、Matomoを常に最新の状態に保つ。
セキュリティ問題が報告された場合、できるだけ早く修正し、新しいバージョンをリリースするようにしています。
変更履歴を購読して、Matomoを常に最新の状態に保つこと。(ワンクリック自動アップグレードは試されましたか?) - アクティビティログプラグインの購入とダウンロード
アクティビティログ・プラグインは監査ログや監査証跡としても知られています。Matomoのスーパーユーザーは、組織やクライアントのメンバーによって実行されたアクションをすばやく確認することができます。このプレミアムプラグインは、Matomoのメーカーによって作成され、特に複数の人がMatomoを使用している場合、すべてのビジネスにお勧めします。 - 二要素認証を使用する
あなたのアカウントの安全のために、二要素認証を使用することを強くお勧めします。
二要素認証を有効にするには、「管理 =>
個人設定」に進みます。この設定を行う際には、モバイルデバイスを紛失した場合や、アクセスできなくなった場合に備えて、リカバリーコードを必ずバックアップしておいてください(暗号化されたパスワードマネージャーに保存するのが理想的です)。スーパーユーザーアクセスを持つユーザーは、すべてのユーザーに二要素認証を強制的に有効にすることができます。この場合、2ファクタ認証を設定せざるを得なくなり、2ファクタ認証を無効にできなくなる可能性があります。 - ウェブサーバーが書き込み可能なファイルやディレクトリはできるだけ少なくしてください。
Matomoを最適に動作させるために、Matomoのルートディレクトリ内にあるこれらのファイルやディレクトリへの書き込み権限をWebサーバーに与えることをお勧めします:config/config.ini.php,misc/userディレクトリ,matomo.js,piwik.js,tmpディレクトリ
tmpディレクトリは絶対に必要です。tmpディレクトリだけを書き込み可能にした場合、いくつかの機能は動作しないかもしれません。
ファイルパーミッションが制限されると、UIからワンクリックアップデーターを使用することができなくなります。また、UIからマーケットプレイスのプラグインをインストールすることもできなくなります。
そこでconfig/config.ini.phpファイルの[General]セクションでenable_auto_update =
0を設定することをお勧めします。
そうすれば、Matomoを手動で更新し、プラグインを手動でインストールすることができます - Matomoがプロキシの後ろにある場合プロキシヘッダーから最初のIPではなく、最後のIPを読み込むように設定したいかもしれません。Matomo
をプロキシの後ろにインストールするを参照してください。
プロフェッショナルなMatomo管理者のためのベストプラクティスのリスト
以下はその例である。プロの Matomo 管理者のためのベストプラクティス:
- 常に強力で複雑な新しいパスワードを使用する
すべての Matomo ユーザー、スーパーユーザーアクセスを持つすべてのユーザー、および Matomo
MySQLデータベースに安全なパスワードを使用することは、セキュリティを強化する基本的な方法です。 - 暗号化されたパスワード・マネージャーにパスワードを保存する
例えばKeyPassを使えば、コンピューター上でパスワードを管理したり、暗号化されたファイルを安全にバックアップしたり、オンラインで同期したりすることもできる。 - FTPではなくSSH(またはsFTP)を使用する。
最近では、wi-fiネットワークの盗聴やトラフィックの盗聴が簡単にできるようになっています。Matomoサーバへの接続はすべて暗号化され、ログインやパスワードは誰にも見られないようにしてください。
どうしてもFTPを使いたい場合は、パスワードをFTPソフトウェアに保存しないこと(多くのウィンドウズ・コンピュータですでに実行されているマルウェアの格好の餌食になる) - 自分のPCを最新の状態に保つ
Flashプラグイン、ブラウザ、オペレーティングシステムを含め、ご自身のコンピュータを常に最新の状態に保ってください。マルウェアの危険性.Acrobat Readerは使用しないでください:過去にあまりにも多くの深刻なセキュリティホールがありました。代わりに、例えばスマトラPDFを使用してください。 - ユーザーのプライバシーを尊重するためにMatomoの設定を変更する
Matomoでプライバシー機能を有効にするガイドをご覧ください。ウェブサイト訪問者のデータプライバシーについてもっと知ってください。
その他のヒント
- ウェブサーバーの機能を使って、一部のファイルだけにアクセスを制限したり、IPアドレスで制限したりする。
Apache ウェブサーバーを使用している場合、.htaccess ファイルを使用して、Matomo へのアクセスを IP アドレスに制限したり、さらに多くのオプションを制限したりすることは簡単です。htaccessフォーラムの投稿の例をご覧ください。
ファイルへのアクセスを制限する場合、以下のファイルへの外部アクセスを許可する必要があることに注意してください:- matomo.php,matomo.js,piwik.php,piwik.js,
- index.php?module=CoreAdminHome&action=optOutのURLに追加し、plugins/CoreAdminHome/javascripts/optOut.jsとfavicon.icoのファイルを追加して、オプトアウトiframeがパスワードプロプントなしで動作することを確認します。
- js/container_*.jsファイルにタグマネージャーコンテナファイルを配信できるようにします。
- ヒートマップやセッションレコーディングを使用する場合plugins/HeatmapSessionRecording/configs.phpを参照してください。
- スーパーユーザーができることを制限する。Matomoのスーパーユーザを100%信頼できない場合、スーパーユーザーによるリスクの高い行為を制限することができます。
- Matomoセキュリティプラグインを有効にし、すべてのセキュリティ問題を緑色に変更する。
Matomoの管理者リンクマーケットプレイスをクリックし、SecurityInfoプラグインをインストールしてください。これは、Matomoサーバーのセキュリティを自動的にテストし、推奨されるセキュリティのリストを報告します。
例えば、PHPとMatomoのバージョンが最新であること、display_errorsやmagic_quotes_gpcが無効であること、その他多くのテストを行います。例すべてのMatomo管理者は、SecurityInfoプラグインを有効にして、[管理] > [セキュリティ]メニューを表示することを強く推奨します。
サーバと PHP の設定を更新して、推奨される設定に従い、すべての項目が緑色になるようにしてください。
特に、phpの設定’display_errors’を無効にし、代わりにすべてのエラーをエラーログファイルに記録しているか確認してください。 - 最後の(オプションの)セキュリティのヒント:すべてのWebブラウジングにはFirefoxを使用してください。
最高のフリーソフトウェア・ブラウザ!
このリストに対するご意見や追加がありましたら、security at piwik.orgまでお知らせください。 - サーバーがインターネットに接続できない場合、またはインターネット接続を必要とするすべての機能を無効にしたい場合は、FAQをご覧ください。インターネットのないサーバーでMatomoを設定するには?
このページもご覧ください:Matomo セキュリティ・プログラム.
ハッピー&セキュア・アナリティクス!
追記:Matomoを最新状態に保つことをお忘れなく。