fortios_endpoint_control_profile – Configure FortiClient endpoint control profiles in Fortinet’s FortiOS and FortiGate¶
New in version 2.8.
Synopsis¶
This module is able to configure a FortiGate or FortiOS by allowing the user to configure endpoint_control feature and profile category. Examples includes all options and need to be adjusted to datasources before usage. Tested with FOS v6.0.2
Requirements¶
The below requirements are needed on the host that executes this module.
fortiosapi>=0.9.8
Parameters¶
Parameter | Choices/Defaults | Comments | |||
---|---|---|---|---|---|
endpoint_control_profile
-
|
Default: null
|
Configure FortiClient endpoint control profiles.
|
|||
description
-
|
Description.
|
||||
device-groups
-
|
Device groups.
|
||||
name
-
/ required
|
Device group object from available options. Source user.device-group.name user.device-category.name.
|
||||
forticlient-android-settings
-
|
FortiClient settings for Android platform.
|
||||
disable-wf-when-protected
-
|
|
Enable/disable FortiClient web category filtering when protected by FortiGate.
|
|||
forticlient-advanced-vpn
-
|
|
Enable/disable advanced FortiClient VPN configuration.
|
|||
forticlient-advanced-vpn-buffer
-
|
Advanced FortiClient VPN configuration.
|
||||
forticlient-vpn-provisioning
-
|
|
Enable/disable FortiClient VPN provisioning.
|
|||
forticlient-vpn-settings
-
|
FortiClient VPN settings.
|
||||
auth-method
-
|
|
Authentication method.
|
|||
name
-
/ required
|
VPN name.
|
||||
preshared-key
-
|
Pre-shared secret for PSK authentication.
|
||||
remote-gw
-
|
IP address or FQDN of the remote VPN gateway.
|
||||
sslvpn-access-port
-
|
SSL VPN access port (1 - 65535).
|
||||
sslvpn-require-certificate
-
|
|
Enable/disable requiring SSL VPN client certificate.
|
|||
type
-
|
|
VPN type (IPsec or SSL VPN).
|
|||
forticlient-wf
-
|
|
Enable/disable FortiClient web filtering.
|
|||
forticlient-wf-profile
-
|
The FortiClient web filter profile to apply. Source webfilter.profile.name.
|
||||
forticlient-ios-settings
-
|
FortiClient settings for iOS platform.
|
||||
client-vpn-provisioning
-
|
|
FortiClient VPN provisioning.
|
|||
client-vpn-settings
-
|
FortiClient VPN settings.
|
||||
auth-method
-
|
|
Authentication method.
|
|||
name
-
/ required
|
VPN name.
|
||||
preshared-key
-
|
Pre-shared secret for PSK authentication.
|
||||
remote-gw
-
|
IP address or FQDN of the remote VPN gateway.
|
||||
sslvpn-access-port
-
|
SSL VPN access port (1 - 65535).
|
||||
sslvpn-require-certificate
-
|
|
Enable/disable requiring SSL VPN client certificate.
|
|||
type
-
|
|
VPN type (IPsec or SSL VPN).
|
|||
vpn-configuration-content
-
|
Content of VPN configuration.
|
||||
vpn-configuration-name
-
|
Name of VPN configuration.
|
||||
configuration-content
-
|
Content of configuration profile.
|
||||
configuration-name
-
|
Name of configuration profile.
|
||||
disable-wf-when-protected
-
|
|
Enable/disable FortiClient web category filtering when protected by FortiGate.
|
|||
distribute-configuration-profile
-
|
|
Enable/disable configuration profile (.mobileconfig file) distribution.
|
|||
forticlient-wf
-
|
|
Enable/disable FortiClient web filtering.
|
|||
forticlient-wf-profile
-
|
The FortiClient web filter profile to apply. Source webfilter.profile.name.
|
||||
forticlient-winmac-settings
-
|
FortiClient settings for Windows/Mac platform.
|
||||
av-realtime-protection
-
|
|
Enable/disable FortiClient AntiVirus real-time protection.
|
|||
av-signature-up-to-date
-
|
|
Enable/disable FortiClient AV signature updates.
|
|||
forticlient-application-firewall
-
|
|
Enable/disable the FortiClient application firewall.
|
|||
forticlient-application-firewall-list
-
|
FortiClient application firewall rule list. Source application.list.name.
|
||||
forticlient-av
-
|
|
Enable/disable FortiClient AntiVirus scanning.
|
|||
forticlient-ems-compliance
-
|
|
Enable/disable FortiClient Enterprise Management Server (EMS) compliance.
|
|||
forticlient-ems-compliance-action
-
|
|
FortiClient EMS compliance action.
|
|||
forticlient-ems-entries
-
|
FortiClient EMS entries.
|
||||
name
-
/ required
|
FortiClient EMS name. Source endpoint-control.forticlient-ems.name.
|
||||
forticlient-linux-ver
-
|
Minimum FortiClient Linux version.
|
||||
forticlient-log-upload
-
|
|
Enable/disable uploading FortiClient logs.
|
|||
forticlient-log-upload-level
-
|
|
Select the FortiClient logs to upload.
|
|||
forticlient-log-upload-server
-
|
IP address or FQDN of the server to which to upload FortiClient logs.
|
||||
forticlient-mac-ver
-
|
Minimum FortiClient Mac OS version.
|
||||
forticlient-minimum-software-version
-
|
|
Enable/disable requiring clients to run FortiClient with a minimum software version number.
|
|||
forticlient-operating-system
-
|
FortiClient operating system.
|
||||
id
-
/ required
|
Operating system entry ID.
|
||||
os-name
-
|
Customize operating system name or Mac OS format:x.x.x
|
||||
os-type
-
|
|
Operating system type.
|
|||
forticlient-own-file
-
|
Checking the path and filename of the FortiClient application.
|
||||
file
-
|
File path and name.
|
||||
id
-
/ required
|
File ID.
|
||||
forticlient-registration-compliance-action
-
|
|
FortiClient registration compliance action.
|
|||
forticlient-registry-entry
-
|
FortiClient registry entry.
|
||||
id
-
/ required
|
Registry entry ID.
|
||||
registry-entry
-
|
Registry entry.
|
||||
forticlient-running-app
-
|
Use FortiClient to verify if the listed applications are running on the client.
|
||||
app-name
-
|
Application name.
|
||||
app-sha256-signature
-
|
App's SHA256 signature.
|
||||
app-sha256-signature2
-
|
App's SHA256 Signature.
|
||||
app-sha256-signature3
-
|
App's SHA256 Signature.
|
||||
app-sha256-signature4
-
|
App's SHA256 Signature.
|
||||
application-check-rule
-
|
|
Application check rule.
|
|||
id
-
/ required
|
Application ID.
|
||||
process-name
-
|
Process name.
|
||||
process-name2
-
|
Process name.
|
||||
process-name3
-
|
Process name.
|
||||
process-name4
-
|
Process name.
|
||||
forticlient-security-posture
-
|
|
Enable/disable FortiClient security posture check options.
|
|||
forticlient-security-posture-compliance-action
-
|
|
FortiClient security posture compliance action.
|
|||
forticlient-system-compliance
-
|
|
Enable/disable enforcement of FortiClient system compliance.
|
|||
forticlient-system-compliance-action
-
|
|
Block or warn clients not compliant with FortiClient requirements.
|
|||
forticlient-vuln-scan
-
|
|
Enable/disable FortiClient vulnerability scanning.
|
|||
forticlient-vuln-scan-compliance-action
-
|
|
FortiClient vulnerability compliance action.
|
|||
forticlient-vuln-scan-enforce
-
|
|
Configure the level of the vulnerability found that causes a FortiClient vulnerability compliance action.
|
|||
forticlient-vuln-scan-enforce-grace
-
|
FortiClient vulnerability scan enforcement grace period (0 - 30 days, default = 1).
|
||||
forticlient-vuln-scan-exempt
-
|
|
Enable/disable compliance exemption for vulnerabilities that cannot be patched automatically.
|
|||
forticlient-wf
-
|
|
Enable/disable FortiClient web filtering.
|
|||
forticlient-wf-profile
-
|
The FortiClient web filter profile to apply. Source webfilter.profile.name.
|
||||
forticlient-win-ver
-
|
Minimum FortiClient Windows version.
|
||||
os-av-software-installed
-
|
|
Enable/disable checking for OS recognized AntiVirus software.
|
|||
sandbox-address
-
|
FortiSandbox address.
|
||||
sandbox-analysis
-
|
|
Enable/disable sending files to FortiSandbox for analysis.
|
|||
on-net-addr
-
|
Addresses for on-net detection.
|
||||
name
-
/ required
|
Address object from available options. Source firewall.address.name firewall.addrgrp.name.
|
||||
profile-name
-
/ required
|
Profile name.
|
||||
replacemsg-override-group
-
|
Select an endpoint control replacement message override group from available options. Source system.replacemsg-group.name.
|
||||
src-addr
-
|
Source addresses.
|
||||
name
-
/ required
|
Address object from available options. Source firewall.address.name firewall.addrgrp.name.
|
||||
state
-
|
|
Indicates whether to create or remove the object
|
|||
user-groups
-
|
User groups.
|
||||
name
-
/ required
|
User group name. Source user.group.name.
|
||||
users
-
|
Users.
|
||||
name
-
/ required
|
User name. Source user.local.name.
|
||||
host
-
/ required
|
FortiOS or FortiGate ip address.
|
||||
https
boolean
|
|
Indicates if the requests towards FortiGate must use HTTPS protocol
|
|||
password
-
|
Default: ""
|
FortiOS or FortiGate password.
|
|||
username
-
/ required
|
FortiOS or FortiGate username.
|
||||
vdom
-
|
Default: "root"
|
Virtual domain, among those defined previously. A vdom is a virtual instance of the FortiGate that can be configured and used as a different unit.
|
Notes¶
Note
Requires fortiosapi library developed by Fortinet
Run as a local_action in your playbook
Examples¶
- hosts: localhost
vars:
host: "192.168.122.40"
username: "admin"
password: ""
vdom: "root"
tasks:
- name: Configure FortiClient endpoint control profiles.
fortios_endpoint_control_profile:
host: "{{ host }}"
username: "{{ username }}"
password: "{{ password }}"
vdom: "{{ vdom }}"
endpoint_control_profile:
state: "present"
description: "<your_own_value>"
device-groups:
-
name: "default_name_5 (source user.device-group.name user.device-category.name)"
forticlient-android-settings:
disable-wf-when-protected: "enable"
forticlient-advanced-vpn: "enable"
forticlient-advanced-vpn-buffer: "<your_own_value>"
forticlient-vpn-provisioning: "enable"
forticlient-vpn-settings:
-
auth-method: "psk"
name: "default_name_13"
preshared-key: "<your_own_value>"
remote-gw: "<your_own_value>"
sslvpn-access-port: "16"
sslvpn-require-certificate: "enable"
type: "ipsec"
forticlient-wf: "enable"
forticlient-wf-profile: "<your_own_value> (source webfilter.profile.name)"
forticlient-ios-settings:
client-vpn-provisioning: "enable"
client-vpn-settings:
-
auth-method: "psk"
name: "default_name_25"
preshared-key: "<your_own_value>"
remote-gw: "<your_own_value>"
sslvpn-access-port: "28"
sslvpn-require-certificate: "enable"
type: "ipsec"
vpn-configuration-content: "<your_own_value>"
vpn-configuration-name: "<your_own_value>"
configuration-content: "<your_own_value>"
configuration-name: "<your_own_value>"
disable-wf-when-protected: "enable"
distribute-configuration-profile: "enable"
forticlient-wf: "enable"
forticlient-wf-profile: "<your_own_value> (source webfilter.profile.name)"
forticlient-winmac-settings:
av-realtime-protection: "enable"
av-signature-up-to-date: "enable"
forticlient-application-firewall: "enable"
forticlient-application-firewall-list: "<your_own_value> (source application.list.name)"
forticlient-av: "enable"
forticlient-ems-compliance: "enable"
forticlient-ems-compliance-action: "block"
forticlient-ems-entries:
-
name: "default_name_48 (source endpoint-control.forticlient-ems.name)"
forticlient-linux-ver: "<your_own_value>"
forticlient-log-upload: "enable"
forticlient-log-upload-level: "traffic"
forticlient-log-upload-server: "<your_own_value>"
forticlient-mac-ver: "<your_own_value>"
forticlient-minimum-software-version: "enable"
forticlient-operating-system:
-
id: "56"
os-name: "<your_own_value>"
os-type: "custom"
forticlient-own-file:
-
file: "<your_own_value>"
id: "61"
forticlient-registration-compliance-action: "block"
forticlient-registry-entry:
-
id: "64"
registry-entry: "<your_own_value>"
forticlient-running-app:
-
app-name: "<your_own_value>"
app-sha256-signature: "<your_own_value>"
app-sha256-signature2: "<your_own_value>"
app-sha256-signature3: "<your_own_value>"
app-sha256-signature4: "<your_own_value>"
application-check-rule: "present"
id: "73"
process-name: "<your_own_value>"
process-name2: "<your_own_value>"
process-name3: "<your_own_value>"
process-name4: "<your_own_value>"
forticlient-security-posture: "enable"
forticlient-security-posture-compliance-action: "block"
forticlient-system-compliance: "enable"
forticlient-system-compliance-action: "block"
forticlient-vuln-scan: "enable"
forticlient-vuln-scan-compliance-action: "block"
forticlient-vuln-scan-enforce: "critical"
forticlient-vuln-scan-enforce-grace: "85"
forticlient-vuln-scan-exempt: "enable"
forticlient-wf: "enable"
forticlient-wf-profile: "<your_own_value> (source webfilter.profile.name)"
forticlient-win-ver: "<your_own_value>"
os-av-software-installed: "enable"
sandbox-address: "<your_own_value>"
sandbox-analysis: "enable"
on-net-addr:
-
name: "default_name_94 (source firewall.address.name firewall.addrgrp.name)"
profile-name: "<your_own_value>"
replacemsg-override-group: "<your_own_value> (source system.replacemsg-group.name)"
src-addr:
-
name: "default_name_98 (source firewall.address.name firewall.addrgrp.name)"
user-groups:
-
name: "default_name_100 (source user.group.name)"
users:
-
name: "default_name_102 (source user.local.name)"
Return Values¶
Common return values are documented here, the following are the fields unique to this module:
Key | Returned | Description |
---|---|---|
build
string
|
always |
Build number of the fortigate image
Sample:
1547
|
http_method
string
|
always |
Last method used to provision the content into FortiGate
Sample:
PUT
|
http_status
string
|
always |
Last result given by FortiGate on last operation applied
Sample:
200
|
mkey
string
|
success |
Master key (id) used in the last call to FortiGate
Sample:
id
|
name
string
|
always |
Name of the table used to fulfill the request
Sample:
urlfilter
|
path
string
|
always |
Path of the table used to fulfill the request
Sample:
webfilter
|
revision
string
|
always |
Internal revision number
Sample:
17.0.2.10658
|
serial
string
|
always |
Serial number of the unit
Sample:
FGVMEVYYQT3AB5352
|
status
string
|
always |
Indication of the operation's result
Sample:
success
|
vdom
string
|
always |
Virtual domain used
Sample:
root
|
version
string
|
always |
Version of the FortiGate
Sample:
v5.6.3
|
Status¶
This module is not guaranteed to have a backwards compatible interface. [preview]
This module is maintained by the Ansible Community. [community]