Juniper SRX シリーズ ファイアウォール ログを収集する
このドキュメントでは、Bindplane を使用して Juniper SRX シリーズ ファイアウォールのログを Google Security Operations に取り込む方法について説明します。
Juniper SRX シリーズ ファイアウォールは、ステートフル インスペクション、侵入検知と防御(IDP)、アプリケーション セキュリティ、VPN などの次世代ファイアウォール(NGFW)機能を提供する高性能ネットワーク セキュリティ デバイスです。SRX ファイアウォールは、トラフィック、セキュリティ、システム、セッションのイベントに関する syslog メッセージを生成します。これらのメッセージは、一元的なセキュリティ モニタリングのために外部の SIEM プラットフォームに転送できます。
始める前に
次の前提条件を満たしていることを確認してください。
- Google SecOps インスタンス。
- Windows Server 2016 以降、または
systemdを使用する Linux ホスト。 - Bindplane エージェントと Juniper SRX ファイアウォール間のネットワーク接続。
- プロキシの背後で実行している場合は、Bindplane エージェントの要件に従ってファイアウォール ポートが開いていることを確認します。
- Juniper SRX ファイアウォールへの特権アクセス(J-Web または CLI 経由の root またはスーパーユーザー レベルのアクセス)。
Google SecOps の取り込み認証ファイルを取得する
- Google SecOps コンソールにログインします。
- [SIEM 設定] > [コレクション エージェント] に移動します。
- 取り込み認証ファイル をダウンロードします。Bindplane をインストールするシステムにファイルを安全に保存します。
Google SecOps のお客様 ID を取得する
- Google SecOps コンソールにログインします。
- [SIEM 設定] > [プロファイル] に移動します。
- [組織の詳細情報] セクションから [お客様 ID] をコピーして保存します。
Bindplane エージェントをインストールする
次の手順に沿って、Windows または Linux オペレーティング システムに Bindplane エージェントをインストールします。
Windows のインストール
- 管理者としてコマンド プロンプトまたは PowerShell を開きます。
次のコマンドを実行します。
msiexec /i "[https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi](https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi)" /quietインストールが完了するまで待ちます。
次のコマンドを実行して、インストールの内容を確認します。
sc query observiq-otel-collector
サービスは RUNNING と表示されます。
Linux のインストール
- root 権限または sudo 権限でターミナルを開きます。
次のコマンドを実行します。
sudo sh -c "$(curl -fsSlL [https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh](https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh))" install_unix.shインストールが完了するまで待ちます。
次のコマンドを実行して、インストールの内容を確認します。
sudo systemctl status observiq-otel-collector
サービスが [アクティブ(実行中)] と表示されます。
その他のインストール リソース
その他のインストール オプションとトラブルシューティングについては、Bindplane エージェントのインストール ガイドをご覧ください。
syslog を取り込んで Google SecOps に送信するように Bindplane エージェントを構成する
構成ファイルを探す
Linux:
sudo nano /opt/observiq-otel-collector/config.yamlWindows:
notepad "C:\Program Files\observIQ OpenTelemetry Collector\config.yaml"
構成ファイルを編集します。
config.yamlの内容全体を次の構成に置き換えます。receivers: udplog: listen_address: "0.0.0.0:514" exporters: chronicle/juniper_firewall: compression: gzip creds_file_path: '/etc/bindplane-agent/ingestion-auth.json' customer_id: 'your-customer-id-here' endpoint: malachiteingestion-pa.googleapis.com log_type: JUNIPER_FIREWALL raw_log_field: body ingestion_labels: env: production service: pipelines: logs/juniper_to_chronicle: receivers: - udplog exporters: - chronicle/juniper_firewall
構成パラメータ
各プレースホルダを次のように置き換えます。
レシーバーの構成:
listen_address: リッスンする IP アドレスとポート。すべてのインターフェースでリッスンするには、0.0.0.0を使用します。ポート514は標準の syslog ポートです(Linux ではルート権限が必要です)。非 root デプロイには1514を使用します。
エクスポータの構成:
creds_file_path: 取り込み認証ファイルのフルパス:- Linux:
/etc/bindplane-agent/ingestion-auth.json - Windows:
C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json
- Linux:
customer_id: Google SecOps のお客様 ID。endpoint: リージョナル エンドポイント URL:- 米国:
malachiteingestion-pa.googleapis.com - ヨーロッパ:
europe-malachiteingestion-pa.googleapis.com - アジア:
asia-southeast1-malachiteingestion-pa.googleapis.com - 完全なリストについては、リージョン エンドポイントをご覧ください。
- 米国:
ingestion_labels: YAML 形式の省略可能なラベル(例:env: production)。
構成ファイルを保存する
- 編集後、ファイルを保存します。
- Linux:
Ctrl+O、Enter、Ctrl+Xの順に押します。 - Windows: [ファイル> 保存] をクリックします。
- Linux:
Bindplane エージェントを再起動して変更を適用する
Linux で Bindplane エージェントを再起動するには:
次のコマンドを実行します。
sudo systemctl restart observiq-otel-collectorサービスが実行されていることを確認します。
sudo systemctl status observiq-otel-collectorログでエラーを確認します。
sudo journalctl -u observiq-otel-collector -f
Windows で Bindplane エージェントを再起動するには:
次のいずれかのオプションを選択します。
- 管理者としてコマンド プロンプトまたは PowerShell を開きます。
net stop observiq-otel-collector && net start observiq-otel-collector- サービス コンソール:
Win+Rキーを押して「services.msc」と入力し、Enter キーを押します。- observIQ OpenTelemetry Collector を見つけます。
- 右クリックして [再起動] を選択します。
サービスが実行されていることを確認します。
sc query observiq-otel-collectorログでエラーを確認します。
type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
Juniper SRX の syslog 転送を構成する
syslog メッセージを Bindplane エージェントに転送するように Juniper SRX ファイアウォールを構成します。
J-Web インターフェースの使用
- Juniper SRX J-Web インターフェースにログインします。
- [Configure] > [System Properties] > [Syslog] に移動します。
- [Host] セクションの [Add] をクリックして、新しい syslog サーバーを追加します。
- 次の構成の詳細を指定します。
- ホスト名: Bindplane エージェント ホストの IP アドレスを入力します(例:
192.168.1.100)。 - ポート:
514(または Bindplane エージェントで構成されたポート)を入力します。 - ログ接頭辞: ログメッセージの接頭辞(省略可)。
- ファシリティ: 転送するファシリティと重大度を選択します。
- any: 重大度レベル [info] 以上を選択します。
- ホスト名: Bindplane エージェント ホストの IP アドレスを入力します(例:
- [送信元アドレス] フィールドに、SRX 管理インターフェースの IP を入力します(省略可ですが、送信元を常に識別するために推奨します)。
- [OK] をクリックして保存します。
- [コミット] をクリックして構成を適用します。
Junos CLI の使用
- SSH またはコンソール経由で Juniper SRX に接続します。
構成モードに入ります。
configuresyslog ホストを構成します。
set system syslog host BINDPLANE_IP any info set system syslog host BINDPLANE_IP port 514 set system syslog host BINDPLANE_IP source-address SRX_MGMT_IP set system syslog host BINDPLANE_IP structured-data次のように置き換えます。
BINDPLANE_IP: Bindplane エージェント ホストの IP アドレス。SRX_MGMT_IP: SRX ファイアウォールの管理 IP アドレス。
セキュリティ ログのストリーミングを構成します(トラフィック ログとセッション ログの場合)。
set security log mode stream set security log source-address SRX_MGMT_IP set security log stream chronicle-stream host BINDPLANE_IP set security log stream chronicle-stream port 514 set security log stream chronicle-stream transport protocol udp set security log stream chronicle-stream format sd-syslog set security log stream chronicle-stream severity info set security log stream chronicle-stream category all次のように置き換えます。
BINDPLANE_IP: Bindplane エージェント ホストの IP アドレス。SRX_MGMT_IP: SRX ファイアウォールの管理 IP アドレス。
構成を commit します。
commitsyslog 構成を確認します。
show system syslog show security log
特定のログカテゴリを構成する
特定のログタイプを転送するには、個々のファシリティを構成します。
set system syslog host BINDPLANE_IP firewall any set system syslog host BINDPLANE_IP authorization info set system syslog host BINDPLANE_IP daemon info set system syslog host BINDPLANE_IP kernel info set system syslog host BINDPLANE_IP interactive-commands info
BINDPLANE_IP は、Bindplane エージェント ホストの IP アドレスに置き換えます。
syslog 転送を確認する
SRX で次のコマンドを実行して、アクティブな syslog の宛先を表示します。
show system syslogファイアウォールを介してテスト トラフィックを生成し、Bindplane エージェントのログにログが表示されることを確認します。
詳細については、Juniper SRX シリーズのドキュメントをご覧ください。
UDM マッピング テーブル
| ログフィールド | UDM マッピング | ロジック |
|---|---|---|
source-address |
event.idm.read_only_udm.principal.ip |
source-address から取得された値。 |
source-port |
event.idm.read_only_udm.principal.port |
source-port から取得された値が整数に変換されます。 |
destination-address |
event.idm.read_only_udm.target.ip |
destination-address から取得された値。 |
destination-port |
event.idm.read_only_udm.target.port |
destination-port から取得された値が整数に変換されます。 |
protocol-id |
event.idm.read_only_udm.network.ip_protocol |
プロトコル番号から名前にマッピングされます(6=TCP、17=UDP、1=ICMP)。 |
policy-name |
event.idm.read_only_udm.security_result.rule_name |
policy-name から取得された値。 |
source-zone-name |
event.idm.read_only_udm.additional.fields |
source-zone-name から取得した値が、キー source-zone-name とともに追加されます。 |
destination-zone-name |
event.idm.read_only_udm.additional.fields |
destination-zone-name から取得した値が、キー destination-zone-name とともに追加されます。 |
service-name |
event.idm.read_only_udm.target.application |
service-name から取得された値。 |
application |
event.idm.read_only_udm.target.application |
application から取得された値(service-name が存在しない場合)。 |
nat-source-address |
event.idm.read_only_udm.principal.nat_ip |
nat-source-address から取得された値。 |
nat-source-port |
event.idm.read_only_udm.principal.nat_port |
nat-source-port から取得された値が整数に変換されます。 |
nat-destination-address |
event.idm.read_only_udm.target.nat_ip |
nat-destination-address から取得された値。 |
nat-destination-port |
event.idm.read_only_udm.target.nat_port |
nat-destination-port から取得された値が整数に変換されます。 |
bytes-from-client |
event.idm.read_only_udm.network.sent_bytes |
bytes-from-client から取得された値が符号なし整数に変換されます。 |
bytes-from-server |
event.idm.read_only_udm.network.received_bytes |
bytes-from-server から取得された値が符号なし整数に変換されます。 |
packets-from-client |
event.idm.read_only_udm.additional.fields |
packets-from-client から取得した値が、キー packets-from-client とともに追加されます。 |
packets-from-server |
event.idm.read_only_udm.additional.fields |
packets-from-server から取得した値が、キー packets-from-server とともに追加されます。 |
elapsed-time |
event.idm.read_only_udm.additional.fields |
elapsed-time から取得した値が、キー elapsed-time とともに追加されます。 |
username |
event.idm.read_only_udm.principal.user.userid |
username から取得された値。 |
reason |
event.idm.read_only_udm.security_result.description |
reason から取得された値。 |
action |
event.idm.read_only_udm.security_result.action |
action が accept または permit の場合は、ALLOW に設定します。action が deny、drop、reject、または close の場合、BLOCK に設定します。 |
hostname |
event.idm.read_only_udm.principal.hostname |
syslog ホスト名フィールドから取得された値。 |
attack-name |
event.idm.read_only_udm.security_result.threat_name |
attack-name(IDP イベント)から取得された値。 |
severity |
event.idm.read_only_udm.security_result.severity |
重大度文字列からマッピング: info を INFORMATIONAL に、warning を MEDIUM に、error または major を ERROR に、critical を CRITICAL にマッピングしました。 |
event.idm.read_only_udm.metadata.vendor_name |
Juniper Networks に設定します。 |
|
event.idm.read_only_udm.metadata.product_name |
SRX Series Firewall に設定します。 |
|
source-zone |
event.idm.read_only_udm.principal.resource.attribute.labels |
変更履歴からマッピング |
destination-zone |
event.idm.read_only_udm.target.resource.attribute.labels |
変更履歴からマッピング |
REASON |
event.idm.read_only_udm.security_result.detection_fields |
変更履歴からマッピング |
PROFILE |
event.idm.read_only_udm.security_result.detection_fields |
変更履歴からマッピング |
host |
event.idm.read_only_udm.intermediary.hostname と event.idm.read_only_udm.intermediary.asset.hostname |
変更履歴からマッピング |
pid |
event.idm.read_only_udm.intermediary.process.pid |
変更履歴からマッピング |
ppid |
event.idm.read_only_udm.intermediary.process.product_specific_process_id |
変更履歴からマッピング |
CATEGORY |
event.idm.read_only_udm.security_result.detection_fields |
変更履歴からマッピング |
type |
event.idm.read_only_udm.security_result.detection_fields |
変更履歴からマッピング |
URL |
event.idm.read_only_udm.target.url |
変更履歴からマッピング |
src_value_zone |
event.idm.read_only_udm.additional.fields |
変更履歴からマッピング |
destinationzone |
event.idm.read_only_udm.additional.fields |
変更履歴からマッピング |
NESTED-APPLICATION |
event.idm.read_only_udm.additional.fields |
変更履歴からマッピング |
protocol_value |
event.idm.read_only_udm.network.ip_protocol |
変更履歴からマッピング |
SESSIONID |
event.idm.read_only_udm.network.session_id |
変更履歴からマッピング |
application_value |
event.idm.read_only_udm.principal.application |
変更履歴からマッピング |
src_address |
event.idm.read_only_udm.principal.ip と event.idm.read_only_udm.principal.asset.ip |
変更履歴からマッピング |
src_mac |
event.idm.read_only_udm.principal.mac と event.idm.read_only_udm.principal.asset.mac |
変更履歴からマッピング |
nat_src_address |
event.idm.read_only_udm.principal.nat_ip と event.idm.read_only_udm.principal.asset.nat_ip |
変更履歴からマッピング |
nat_src_value_port |
event.idm.read_only_udm.principal.nat_port |
変更履歴からマッピング |
src_value_port |
event.idm.read_only_udm.principal.port |
変更履歴からマッピング |
roles_names |
event.idm.read_only_udm.principal.user.attribute.roles.name |
変更履歴からマッピング |
interface |
event.idm.read_only_udm.security_result.detection_fields |
変更履歴からマッピング |
eth_type |
event.idm.read_only_udm.security_result.detection_fields |
変更履歴からマッピング |
direction |
event.idm.read_only_udm.security_result.detection_fields |
変更履歴からマッピング |
packet_info |
event.idm.read_only_udm.security_result.detection_fields |
変更履歴からマッピング |
packets_info |
event.idm.read_only_udm.security_result.detection_fields |
変更履歴からマッピング |
src_rule_type |
event.idm.read_only_udm.security_result.detection_fields |
変更履歴からマッピング |
src_rule_name |
event.idm.read_only_udm.security_result.detection_fields |
変更履歴からマッピング |
srv_name |
event.idm.read_only_udm.security_result.detection_fields |
変更履歴からマッピング |
srcpolicyname |
event.idm.read_only_udm.security_result.rule_name |
変更履歴からマッピング |
dest_address |
event.idm.read_only_udm.target.ip と event.idm.read_only_udm.target.asset.ip |
変更履歴からマッピング |
dst_mac |
event.idm.read_only_udm.target.mac と event.idm.read_only_udm.target.asset.mac |
変更履歴からマッピング |
nat_dest_address |
event.idm.read_only_udm.target.nat_ip と event.idm.read_only_udm.target.asset.nat_ip |
変更履歴からマッピング |
nat_dest_port |
event.idm.read_only_udm.target.nat_port |
変更履歴からマッピング |
dest_port |
event.idm.read_only_udm.target.port |
変更履歴からマッピング |
target_user_name |
event.idm.read_only_udm.target.user.userid |
変更履歴からマッピング |
user_value |
event.idm.ready_only_udm.metadata.product_event_type |
変更履歴からマッピング |
RTLOG |
event.idm.ready_only_udm.metadata.product_event_type |
変更履歴からマッピング |
RT |
event.idm.ready_only_udm.metadata.product_event_type |
変更履歴からマッピング |
WEBFILTER |
event.idm.ready_only_udm.metadata.product_event_type |
変更履歴からマッピング |
SNMPD |
event.idm.ready_only_udm.metadata.product_event_type |
変更履歴からマッピング |
FLOW |
event.idm.ready_only_udm.metadata.product_event_type |
変更履歴からマッピング |
DH |
event.idm.ready_only_udm.metadata.product_event_type |
変更履歴からマッピング |
PKID |
event.idm.ready_only_udm.metadata.product_event_type |
変更履歴からマッピング |
BGP |
event.idm.ready_only_udm.metadata.product_event_type |
変更履歴からマッピング |
SNMP |
event.idm.ready_only_udm.metadata.product_event_type |
変更履歴からマッピング |
RPD |
event.idm.ready_only_udm.metadata.product_event_type |
変更履歴からマッピング |
JTASK |
event.idm.ready_only_udm.metadata.product_event_type |
変更履歴からマッピング |
KMD |
event.idm.ready_only_udm.metadata.product_event_type |
変更履歴からマッピング |
APPIDD |
event.idm.ready_only_udm.metadata.product_event_type |
変更履歴からマッピング |
IFINFO |
event.idm.ready_only_udm.metadata.product_event_type |
変更履歴からマッピング |
sec_desc |
security_result.description |
変更履歴からマッピング |
processid |
target.process.id |
変更履歴からマッピング |
TSr" and "TSi |
additional.fields |
変更履歴からマッピング |
fw |
intermediary.ip |
変更履歴からマッピング |
msg1 |
security_result.summary |
変更履歴からマッピング |
desc |
metadata.description |
変更履歴からマッピング |
local_ip |
principal.ip |
変更履歴からマッピング |
remote_ip |
target.ip |
変更履歴からマッピング |
app |
principal.application |
変更履歴からマッピング |
pid |
principal.process.pid |
変更履歴からマッピング |
event_title |
metadata.product_event_type |
変更履歴からマッピング |
event_message |
metadata.description |
変更履歴からマッピング |
Local-ip |
principal.ip |
変更履歴からマッピング |
Gateway_Name", "vpn", "tunnel_id", "tunnel_if", "Local_IKE_ID", "Remote_IKE_ID", "AAA_username", "VR_id", "Traffic_selector", "Traffic_selector_Remote_ID", "Traffic_selector_local_ID", "SA_Type", "Reason", "threshold", "time-period", and "error-message_data |
observer.resource.attribute.labels |
変更履歴からマッピング |
target_ip |
target.ip |
変更履歴からマッピング |
principal_host |
principal.hostname |
変更履歴からマッピング |
user_id |
target.user.userid |
変更履歴からマッピング |
file_path |
target.file.full_path |
変更履歴からマッピング |
pid_2 |
target.process.pid |
変更履歴からマッピング |
server_ip |
target.ip |
変更履歴からマッピング |
event_time |
metadata.event_timestamp |
変更履歴からマッピング |
ACTION |
security_result.action_details |
変更履歴からマッピング |
SESSION_ID |
network.session_id |
変更履歴からマッピング |
APPLICATION |
principal.application |
変更履歴からマッピング |
pingCtlOwnerIndex", "pingCtlTestName", "usp_lsys_max_num_rpd", "usp_lsys_max_num", "urlcategory_risk", "application_sub_category", "source-zone", "destination-zone", "NESTED-APPLICATION", "CATEGORY", "REASON", "PROFILE", "source_rule", "retrans_timer" and "arp_unicast_mode |
additional.fields |
変更履歴からマッピング |
time |
metadata.event_timestamp |
変更履歴からマッピング |
ident |
target.application |
変更履歴からマッピング |
pid |
target.process.pid |
変更履歴からマッピング |
internal-protocol |
network.ip_protocol |
変更履歴からマッピング |
state |
security_result.detection_fields |
変更履歴からマッピング |
internal-ip |
principal.ip |
変更履歴からマッピング |
reflexive-ip |
target.ip |
変更履歴からマッピング |
internal-port |
principle.port |
変更履歴からマッピング |
reflexive-port |
target.port |
変更履歴からマッピング |
local-address |
principal.ip |
変更履歴からマッピング |
remote-address |
target.ip |
変更履歴からマッピング |
dns-server-address |
principal.ip |
変更履歴からマッピング |
domain-name |
principal.administrative_domain |
変更履歴からマッピング |
argument1 |
network.direction |
変更履歴からマッピング |
test-owner |
additional.fields |
変更履歴からマッピング |
local-initiator |
additional.fields |
変更履歴からマッピング |
test-name |
additional.fields |
変更履歴からマッピング |
SPI |
additional.fields |
変更履歴からマッピング |
AUX-SPI |
additional.fields |
変更履歴からマッピング |
Type |
additional.fields |
変更履歴からマッピング |
error-message |
security_result.summary |
変更履歴からマッピング |
rcvd |
network.received_bytes |
変更履歴からマッピング |
rule-name |
security_result.rule_id |
変更履歴からマッピング |
rulebase-name |
security_result.detection_fields |
変更履歴からマッピング |
export-id |
security_result.detection_fields |
変更履歴からマッピング |
repeat-count |
security_result.detection_fields |
変更履歴からマッピング |
packet-log-id |
security_result.detection_fields |
変更履歴からマッピング |
alert |
is_alert |
変更履歴からマッピング |
outbound-packets |
network.sent_packets |
変更履歴からマッピング |
inbound-packets |
network.received_packets |
変更履歴からマッピング |
outbound-bytes |
network.sent_bytes |
変更履歴からマッピング |
inbound-bytes |
network.received_bytes |
変更履歴からマッピング |
application-characteristics |
security_result.summary |
変更履歴からマッピング |
application-risk |
security_result.severity_details |
変更履歴からマッピング |
application-category |
security_result.detection_fields |
変更履歴からマッピング |
application-sub-category |
security_result.detection_fields |
変更履歴からマッピング |
dst-nat-rule-name |
security_result.detection_fields |
変更履歴からマッピング |
dst-nat-rule-type |
security_result.detection_fields |
変更履歴からマッピング |
src-nat-rule-name |
security_result.detection_fields |
変更履歴からマッピング |
src-nat-rule-type |
security_result.detection_fields |
変更履歴からマッピング |
encrypted |
security_result.detection_fields |
変更履歴からマッピング |
nested-application |
security_result.detection_fields |
変更履歴からマッピング |
packet-incoming-interface |
security_result.detection_fields |
変更履歴からマッピング |
session-id-32 |
network.session_id |
変更履歴からマッピング |
packets-from-client |
network.sent_packets |
変更履歴からマッピング |
packets-from-server |
network.received_packets |
変更履歴からマッピング |
elapsed-time |
network.session_duration.seconds |
変更履歴からマッピング |
source-destination-address |
principal.nat_ip |
変更履歴からマッピング |
source-destination-port |
principal.nat_port |
変更履歴からマッピング |
msg_data |
security_result.description |
変更履歴からマッピング |
threat-severity |
security_result.severity |
変更履歴からマッピング |
app_name |
target.application |
変更履歴からマッピング |
command |
target.process.command_line |
変更履歴からマッピング |
action |
security_result.action_details |
変更履歴からマッピング |
sec_description |
security_result.description |
変更履歴からマッピング |
application-name |
network.application_protocol |
変更履歴からマッピング |
subtype |
metadata.product_event_type |
変更履歴からマッピング |
source-interface-name |
security_result.detection_fields |
変更履歴からマッピング |
destination-interface-name |
security_result.detection_fields |
変更履歴からマッピング |
source-zone-name |
security_result.detection_fields |
変更履歴からマッピング |
destination-zone-name |
security_result.detection_fields |
変更履歴からマッピング |
service-name |
security_result.detection_fields |
変更履歴からマッピング |
application-name |
security_result.detection_fields |
変更履歴からマッピング |
変更履歴
さらにサポートが必要な場合 コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。