Fortinet Security Best Practices: A Complete Hardening Guide
🛡️ Security Intermediate 15 min read

Fortinet Security Best Practices: A Complete Hardening Guide

Comprehensive guide to securing Fortinet devices including FortiGate, FortiOS, and FortiWeb. Learn hardening techniques, authentication security, patch management, and monitoring strategies from an IT security professional.

Published: December 10, 2025 • Updated: December 10, 2025
FortinetFortiOSFortiGateFirewallNetwork SecurityHardeningBest PracticesVPNZero TrustEnterprise Security

Fortinet devices—particularly FortiGate firewalls—protect millions of networks worldwide. They're powerful, feature-rich, and when properly configured, provide excellent security. The problem? "Properly configured" is doing a lot of heavy lifting in that sentence.

Out of the box, Fortinet devices prioritize ease of deployment over maximum security. Default settings get you running quickly but leave gaps that attackers actively exploit. We've seen this repeatedly: the December 2025 FortiCloud SSO authentication bypass flaws (CVE-2025-59718 and CVE-2025-59719), the FortiWeb zero-days exploited throughout 2025, and the infamous Volt Typhoon campaign where Chinese state hackers used FortiOS vulnerabilities to compromise a Dutch military network.

This guide covers the essential hardening steps every Fortinet administrator should implement—whether you're managing a single FortiGate for a small business or deploying enterprise FortiManager infrastructure. These aren't theoretical recommendations; they're practical configurations based on real-world attack patterns and 23+ years of IT security experience.

1. Firmware and Patch Management

Why It Matters

Fortinet vulnerabilities are consistently among the most exploited in the wild. Ransomware groups and nation-state APTs actively scan for unpatched Fortinet devices because compromising a perimeter firewall often means compromising the entire network.

1.1 Establish a Patch Schedule

Don't wait for emergencies. Establish a regular firmware review cycle: check for new firmware releases monthly (at minimum), subscribe to Fortinet PSIRT (Product Security Incident Response Team) advisories, and monitor CISA's Known Exploited Vulnerabilities (KEV) catalog for Fortinet entries.

1.2 Maintain a Staging Environment

Never apply firmware updates directly to production without testing. Keep a lab FortiGate (even a VM) for testing updates, verify VPN connectivity, routing, and critical policies after updates, and document any configuration changes required by new firmware.

1.3 Know Your Current Versions

Maintain an inventory of all Fortinet devices and their firmware versions. You can check firmware version via CLI with: get system status. Track this in your asset management system and compare against Fortinet's security advisories.

1.4 Emergency Patch Protocol

For critical zero-days (CVSS 9.0+), have a pre-approved emergency process: authority to patch within 24-48 hours without standard change control, pre-tested rollback procedures, and a communication plan for affected users.

1.5 End-of-Life Planning

Fortinet eventually stops releasing security patches for older firmware branches. Know your EOL dates and budget for upgrades before support ends.

2. Administrative Access Hardening

The December 2025 FortiCloud SSO bypass vulnerabilities highlight why administrative access security is critical. If attackers can authenticate as administrators, your firewall becomes their firewall.

2.1 Disable Unnecessary Management Interfaces

By default, FortiGate enables management access on multiple interfaces. Lock this down—only enable HTTPS, SSH, or other management protocols on dedicated management interfaces, never on WAN-facing ports. Use the CLI to restrict allowaccess on each interface.

2.2 Restrict Management Access by Source IP

Limit who can even attempt to log in. Use trusted hosts to restrict administrative access to known management networks or jump hosts. Configure trusthost settings for each admin account to specify allowed source IP ranges.

2.3 Implement Multi-Factor Authentication

Single-factor authentication for firewall admins is unacceptable in 2025. Integrate with FortiAuthenticator or FortiToken, use RADIUS/TACACS+ with MFA-enabled identity providers, and at minimum, enable FortiToken Mobile for all admin accounts.

2.4 Disable FortiCloud SSO (If Not Needed)

Given the recent CVE-2025-59718 and CVE-2025-59719 vulnerabilities, disable FortiCloud SSO if you don't actively use it. Use the command: config system global then set admin-forticloud-sso-login disable. Only enable it if you actively use it—and ensure you're on patched firmware.

2.5 Use Role-Based Access Control

Don't give every admin full super_admin privileges. Create custom admin profiles with least-privilege access, separate read-only monitoring accounts from configuration accounts, and audit who has what access quarterly.

2.6 Change Default Credentials Immediately

This seems obvious, but compromised devices with default credentials are still discovered regularly. Change the default "admin" password on first login, consider renaming the default admin account, and disable the "maintainer" account if not needed for hardware recovery.

2.7 Configure Session Timeouts

Idle admin sessions are a risk. Set reasonable timeouts (10-30 minutes) for administrative sessions using: config system global then set admintimeout 15.

3. Network Segmentation and Access Control

A firewall that allows everything isn't a firewall—it's an expensive router. Proper segmentation limits blast radius when (not if) something gets compromised.

3.1 Default-Deny Policies

Start with implicit deny and explicitly allow only required traffic. Remove or disable default "allow all" policies, document business justification for every permit rule, and review and prune unused rules quarterly.

3.2 Segment by Security Zone

Create logical zones based on trust levels: Untrusted (Internet, guest WiFi), DMZ (public-facing servers), Internal (standard corporate network), Restricted (sensitive systems like finance, HR, executive), and Management (network infrastructure devices).

3.3 Inspect Internal Traffic

Don't assume internal traffic is safe. Enable inspection between internal VLANs, apply IPS policies to east-west traffic, and consider zero-trust microsegmentation for critical assets.

3.4 Use Address Objects and Groups

Don't hardcode IPs in policies. Use named objects and groups for maintainability and audit clarity. This makes policy review easier and reduces errors during changes.

3.5 Implement Application Control

Layer 7 visibility matters. Enable application control to identify traffic beyond port/protocol, block high-risk applications (Tor, anonymous proxies, unauthorized remote access tools), and monitor for shadow IT applications.

4. VPN Security

VPN gateways are prime targets—they're internet-facing by design and provide network access when compromised. The Volt Typhoon campaign specifically exploited FortiOS SSL VPN vulnerabilities.

4.1 Prefer IPsec Over SSL VPN (When Possible)

SSL VPN has a larger attack surface due to its web-based nature. For site-to-site connections and users who can install a client, IPsec is generally more secure.

4.2 Enforce Strong Authentication

For SSL VPN and IPsec with XAUTH: require MFA for all VPN users—no exceptions, integrate with enterprise identity providers (Azure AD, Okta, etc.), and implement certificate-based authentication where feasible.

4.3 Enable SSL VPN Security Features

If using SSL VPN, require TLS 1.2 or higher, disable weak ciphers (SHA1, MD5), and consider client certificate requirements. Configure via config vpn ssl settings.

4.4 Implement Host Checking

Verify endpoint security before granting access. Check for running antivirus/EDR, verify OS patch levels, and require corporate-managed devices for full access.

4.5 Limit VPN Access Scope

VPN users shouldn't get full network access. Apply firewall policies to VPN traffic, segment VPN users into restricted zones, and provide access only to required resources.

4.6 Monitor VPN Logs Actively

VPN authentication logs often show early signs of attack. Alert on failed authentication spikes, monitor for impossible travel (logins from geographically distant locations), and track unusual connection patterns.

5. Logging and Monitoring

You can't defend what you can't see. Fortinet devices generate extensive logs—but only if configured properly, and only if someone's watching.

5.1 Configure Remote Logging

Local logs can be wiped by attackers. Send logs off-device using FortiAnalyzer, a SIEM, or at minimum a syslog server. Configure syslog via config log syslogd setting.

5.2 Enable Comprehensive Logging

Don't just log denies—log allows too. Enable traffic logs (both allowed and denied sessions), event logs (system events, admin logins, configuration changes), security logs (IPS, antivirus, web filtering events), and VPN logs (tunnel status, user authentication).

5.3 Log Administrative Actions

Every configuration change should be logged. Enable CLI audit logging via config system global then set cli-audit-log enable. This creates an audit trail for compliance and incident investigation.

5.4 Implement Alerting

Logs are useless if no one reads them. Create alerts for: admin login failures (threshold: 5 in 10 minutes), admin logins from unexpected sources, configuration changes outside maintenance windows, IPS critical severity events, and VPN brute-force attempts.

5.5 Retain Logs Appropriately

Balance storage costs with investigation needs. Minimum 90 days for security logs, 1 year+ for compliance-regulated industries, and consider cold storage for long-term retention.

5.6 Regular Log Review

Automated alerting catches obvious attacks. Manual review catches subtle ones. Weekly review of admin activity logs, monthly review of policy hit counts (find unused rules), and quarterly review of top blocked threats.

6. Security Feature Configuration

FortiGate includes multiple security engines. Enable and tune them appropriately.

6.1 Intrusion Prevention System (IPS)

Enable IPS on policies where it matters. Apply to inbound traffic from untrusted zones, use appropriate profiles (don't apply heavy inspection to trusted internal traffic), tune signatures to reduce false positives, and update IPS signatures automatically via FortiGuard subscription.

6.2 Antivirus/Anti-Malware

Enable AV scanning on HTTP/HTTPS traffic (requires SSL inspection), SMTP traffic, and file downloads. Consider proxy-based inspection for higher catch rates.

6.3 Web Filtering

Block access to known-malicious categories: malware sites, phishing sites, and newly registered domains (frequently malicious). Consider blocking uncategorized sites.

6.4 DNS Filtering

Layer DNS-based protection. Enable FortiGuard DNS filtering, block DNS over HTTPS (DoH) to prevent bypass, and consider DNS sinkholing for malware domains.

6.5 SSL/TLS Inspection

You can't inspect what you can't see. Encrypted traffic hides threats. Implement SSL deep inspection for outbound web traffic, use certificate inspection (less invasive) where deep inspection isn't feasible, maintain an exception list for sensitive sites (banking, healthcare), and deploy your inspection CA certificate to endpoints.

6.6 Botnet Detection

FortiGuard includes botnet C2 detection. Enable botnet detection on outbound policies, alert on botnet traffic (indicates compromised internal host), and block known botnet C2 addresses.

7. High Availability and Disaster Recovery

Security includes resilience. A firewall that's down provides zero protection.

7.1 Deploy in HA Pairs

For production environments, single firewalls are single points of failure. Use active-passive HA for simplicity or active-active for performance (more complex). Ensure HA heartbeat links are on dedicated interfaces.

7.2 Regular Configuration Backups

Automate configuration backups with daily automated backups to secure storage, backup before any configuration changes, and test restore procedures quarterly. Use execute backup config tftp or similar methods.

7.3 Document Your Configuration

In a disaster, you need to know what you had. Maintain network diagrams, document firewall policies and their business purpose, and keep runbooks for common procedures.

7.4 Test Failover Regularly

HA that's never tested might not work when needed. Schedule quarterly HA failover tests, verify stateful session continuity, and document failover times.

8. Common Mistakes to Avoid

After years of auditing Fortinet deployments, these are the most frequent security gaps:

8.1 "Any Any Accept" Policies

Legacy rules that allow all traffic destroy the firewall's purpose. Find them and fix them using diagnose firewall policy list to review for overly permissive rules.

8.2 Management on WAN Interface

Never expose HTTPS/SSH management to the internet. Use VPN for remote administration.

8.3 Ignoring Certificate Warnings

Self-signed certificates for management are fine internally, but certificate validation for external services (FortiGuard, etc.) should be strict.

8.4 Not Reviewing FortiGuard Subscription Status

Security features require active subscriptions. Expired FortiGuard means no IPS signature updates, no AV definition updates, no web filtering updates, and no botnet detection updates. Check status regularly with diagnose autoupdate status.

8.5 Disabling Security Features for "Performance"

Modern FortiGate hardware handles security inspection at line rate. If you're disabling features for performance, you probably need bigger hardware—not less security.

8.6 Set-and-Forget Mentality

Firewalls require ongoing maintenance. Rules accumulate and become outdated, new vulnerabilities emerge, business requirements change, and threats evolve.

9. Security Checklist

Use this checklist for initial deployment and quarterly audits:

Administrative Security

  • Default admin password changed
  • MFA enabled for all administrators
  • Management access restricted by source IP
  • Management disabled on WAN interfaces
  • FortiCloud SSO disabled (or patched)
  • Admin session timeouts configured
  • CLI audit logging enabled
  • Firmware and Updates

  • Running supported firmware version
  • No known critical CVEs unpatched
  • FortiGuard subscriptions active and updating
  • Patch management process documented
  • Network Policies

  • Default-deny policy in place
  • No "any any accept" rules
  • Policies documented with business justification
  • Unused rules identified and removed
  • Security Features

  • IPS enabled on untrusted traffic
  • Antivirus scanning enabled
  • Web filtering configured
  • DNS filtering enabled
  • SSL inspection implemented (where appropriate)
  • Logging and Monitoring

  • Remote logging configured
  • Admin activity logging enabled
  • Alerting configured for security events
  • Log retention meets requirements
  • VPN Security

  • MFA required for all VPN users
  • Strong encryption enforced
  • VPN traffic subject to firewall policies
  • VPN logs monitored
  • Resilience

  • HA configured (production environments)
  • Configuration backups automated
  • Restore procedures tested
  • Documentation current
  • Conclusion

    Fortinet devices are powerful security tools—but only when properly configured and maintained. The default settings get you running quickly; the hardening steps in this guide keep you running securely.

    Key takeaways:

  • Patch aggressively — Fortinet vulnerabilities are actively exploited
  • Lock down admin access — MFA, trusted hosts, least privilege
  • Segment and inspect — Don't trust internal traffic implicitly
  • Monitor everything — Logs are your early warning system
  • Test and audit — Security configurations drift over time
  • The recent FortiCloud SSO bypass flaws remind us that even security vendors have vulnerabilities. Defense in depth—multiple layers of security, each covering for the others' potential failures—remains the only reliable strategy.

    Your firewall is your network's front door. Make sure it's locked.

    Keep Learning

  • What is a Zero-Day? — Protect against Fortinet zero-day exploits
  • Understanding CVE and CVSS Scores — Prioritize Fortinet security advisories
  • What is Remote Code Execution? — Common Fortinet vulnerability type
  • What is Two-Factor Authentication? — Secure FortiGate admin access