FortiGate Connector For Cisco ACI
FortiGate Connector For Cisco ACI
ACI
Version 1.0.32
FORTINET DOCUMENT LIBRARY
http://docs.fortinet.com
FORTINET BLOG
https://blog.fortinet.com
http://cookbook.fortinet.com/how-to-work-with-fortinet-support/
FORTIGATE COOKBOOK
http://cookbook.fortinet.com
FORTIGUARD CENTER
http://www.fortiguard.com
FEEDBACK
Email: [email protected]
01-540-293514-20150929
TABLE OF CONTENTS
Change Log 5
Overview 6
Licensing 6
Terms and concepts 7
FortiGate VDOMs 7
FortiOS RESTful API 7
North/South and East/West Traffic 7
Features 8
Supported Features 8
Unsupported Features 8
Planned for future releases 9
Supported Fortinet Products 10
Models 10
Firmware Versions 10
Prerequisites 11
Cisco Side 11
FortiGate Side 11
Physical Firewall 11
VM Firewall 11
Components of the Device Package 13
Device model or specification 13
Device script 13
Directory of supporting files 13
Image file or directory 13
Operational modes 14
Go Through Mode (Layer 2) 14
Go To Mode (Layer 3) 14
Multi-tenant multi-device support 15
Supported use scenarios 16
Physical Fortigate 16
Go-Through Mode for west-east traffic within data center in ACI. 16
Go-To Mode for north-south traffic for Web Server to access DataBase server in data
center. 16
Virtual Fortigate 16
Go-Through Mode for west-east traffic within data center in ACI. 16
Go-To Mode for north-south traffic for Web Server to access DataBase server in data
center. 16
Installation 17
Importing the Device Package 17
Remove Device Package 19
Add L4-L7 Device 19
GENERAL 19
CONNECTIVITY 20
CREDENTIALS 20
Device 1 20
Cluster 21
Create a Function Profile 23
Create Functional Profile Group 23
Remove Functional Profile Group 23
Create Functional Profile 24
Remove Functional Profile 25
VDOMs 25
Device Network 26
Firewall Objects 27
Firewall Policy Rule 28
Static Router 30
Dynamic Router 31
Review 31
Service Graph 32
Create Service Graph 32
Deploy Service Graph 32
Modify Service Graph 35
Remove Service Graph 36
APIC Infrastructure and FortiGate rollback 38
Basic Troubleshooting 39
Verify Service Graph deployed 39
Service deployed but parameters missing 40
Change Log
Change Log
Overview
FortiGate Connector for Cisco ACI (Application Centric Infrastructure) is the Fortinet solution to provide seamless
integration between Fortinet Firewall (Fortigate) deployment with Cisco APIC (Application Policy Infrastructure
Controller). This integration allows customers to perform single point of Fortigate configuration and Management
operation through Cisco APIC.
While the FortiGate series of firewalls enable superb firewall services, in a data center environment, the insertion,
configuration, and management of network services such as firewall can be quite complex and potentially error-
prone tasks. One solution for such data center problems is Cisco’s ACI. Cisco’s ACI is a policy-based framework
with integration of software and hardware in the underlying leaf-spine fabric. In Cisco ACI, the APIC is a tool used
to automate service insertion and provisioning into the fabric of the network environment. Network service
appliances, both physical and virtual, can be attached to ACI fabric’s leaf node through APIC. Traffic demanding
certain network services is steered by APIC-managed policies to the appropriate resources. The FortiGate
Connector allows FortiGates to be included amongst the list of resources that traffic can be directed to.
Licensing
FortiGate Connector for Cisco ACI is free of charge for Fortinet customers. You need to make sure that you
register your FortiGate with FortiCare on support.fortinet.com.
FortiGate VDOMs
VDOM or Virtual Domain refers to a discretely administered segment on a FortiGate firewall. A FortiGate firewall
that is not segmented and where a single administrator can access all of the firewall is operating in the “root”
VDOM. However, it is possible to segment the FortiGate so that different administrators can access different
areas of the FortiGate. Credentials for VDOM X will allow access to the resources and settings of VDOM A but no
other. There will also be global resources and settings that will require credentials to the root VDOM. When
setting up connectivity between Cisco APIC and the FortiGates it will be important to know which VDOMs control
the needed resources.
A good resource for the finer details of Fortinet’s implementation of ReST can be found at
http://docs.fortinet.com/uploaded/files/1276/FortiAuthenticator_REST_API_Solution_Guide.pdf
Features
There are a number of features associated with firewalls in general and FortiGate firewalls in particular. This
section should explain which of these features are available through the FortiGate Connector and which are not.
Supported Features
The FortiGate Connector for Cisco ACI supports the following functions:
l Cisco ACI service insertion - software package for FortiGate device deployed to Cisco APIC, containing FortiGate
models, function description, version, credentials, as a L4-L7 service.
l Enable tenant configuration to add/modify/delete L4-L7 device of FortiGate firewall service.
l Enable FortiGate deployment as both physical and virtual device (FortiGate chassis & VM).
l Support both transparent (GoThrough) and L3 (GoTo) device mode .
l Automatically create VDOM (context). One VDOM per logical device under a tenant.
l Enable FortiGate specific interface configuration: physical interface and port channel.
l Support IP address configuration on Layer 3 interfaces.
l Support subnet, service and schedule object configuration.
l Enable FortiGate firewall device to connect to endpoint groups (EPGs).
l Support IPv4 policies: match, action, network operations & security features selection (although the Enable/Disable
Security profile option in policies is not supported).
l Support NAT.
l Enable service graph to add/modify/delete FortiGate firewall service node.
Unsupported Features
The following features normally found on FortiGates are not supported through the FortiGate Connector for Cisco
ACI.
l Error Logs
l Statistics Reporting
The unsupported features on APIC may still be used on FortiGate outside of the APIC control; the user must login
to FortiGate to configure, monitor, and debug. However, any conflict with the operations from APIC may cause
malfunction.
FortiGate Connector for Cisco ACI plans to incorporate the following features and functions into future versions of
the software:
l Support for OSPF-based routing configuration in the L3 (GoTo) mode from APIC.
l Monitor FortiGate devices (health) status.
l Provide FortiGate device statistics – device and service counters per context.
l Support for logging and error reporting of FortiGate as a L4-L7 device.
l Performance reporting: control and management plane based on APIC, data path on FortiGate.
New features are not limited to this list. These are just the features currently planned for.
The supported Fortinet products refers to those that are compatible with the FortiGate Connector for Cisco ACI
software, and will properly integrate into the Cisco ACI. The products are separated into models and firmware but
it is an “and” set of parameters. In order to be supported the Fortinet product has to be one of the listed models
running supported firmware.
Models
FortiGate Connector for Cisco ACI v1.0 supports integration with the following predefined models:
l FG-1000D
l FG-1500D
l FG-3700D
l FG-VM
l Unknown (to be added based on customer's request)
Firmware Versions
FortiGate Connector for Cisco ACI version 1 is compatible with the following FortiOS firmware:
Prerequisites
Cisco Side
Before the FortiGate Connector for Cisco ACI can be successfully deployed, a number of prerequisites need to be
satisfied within the Cisco environment.
http://www.cisco.com/c/en/us/td/docs/switches/datacenter/aci/apic/sw/1-x/L4-L7_Services_
Deployment/guide/b_L4L7_Deploy.html
FortiGate Side
Before the FortiGate Connector for Cisco ACI can be successfully deployed, a number of prerequisites need to be
satisfied on the FortiGate side of the equation.
Physical Firewall
1. Configure administrator user name and password.
2. Enable http/https on mgmt. port.
3. Configure IP address in mgmt. port.
4. Enable VDOM-Admin globally.
5. Configure Port-Group if needed.
VM Firewall
1. Assign network ports before start VM
2. Configure administrator user name and password.
3. Enable http/https on mgmt. port.
To add a network service to ACI fabric, the service’s device package needs to be uploaded to APIC. The device
package is a zip file containing these components:
l Device functions
l Parameters of each function
l Interfaces/network connectivity information of each function.
Device script
This is a Python file, DeviceScript.py with API functions to interface between the Cisco APIC and the
FortiGate REST APIs. This Python file is associated by the DeviceModel.xml device specification to device script
for APIC.
Operational modes
There are two types of network service devices which Cisco APIC integrates with. These types of devices are
defined by their operation mode. They are either Go Through or Go To. Normally a device has to be
preconfigured as one of these types before its imported package is managed by the APIC.
Devices in Go Through mode are considered layer 2 devices (from the OSI model) and are sometimes known as
transparent. They are referred to as transparent because while the traffic goes through them and can be affected
by them, they are not seen by the network and are not a destination in their own right for the traffic. They do not
route traffic. These devices are not referred to by the packet’s destination MAC or IP address. In most cases,
these devices will only have an address for the purposes of management.
Go To Mode (Layer 3)
Devices in Go To mode are considered Layer 3 (from the OSI model) devices. They can route traffic and they are
referenced as the destination in a packet’s destination MAC address or destination IP address.
Multi-tenant Multi-device is typical in the use cases of this project. The support is worth more detailed description.
When FortiGate device is added a tenant’s L4-L7 services, multi-context aware can be enabled. This indicates to
the device package that the L4-L7 device is going to be a virtual device that shares resources with other tenants
on the FortiGate. In FortiGate implementation, this virtual device is represented by a VDOM. Under each tenant,
multiple such virtual devices can be configured.
l VDOM name is the device name. One VDOM per device. One or more devices per tenant.
l Each tenant sees all available interfaces and can share interfaces (ports) with other tenants, if it is multi-context
aware. Limitation question: To be confirmed – For Physical Device under L3 Routed(GoTo) Mode, Tenant can
share physical interface as vlan is used to isolate the physical interface. In VM Device, this is not true. You can only
use dedicated VNIC.
l Each FortiGate device supports only a pair of ports. Another pair requires another device added under the tenant.
When the L4-L7 service is deployed to the FortiGate device, the following logic is performed. For simplicity in the
first release, the user may need to enable VDOM during FortiGate pre-configuration.
Physical Fortigate
Go-To Mode for north-south traffic for Web Server to access DataBase server in data
center.
Scenario: Firewall service for Web Server to access DataBase server in data center.
Virtual Fortigate
Go-To Mode for north-south traffic for Web Server to access DataBase server in data
center.
Scenario: Firewall service for Web Server to access DataBase server in data center.
Installation
To successfully deploy Fortigate Connector into Cisco APIC, customers need to perform the following steps:
According to the APIC deployment guide, a service device introduces a Layer 4 to Layer 7 service by this typical
procedure:
1. Download Device Connector Package from Fortinet Support Web (URL) site to local storage.
2. From APIC menu, Navigate to L4-L7 Services > Packages and right click on L4-L7 Device Type on the left
hand panel. Select Import Device Package
3. Browse device package from local disk or share device and hit submit.
Within Tenant, Expand L4-L7 Services > L4-L7 Devices, right click on mouse and select “Create L4-L7
devices”
GENERAL
Model l FG-VM
l FG-1000D
l FG-1500D
l FG-3700D
l Unknown
CONNECTIVITY
Physical Domain or VMM Select from drop down list Domain which you should have configured during APIC
Domain Access Policies setup
l Out-of-Band
APIC to Device
l In-Band
CREDENTIALS
Field Description
Device 1
l http
Management Port l https
https is the prefer method
Physical Interfaces Click on “+” sign to add interfaces connecting from APIC to FortiGate
(If using Port Channel, please type in the correct Port Channel name
ex:PO1, PO2..etc.)
Direction l Provider
l Consumer
Need to configure 2 ports
Cluster
Leave everything default.
No need to input any information for next screen, just hit “submit”.
l Creating a Tenant
l Creating an Application Profile
l Creating an Application End Point Group (EPG)
l Creating Contracts
Functional Profile defines the template for the Service(s) that is going to deploy such as L4-L7 Device Interface IP
addresses, Rule ID, Object Addresses, Policy Rules, Source/Destination Ports…etc.
2. Input Functional Profile Name, and leave Copy Existing Profile Parameters option checked and select Profile:
Fortinet-FGAPIC-1.0/Basic-Firewall-Policy
VDOMs
1. Input Vdom Name under the Name Column and check the box under Locked column.
2. The Locked column is used to lock the field to ensure you can not make any modification after the deployment of
the service graph. In this case, we do not want to change the mode of the VDOM from L2 to L3 or vice versa. This
is a limitation for the moment since changing the VDOM mode requires removal of the original VDOM deployment
and re-deploy with the new mode.
Device Network
Device Network is defining the physical interface information. For transparent mode, it is not required therefore
you can input dummy information into the field. All the fields are following the same layout as what is seem from
Fortigate interface.
Default populated port name are “port11” and “port12”, please make the changes accordingly by double clicking
on the name field. Rest of the fields highlighted in green from below need to be update.
Firewall Objects
Firewall Objects field is pre-populated with default Objects from FortiGate. Please note that you need to select
the “All Parameters” field in order to see the full list of default Objects. If you want to customize object(s), click on
the + icon to add Object(s), otherwise, just move on to the next featured.
Firewall objects include Address object, Service object and Schedule object. These objects can be used in policy
rule. For this release, the service object supports TCP, UDP, SCTP ICMP and IP only.
The screen shot below helps explain the customized Firewall Service.
Field Description
Firewall Service Field Enter the name for the Firewall Service
If you have more port range to define then click on the left hand “+” icon to
Port Range
add additional Port Range Field.
Dst/Src Port for TCP/UDP/SCTP Select from drop down list to select your protocol. “TCP”, “UDP” or “SCTP”
TCP/UDP/SCP – Dst Port Range Lower range of the Destination port range
Min [0-65535]
Field Description
TCP/UDP/SCP – Src Port Range Lower range of the Source port range
Min [0-65535]
Category Select from the drop down list to select your Category
ICMP –code [0-255] Part of the ICMP entry if your service is relating to ICMP
ICMP –port [0-255] Part of the ICMP entry if your service is relating to ICMP
IP – Protocol Number [0-254] If the Service is relating to IP, this is where you define the protocol number if
any
Rule ID:
Rule ID defines the order how the rule will be applied later on to FortiGate. Lower Number Rule number will be
listed first. The Locked icon is used to lock the field or any other field in the template so the modification cannot
take place.
l Action
l Destination Address Name
l Incoming Interface
l NAT
l Outcoming Interface
l Service
l Source Address Name
l Schedule List Name
are pre-populated from basic template which you can select their value by select from the drop down menu under
the Value column.
Static Router
For current release, we only support Static Route. You have to manual input all parameters for static route
configuration.
Dynamic Router
Not support for current release.
Review
All Field display all the fields in the features listing. If you are satisfy with all your inputs, then hit the submit
button to complete your creation of Functional Profile template.
Service Graph
l One node
Node
l Two node
Profile Select the Functional Profile created earlier from the drop down list
2. Select Consumer EPG and Provider EPG and input a contract name
4. Ensure all fields turned Green, otherwise they will not get deploy/allow to modification later on. This is the last
round of check before you hit to submit button to ensure everything is correct.
2. On the next screen, select the Contract name, Graph Name and Node name from the drop down list and all the
associated Service Graph Parameters will be displayed.
3. Expand the field you want to make modification and change the appropriate value from the drop down list and
then hit submit.
2. Select Contract and Provider EPG from the drop down list and check all 3 boxes:
l Remove Related Contract
l Remove Related EPG Parameters
l Remove Related Device Selection Policies
Hit Submit. This will remove all the related objects for this Service Graph.
Basic Troubleshooting
Navigate under Tenant > Deployed Graph Instances to check the state of the deployed graph.
If state is failed apply, then go down one level to the Deployed Graph Instances and navigate to the Fault
tab to check the error log. Any error code in 1000 range are relating to FortiGate while others belong to APIC
If Service deployed but certain parameters not showing up on Fortigate, please follow the below steps:
1. Navigate to Tenant> Provider EPG>L4-L7 Parameters, ensure the missing parameters are listed.If not,
double check the functional profile to confirm the configuration
.
2. If yes, login on to Cisco APIC controller to examine the debug log. The debug log is located at
/data/devicescript/Fortinet.FGAPIC.1.0/logs and the log file name is debug.log. Examine the
log file and grab fields with “[10.160.11.103, <xxxx>]:” formats and scan through the logs associated to
the parameters in question.
3. If all failed, please forward the entire captured log to Fortinet Technical Assistance Center for further
troubleshooting.