Inicio Integraciones Palo Alto NGFW (PAN-OS) — Syslog Configuration Guide

Palo Alto NGFW (PAN-OS) — Syslog Configuration Guide

Última actualización el Aug 28, 2026

Journey Step 3 Visual Guide — Palo Alto Networks PAN-OS Syslog Configuration

Audience: your organization's firewall administrator, managing a Palo Alto Networks firewall (VM-Series or hardware) running PAN-OS 10.2, 11.1, or 11.2.

When you need this guide. You are on Step 3 of the 4-step collector setup you are running from /client/settings/data-sources in the JawaSec portal:

  1. Prepare the collector machine — a small Linux host on your network.
  2. Run the command on that machine — the portal detects this automatically.
  3. Tell the firewall where to send its logs — this guide.
  4. Tell us how it went and save — the intake form back in the portal.

Everything this guide needs, and where to get it:

# Requirement Instructions to get it
1 Collector address (example used in this guide: <collector-ip>) Printed by the install command at the end of Step 2 of the in-portal journey
2 Syslog port (example: 9001) Printed by the install command at the end of Step 2, right next to the address
3 A PAN-OS account that can edit Device → Server Profiles, Objects → Log Forwarding, and Policies → Security Your firewall administrator grants it
4 Network reachability from the firewall to the collector on the syslog port Your network team confirms no firewall/ACL blocks TCP to the collector on that port
5 A Threat Prevention license, if you want Threat logs and not just Traffic logs Check under Device → Licenses
6 One maintenance window for the commit Schedule with your change-management process — PAN-OS commits once in this guide

Substitute your own values wherever the examples appear.

Wherever a screenshot involves something to click or verify, a red box marks it. Screenshots without a box show a state to compare against.


How it works

Your firewall sends its logs via syslog (TCP) to the Linux machine you provisioned in Step 1. That machine runs the Elastic Agent the Step-2 command installed, with the Palo Alto Networks (panw) integration; the agent forwards parsed events on to the JawaSec platform over an outbound HTTPS connection. Nothing on your network accepts inbound connections from the internet.


What you are about to configure

Getting logs out of a PAN-OS firewall takes four legs, in this order:

  1. Server Profile — where logs go: the syslog server's address, port, transport, and format.
  2. Log Forwarding Profile — what gets sent: which log types (Traffic, Threat) forward to that server.
  3. Attach the Log Forwarding profile to every Security rule whose traffic you want to see, including your Deny rules.
  4. Commit — nothing above reaches the firewall until this runs.

Before you start

Confirm the syslog port is free on the collector machine. The collector listens on that port itself once it is activated (see the note at the end of this guide about when that listener actually starts). If another service already holds the port — a pre-existing rsyslog or syslog-ng listener is the usual culprit — the collector cannot bind to it later and no data will ever arrive.

Run this on the collector machine:

sudo ss -lntup | grep 9001

Output from anything other than the collector process means a conflict. Stop or reconfigure that service before continuing.

Also confirm your firewall's time zone, at Device → Setup → Management → General Settings → Time Zone, before you configure anything — see the note below about why this matters.

You also need:

  • A PAN-OS account that can edit Server Profiles, Log Forwarding profiles, and Security policy.
  • Network reachability from the firewall to the collector on the syslog port (the connection itself will not succeed until Step 4 is complete — see below).
  • A Threat Prevention license if you want Threat logs. Without it you still get Traffic logs; no amount of policy tuning substitutes for the license.

Part 1 — Create the Syslog Server Profile

1.1 Log in

PAN-OS login screen

1.2 Confirm you are on the right device

PAN-OS dashboard for the target firewall

1.3 Open Server Profiles → Syslog

Select the Device tab in the top navigation bar. In the left-hand tree, expand Server Profiles and click Syslog.

Device tab and the Server Profiles → Syslog entry in the left tree

With no profile yet, the list is empty. Click Add at the bottom.

The empty Syslog profile list — the Add button is at the bottom left

1.4 Name the profile and add a server row

In the Syslog Server Profile dialog, type a profile Name — something recognizable for this collector. On the Servers tab, click the Add button inside the dialog, not the one on the page behind it. This adds one row to the servers grid.

Empty dialog: the Name field and the inner Add button of the Servers grid

1.5 Fill the server row

Click each cell to edit it:

Column Value Notes
Name e.g. collector Free-form label for this destination
Syslog Server <collector-ip> IP or FQDN of the host running Elastic Agent
Transport TCP Defaults to UDP — you must change it
Port 9001 Defaults to 514 — you must change it
Format IETF Defaults to BSD — you must change it
Facility LOG_USER Default is fine

Server row added, fields open for editing

Click OK.

Why IETF and not BSD. The collector's TCP input expects PAN-OS to send syslog messages using the IETF (RFC 5424) format, with RFC 6587 framing (octet counting) — the collector's TCP input enables this by default. BSD format over TCP will parse badly or not at all.

1.6 Confirm the profile

Profile listed after saving

Profile shown as created

This is what a correct profile looks like — server address, TCP, your syslog port, IETF, LOG_USER:

The finished profile: address · TCP · port · IETF · LOG_USER


Part 2 — Create the Log Forwarding Profile

Where: Objects → Log Forwarding

The server profile only says where to send. This step says what to send.

  1. Select the Objects tab, then Log Forwarding in the left tree.
  2. Click Add.
  3. Name the profile.
  4. Add two match-list entries, one per log type:
Entry name Log Type Filter Syslog destination
traffic-all traffic All Logs your syslog server profile
threat-all threat All Logs your syslog server profile

For each: click Add in the match list, give it a name, pick the Log Type, leave the Filter as All Logs, then under Forward Method → Syslog click Add and select your server profile.

  1. Click OK.

Log forwarding profile list

The log forwarding profile with both match-list entries

Add only the log types you actually intend to consume. Every extra type is volume you pay to ship, store, and eventually filter back out. traffic alone is usually the highest-volume class on a real perimeter.


Part 3 — Attach the profile to your Security rules

Where: Policies → Security

This is the step most often missed. A log forwarding profile that is not referenced by any rule forwards nothing, and the firewall reports no error whatsoever.

  1. Select the Policies tab, then Security.
  2. Click the name of a rule that carries the traffic you want to observe.

Security rule list

  1. Go to the Actions tab.
  2. Under Log Setting:
    • Tick Log at Session End.
    • Leave Log at Session Start unticked.
    • Set Log Forwarding to your profile.
  3. Click OK.
  4. Repeat for every rule that covers traffic you care about — including any explicit Deny rules, which on a real perimeter are usually the single largest source of events.

The Actions tab: Log at Session End ticked, Log Forwarding set to the profile

Why not Log at Session Start. Enabling both emits two records per session — one at start and one at end — roughly doubling volume while adding no verdict. The session-end record is the one that carries bytes, duration, application, and action. Turn on session-start only when you are specifically debugging session establishment.


Part 4 — Commit

  1. Click Commit at the top right, then Commit again in the dialog.
  2. Wait for the job to reach 100% and report Configuration committed successfully.

Nothing you configured above is live until this finishes. A commit on a VM-Series takes roughly one to two minutes.


A note on time zone

PAN-OS stamps syslog messages using the firewall's configured local time zone, found at Device → Setup → Management → General Settings → Time Zone.

If the firewall runs in a local zone while your collector and every other log source run in UTC, PAN-OS events land on the timeline offset by that many hours. Nothing errors. Dashboards populate. Correlation against other sources silently produces nothing, and every time-window query you write is wrong.

Two valid resolutions — pick one deliberately:

Option When to choose it
Set the firewall to UTC Greenfield deployments, anywhere you control the device. Simplest and removes the class of bug entirely.
Declare the offset to JawaSec The device's zone is not yours to change — tell your onboarding contact the firewall's time zone so it can be declared to the ingest pipeline.

Whichever applies, tell your onboarding contact which one — it needs to be on record for anyone debugging a time-window query later.


Important — the collector is not listening yet

Committing finishes the firewall's half of the job, but that alone does not make the collector reachable. The collector's syslog listener on port 9001 does not open when your machine enrolls in Step 2 — it opens when Step 4 (the intake form) is submitted and JawaSec's activation completes. Enrollment only registers the machine with our Fleet management; the syslog input itself is a separate configuration that is attached to your machine automatically once both your enrollment and your Step-4 submission are in.

Practically: if you test connectivity from the firewall to the collector's port before you finish Step 4, the connection will fail — by design, not because something is wrong on your side. Complete Steps 1-4 in order, including saving the intake form, before drawing any conclusion from a failed connectivity test.

You also never need to re-run the Step-2 install command after this guide. The syslog listener is delivered to your already-enrolled machine as a policy update pushed by Fleet — the same mechanism Step 2's agent already checks in through — not by reinstalling anything.


Verification

On the collector machine, confirm the firewall is connecting (only meaningful after Step 4 has completed and activation has run — see the box above):

ss -tn state established '( sport = :9001 )'

Established connections from the firewall's IP mean the transport works.

If you want to prove the firewall is trying even before the collector is ready, watch the packets directly:

sudo tcpdump -ni any "port 9001 and src host <firewall-ip> and greater 100" -A -s0 -c 6

A well-formed message from a correctly configured firewall carries an RFC 6587 octet-count prefix followed by the RFC 5424 header and the log body — for example 812 <14>1 2026-08-28T13:42:35-07:00 .... If you see that on the wire, the firewall is doing its job and any remaining problem is downstream. If you don't, the problem is profile or policy configuration (Parts 1-3).

In the JawaSec portal, the Step-3 card flips to done once you tick the confirmation checkbox and the Step-4 intake form is submitted; the source itself goes Active once JawaSec's automatic activation detects the first real events arriving from your collector — this does not happen instantly at Save.

If nothing arrives after Step 4

Each of these produces the same symptom — no data — so check them all before concluding the firewall is at fault.

# Cause How to confirm Fix
1 Something else owns the collector's port ss -lntup | grep 9001 shows a process that is not the collector agent Stop it / remove its listener
2 Log forwarding profile not attached to any rule Rule's Actions tab shows Log Forwarding: None Attach it (Part 3) — repeat per rule
3 Changes never committed Commit button still shows pending changes Commit (Part 4)
4 Format left at BSD over TCP Server profile shows Format: BSD Change to IETF (Part 1)
5 Transport left at UDP / port left at 514 Server profile shows UDP or 514 Change to TCP and the collector's port
6 No Threat Prevention license Device → Licenses has no Threat Prevention entry Traffic logs still work; THREAT requires the license
7 Traffic never reaches this firewall Confirm the traffic you generated actually routes through this device Route the test host through the intended firewall
8 Firewall cannot reach the collector From the firewall, test the syslog port Open routing / security groups on your side; confirm Step 4 completed on ours
9 Step 4 not actually submitted Go back to /client/settings/data-sources and confirm the card shows the intake step as done Submit the intake form
10 Time zone mismatch Data is present but not where you're looking See "A note on time zone" — search a wider window before concluding it's missing
11 TCP framing mismatch (internal, collector-side) Packets are visibly arriving (tcpdump shows the firewall sending) but zero documents are indexed This is not a firewall-side setting — it means the collector's input is not expecting RFC 6587 octet-counting framing. Report it to your JawaSec onboarding contact; nothing on the firewall needs to change

Notes

  • The Syslog Server field in the Server Profile dialog is a plain text field — enter your collector's address or FQDN directly.
  • Multiple syslog servers are supported within one profile. To keep a raw local copy of the logs alongside the collector, add a second syslog server entry on a different port of the same host and have a local syslog daemon write that port to a file.
  • One collector machine can receive both a Palo Alto and a Cisco FTD integration at once, one per port (9001 Palo Alto, 9002 Cisco by convention) — each keeps its own state in the portal.
  • A "Welcome to PAN-OS!" modal can appear on first login and blocks every click behind it, including the top navigation. Close it first.
  • The Add button appears twice when a dialog is open — once inside the dialog, once on the page behind it. Clicking the wrong one silently does nothing useful.

Questions

Direct any questions about this guide or the firewall change to your JawaSec onboarding contact.