[comment]: # ({1ac5c12f-7ef4b2b9})
# 17 セキュリティのベストプラクティス

[comment]: # ({/1ac5c12f-7ef4b2b9})

[comment]: # ({0694518e-b9719f19})
#### 概要

このセクションには、Zabbix を安全に設定するためのベストプラクティスが含まれています。

このセクションのプラクティスは Zabbix の動作に必須ではありませんが、システムのセキュリティを向上させるために推奨されます。

[comment]: # ({/0694518e-b9719f19})

[comment]: # ({cf23c7b6-40e70f9e})
#### UTF-8 エンコーディング

UTF-8 は、Zabbix でサポートされている唯一のエンコーディングです。  
これは、セキュリティ上の欠陥なく動作することが確認されています。  
他のエンコーディングの一部を使用すると、既知のセキュリティ上の問題があることに注意してください。

[comment]: # ({/cf23c7b6-40e70f9e})

[comment]: # ({001ddfc4-62eeb2ec})
#### Windowsインストーラのパス

Windowsインストーラを使用する場合は、インストーラが提供するデフォルトのパスを使用することを推奨します。
適切な権限なしにカスタムパスを使用すると、インストールのセキュリティが損なわれる可能性があります。

[comment]: # ({/001ddfc4-62eeb2ec})

[comment]: # ({43e520e9-be700c90})
#### ユーザー定義グローバルスクリプト内のマクロ

セキュリティを強化するため、ユーザー定義グローバル[スクリプト](/manual/web_interface/frontend_sections/alerts/scripts)では、プレーンなマクロの代わりに[マクロ関数](/manual/config/macros/macro_functions)を使用することを推奨します。マクロは自動的にエスケープされないためです。

[comment]: # ({/43e520e9-be700c90})

[comment]: # ({25002531-ba0d4036})
#### Zabbix セキュリティアドバイザリと CVE データベース

[*Zabbix セキュリティアドバイザリと CVE データベース*](https://www.zabbix.com/security_advisories) を参照してください。

[comment]: # ({/25002531-ba0d4036})

[comment]: # ({58a6c712-templates})
#### HTMLメールテンプレート

HTMLメールに使用する[メッセージテンプレート](/manual/config/notifications/media#message-templates)を作成または編集する場合は、すべてのマクロを必ず `htmlencode()` マクロ関数で囲んでください。
たとえば、次のようにします。

```default
<b>Problem started</b> at {{EVENT.TIME}.htmlencode()} on {{EVENT.DATE}.htmlencode()}<br><b>Problem name:</b>
{{EVENT.NAME}.htmlencode()}<br><b>Host:</b> {{HOST.NAME}.htmlencode()}
<br><b>Severity:</b>
{{EVENT.SEVERITY}.htmlencode()}<br><b>Operational
data:</b> {{EVENT.OPDATA}.htmlencode()}<br><b>Original problem ID:</b> {{EVENT.ID}.htmlencode()}<br>{{TRIGGER.URL}.htmlencode()}
```

`htmlencode()` を使用すると、マクロ値内のHTML文字がエスケープされ、通知へのHTMLの挿入を防げます（たとえば、攻撃者が悪意のある/フィッシング用リンクを通知に挿入することを防止できます）。

注意: Zabbixが提供する既定のHTMLメールメッセージでは、すでにマクロに対して `htmlencode()` が適用されています。
このガイダンスは、既存のテンプレートを編集する場合や新しいテンプレートを作成する場合に適用されます。HTMLメールの送信にテンプレートを使用する前に、マクロがエンコードされていることを確認してください。

[comment]: # ({/58a6c712-templates})
