Deployment Automation

Sophos XGS 107: How to deploy with a Python script (paramiko / netmiko / native API)

By Sai Kiran Pandrala · reviewed by Sai Kiran Pandrala, Editor Last verified: 2026-05-30

⚡ At a glance
VendorSophos
Operating systemSFOS (Sophos Firewall OS)
CategoryDeployment Automation
Skill levelIntermediate to advanced
DIY-able?Yes with CLI access; some scenarios need Sophos Support + RMA.

When I bring a Sophos fleet under automation control the first artifact I generate is a baseline system support-tools generate-debug-info capture per device, archived in object storage. That gives Sophos Support a known-good reference point and gives me a fast diff target when something drifts on the XGS 87 units.

Activate-and-verify is the heart of every reliable pipeline. SFOS (Sophos Firewall OS) either gives you an explicit commit/activate command or expects (auto-saves in Web UI; CLI changes persist), either way, never trust the push without a follow-up read.

Steps below are the unsexy version. They work. The exciting version is what you write after one too many 3am rollbacks.

What this guide covers

How to deploy with a Python script (paramiko / netmiko / native API) for Sophos XGS 107 (SFOS (Sophos Firewall OS)).

Step-by-step

  1. Choose the automation surface: vendor controller, API, or CLI scripting.
  2. Verify reachability + credentials from your automation host.
  3. Test the change on a single device + maintenance window.
  4. Roll out in waves of 10-20 devices to limit blast radius.
  5. Pre-collect baseline, push the change, post-collect; diff.
  6. Roll back any device whose post-check fails.

Sample CLI invocation

# Manual baseline
system version (CLI)
system status
system interface show

# Push change (via vendor CLI)
system configuration
system interface add name=Port1 ipv4-address=10.0.0.1 netmask=255.255.255.0 zone=LAN
(auto-saves in Web UI; CLI changes persist)

# Verify
system interface show

Best practices

Frequently asked questions

Will this work on my specific SFOS (Sophos Firewall OS) version?

The procedure reflects current SFOS (Sophos Firewall OS) behaviour. Older releases may need minor syntax adjustments. use the CLI help (? or tab-completion) to verify.

Should I open a Sophos Support case immediately?

Open one if you suspect hardware failure or the symptom persists after a maintenance-window reload. Make sure your support entitlement is active first.

Where can I find the Sophos official documentation?

https://support.sophos.com/support/s/, search the product family + feature name.

Is this procedure safe in production?

Test in a lab or maintenance window first. Capture pre-change state so you can roll back.

Related guides worth a look while you sort this one out:

References


Reference material, not professional advice. Validate against your specific SFOS (Sophos Firewall OS) version and test in a non-production environment before applying.

What changed recently?

Fault diagnosis on a Sophos device goes faster when you map the symptom to a recent change:

The answer narrows the root cause to a manageable subset.

Before you start

A few things to confirm so the Sophos device fix goes cleanly:

Quick verification

Before you walk away from a Sophos device fix, run through:

1. Reproduce the original trigger. does the issue reappear? 2. Check the device's status / health screen for any new alerts. 3. Confirm paired devices (app, hub, controller) reconnected. 4. Save / commit any configuration changes per the device's normal workflow. 5. Note the change in your maintenance log with date + firmware version.

When to call Sophos support instead

Escalate if:

More frequently asked questions

Does this affect other devices on my network?

Generally no. The procedure is local to this device. Network-side changes (firmware updates that affect TLS, SMB, or routing) are flagged explicitly in the steps.

Will the procedure work on the international variant?

Some features and firmware paths are region-locked. Check the model spec sheet to confirm your variant supports the menu option referenced. If you're outside the US/EU, look for the regional support portal.

How long does this fix usually take?

Most users complete the steps in 20-45 minutes the first time, and 5-10 minutes on subsequent runs once the menu paths are familiar.

Will this void my warranty?

Applying official firmware updates and following the user manual will not affect warranty. Opening sealed components, jumping safety circuits, or using third-party parts can void warranty in most jurisdictions.

What if my model isn't exactly the same revision?

Cross-check the model code on the rating plate against the manufacturer support page. Major firmware generations sometimes shift the menu path; the option is usually under a similarly-named section.