Fresh Installation
This section describes how to install FortiSIEM for the current release.
Pre-Installation Checklist
Before you begin, check the following:
-
Ensure that your system can connect to the network. You will be asked to provide a DNS Server and a host that can be resolved by the DNS Server and can respond to a ping. The host can either be an internal host or a public domain host like google.com.
- Deployment type – Enterprise or Service Provider. The Service Provider deployment provides multi-tenancy.
- Whether FIPS should be enabled
- Install type:
- All-in-one with Supervisor only, or
- Cluster with Supervisor and Workers
- Storage type
- Online – Local or NFS or Elasticsearch
- Archive – NFS or HDFS
- Fortinet recommends that you do not choose AWS Spot instances for Supervisor and Worker nodes. Such instances can go down at any time with short notice, causing instability and performance issues.
- Before beginning FortiSIEM deployment, you must configure external storage
- Determine hardware requirements and choose AWS instance type accordingly:
Node | vCPU | RAM | Local Disks |
Supervisor (All in one) | Minimum – 12 Recommended - 32 |
Minimum
Recommended
|
OS – 25GB OPT – 100GB CMDB – 60GB SVN – 60GB Local Event database – based on need |
Supervisor (Cluster) | Minimum – 12 Recommended - 32 |
Minimum
Recommended
|
OS – 25GB OPT – 100GB CMDB – 60GB SVN – 60GB
|
Workers | Minimum – 8 Recommended - 16 |
Minimum – 16GB Recommended – 24GB |
OS – 25GB OPT – 100GB |
Collector | Minimum – 4 Recommended – 8 ( based on load) |
Minimum – 4GB Recommended – 8GB |
OS – 25GB OPT – 100GB |
Note: compared to FortiSIEM 5.x, you need one more disk (OPT) which provides a cache for FortiSIEM.
For OPT - 100GB, the 100GB disk for /opt will consist of a single disk that will split into 2 partitions, /OPT and swap. The partitions will be created and managed by FortiSIEM when configFSM.sh
runs.
Before proceeding to FortiSIEM deployment, you must configure the external storage.
- For NFS deployment, see FortiSIEM - NFS Storage Guide here.
- For Elasticsearch deployment, see FortiSIEM - Elasticsearch Storage Guide here.
All-in-one Installation
This is the simplest installation with a single Virtual Appliance. If storage is external, then you must configure external storage before proceeding with installation.
Launch an Instance Using FortiSIEM 6.4.1 AMI
-
Navigate to the EC2 AMIs page and find FortiSIEM 6.4.1 AMI (or in AWS Marketplace after the GA release).
-
Launch FortiSIEM-6.4.1.1415.
-
Go to Step 3: Configure Instance Details in AWS Services. Configure instance details such as VPC, Subnet, IP, etc. Click Next.
Note: If you are planning to also assign global IPv6 address to your instance, then AWS has instructions on how to create an IPv6-enabled VPC in the following article:
https://docs.aws.amazon.com/vpc/latest/userguide/get-started-ipv6.html
For IPv6 configuration, choose IPv6-enabled VPC and IPv6-enabled subnet in the step 3 Configure Instance Details. Also, choose Auto-assign IPv6 IP to Enable.
-
In Step 4: Add Storage, add additional disks in the Add Storage page. These will be used for the additional partitions in the virtual appliance. An All In One deployment requires the following additional partitions. Then click Next.
Note: If you plan to onboard greater than 500 devices, or 5000 eps, please consider increasing IOPS and Throughput for the disk used to mount
/cmdb
in FortiSIEM.For instance, you can run the following command once FortiSIEM is initially deployed to determine which disk mounts the cmdb folder.
[admin@6 data-definition]$ lsblk | grep cmdb
└─sdc1 8:33 0 60G 0 part /cmdb
In this case
/dev/sdc
.You can go into EBS volumes in AWS, and increase the IOPS to 5000, and Throughput to 400MB/s to be more in line with SSD performance.
Volume Name
Size
Disk Name
EBS Volume 2 100GB /opt
For OPT - 100GB, the 100GB disk for /opt will consist of a single disk that will split into 2 partitions, /OPT and swap. The partitions will be created and managed by FortiSIEM when
configFSM.sh
runs.EBS Volume 3 60GB /cmdb EBS Volume 4 60GB /svn EBS Volume 5 60GB+ /data (see the following note) Note on EBS Volume 5:
-
Add a 5th EBS Volume if using local storage in an All In One deployment. Otherwise, a separate NFS share or Elasticsearch cluster must be used for event storage.
-
60GB is the minimum event DB disk size for small deployments, provision significantly more event storage for higher EPS deployments. See the FortiSIEM Sizing Guide for additional information.
-
NFS or Elasticsearch event DB storage is mandatory for multi-node cluster deployments.
-
Choose GP3 volume type for all volumes (GP3 is better than GP2 at a slightly lower cost). For the CMDB partition, you can choose to modify your volume type and IOPS based on your system workload if you see the consistently high IOPS requirement in your deployment.
-
-
In Step 5: Add Tags: click click to add a new Name Tag and provide a name for the instance. Click Next.
-
Add a new Name Tag.
-
In Step 6: Configure Security Group, add the allowed inbound protocols for your instance. You will need ssh and https to begin with. Depending on whether this node will receive syslog or other inbound data, you may need to open additional protocols/ports. Click Review and Launch.
-
In Step 7: Review Instance Launch, click Launch.
-
Select an existing key pair or create a new key pair, then click Launch Instances.
-
Select the instance that you just created and click Connect.
-
Using the example above in the Connect popup, ssh to the instance you created. Replace
root
user withec2-user
. Once logged in, you can execute thesudo su -
command to become root user.Note: If you are going to assign and use a global IPv6 address to your instance in addition to IPv4, then you will need to perform additional steps and reboot the instance. Take the following steps:
-
Add the following lines to the file
/etc/sysconfig/network-scripts/ifcfg-eth0
.IPV6INIT=yes
IPV6_FAILURE_FATAL=no
-
Run the following command to add service dhcpv6-client to the firewall rules (DHCP v6 works differently than v4)
firewall-cmd --zone=fortisiem --permanent --add-service=dhcpv6-client
-
Reboot the VM.
-
Configure FortiSIEM via GUI
Follow these steps to configure FortiSIEM by using a simple GUI.
-
At the root command prompt, go to /usr/local/bin and enter configFSM.sh, for example:
# configFSM.sh
-
In VM console, select 1 Set Timezone and then press Next.
-
Select your Location, and press Next.
-
Select your Continent, and press Next.
-
Select the Country and City for your timezone, and press Next.
-
Select 1 Supervisor. Press Next.
Regardless of whether you select Supervisor, Worker, or Collector, you will see the same series of screens.
-
If you want to enable FIPS, then choose 2 install_with_fips. Otherwise, choose 1 install_without_fips. You have the option of enabling FIPS (option 3) or disabling FIPS (option 4) later.
Note: After Installation, a 5th option to change your network configuration (5 change_network_config) is available. This allows you to change your network settings and/or host name. -
Determine whether your network supports IPv4-only, or Both IPv4 and IPv6 (Dual Stack). Choose 1 for IPv4-only, or choose 3 for Both IPv4 and IPv6. Press Next.
Note: In AWS, do not choose option 2 (IPv-6 only), because you will end up with a status check failure. AWS infrastructure currently requires that the VM has an IPv4 address for its monitoring purpose.
-
First you will configure the IPv4 network by entering the following fields, then press Next.
Option Description IPv4 Address The Supervisor's IPv4 address NetMask The Supervisor's IPv4 subnet Gateway IPv4 Network gateway address DNS1, DNS2 Addresses of the DNS servers -
If you chose 1 in step 8, then you will need to skip to step 11. If you chose 3 in step 8, then you will also configure the IPv6 network by entering the following fields, then press Next.
Option Description IPv6 Address The Supervisor's IPv6 address prefix (Netmask) The Supervisor's IPv6 prefix Gateway ipv6 IPv6 Network gateway address DNS1 IPv6, DNS2 IPv6 Addresses of IPv6 DNS server 1 and 2 Note: If you chose option 3 in step 8 for both IPv4 and IPv6, then even if you configure 2 DNS servers for IPv4 and IPv6, the system will only use the first DNS server from IPv4 and the first DNS server from IPv6 configuration.
Note: In AWS dual stack networks, IPv4 DNS server(s) can resolve names to both IPv4 and IPv6. In such environments, if you do not have an IPv6 DNS server, then you can use public IPv6 DNS servers such as Google DNS. -
Configure Hostname for Supervisor, then press Next.
-
Test network connectivity by entering a host name that can be resolved by your DNS Server (entered in the previous step) and can respond to a ping. The host can either be an internal host or a public domain host like google.com. Press Next.
-
The final configuration confirmation is displayed. Verify that the parameters are correct. If they are not, then press Back to return to previous dialog boxes to correct any errors. If everything is OK, then press Run.
The options are described in the following table.
Option Description -r The FortiSIEM component being configured -z The time zone being configured -i IPv4-formatted address -m Address of the subnet mask -g Address of the gateway server used --host Host name -f FQDN address: fully-qualified domain name -t The IP type. The values can be either 4 (for IPv4) or 6 (for IPv6) or 64 (for both IPv4 and IPv6) --dns1, --dns2
Addresses of the DNS server 1 and DNS server 2.
--i6
IPv6-formatted address
--m6
IPv6 prefix
--g6
IPv6 gateway
-o
Installation option (install_without_fips, install_with_fips, enable_fips, disable_fips
, change_network_config* )*Option only available after installation. -z Time zone. Possible values are US/Pacific, Asia/Shanghai, Europe/London, or Africa/Tunis --testpinghost
The URL used to test connectivity
- It will take some time for this process to finish. When it is done, proceed to Upload the FortiSIEM License. If the VM fails, you can inspect the
ansible.log
file located at/usr/local/fresh-install/logs
to try and identify the problem.
Upload the FortiSIEM License
|
Before proceeding, make sure that you have obtained valid FortiSIEM license from Forticare. For more information, see the Licensing Guide. |
You will now be asked to input a license.
- Open a Web browser and log in to the FortiSIEM UI. Please note that if you are logging into FortiSIEM with an IPv6 address, you should input
https://[IPv6 address]
on the browser tab. - The License Upload dialog box will open.
- Click Browse and upload the license file.
Make sure that the Hardware ID shown in the License Upload page matches the license.
- For User ID and Password, choose any Full Admin credentials.
For the first time installation, enter
admin
as the user andadmin*1
as the password. You will then be asked to create a new password for GUI access. - Choose License type as Enterprise or Service Provider.
This option is available only for a first time installation. Once the database is configured, this option will not be available.
- Proceed to Choose an Event Database.
Choose an Event Database
For a fresh installation, you will be taken to the Event Database Storage page. You will be asked to choose between Local Disk, NFS or Elasticsearch options. For more details, see Configuring Storage.
After the License has been uploaded, and the Event Database Storage setup is configured, FortiSIEM installation is complete. If the installation is successful, the VM will reboot automatically. Otherwise, the VM will stop at the failed task.
You can inspect the ansible.log
file located at /usr/local/fresh-install/logs
if you encounter any issues during FortiSIEM installation.
After installation completes, ensure that the phMonitor
is up and running, for example:
# phstatus
The response should be similar to the following.
Cluster Installation
For larger installations, you can choose Worker nodes, Collector nodes, and external storage (NFS or Elasticsearch).
Install Supervisor
Follow the steps in All-in-one Install with two differences:
- Setting up hardware - you do not need to add an EBS Volume 5 for Event database.
- Setting up an Event database - Configure the cluster for either NFS or Elasticsearch.
NFS
Elasticsearch
You must choose external storage listed in Choose an Event Database.
Install Workers
Once the Supervisor is installed, follow the same steps in All-in-one Install to install a Worker except you need to only choose OS and OPT disks. The recommended CPU and memory settings for Worker node, and required hard disk settings are:
- CPU = 8
- Memory = 24 GB
- Two hard disks:
- OS – 25GB
- OPT – 100GB
For OPT - 100GB, the 100GB disk for /opt will consist of a single disk that will split into 2 partitions, /OPT and swap. The partitions will be created and managed by FortiSIEM whenconfigFSM.sh
runs.
Register Workers
Once the Worker is up and running, add the Worker to the Supervisor node.
- Go to ADMIN > License > Nodes.
- Select Worker from the drop-down list and enter the Worker's IP address
and host name . Click Add. See ADMIN > Health > Cloud Health to ensure that the Workers are up, healthy, and properly added to the system.
Install Collectors
Once Supervisor and Workers are installed, follow the same steps in All-in-one Install to install a Collector except in Edit FortiSIEM Hardware Settings, you need to only choose OS and OPT disks. The recommended CPU and memory settings for Collector node, and required hard disk settings are:
- CPU = 4
- Memory = 8GB
- Two hard disks:
- OS – 25GB
- OPT – 100GB
For OPT - 100GB, the 100GB disk for /opt will consist of a single disk that will split into 2 partitions, /OPT and swap. The partitions will be created and managed by FortiSIEM whenconfigFSM.sh
runs.
Register Collectors
Collectors can be deployed in Enterprise or Service Provider environments.
Enterprise Deployments
For Enterprise deployments, follow these steps.
- Log in to Supervisor with 'Admin' privileges.
- Go to ADMIN > Settings > System > Event Worker.
- Enter the IP of the Worker node. If a Supervisor node is only used, then enter the IP of the Supervisor node. Multiple IP addresses can be entered on separate lines. In this case, the Collectors will load balance the upload of events to the listed Event Workers.
Note: Rather than using IP addresses, a DNS name is recommended. The reasoning is, should the IP addressing change, it becomes a matter of updating the DNS rather than modifying the Event Worker IP addresses in FortiSIEM. - Click OK.
- Enter the IP of the Worker node. If a Supervisor node is only used, then enter the IP of the Supervisor node. Multiple IP addresses can be entered on separate lines. In this case, the Collectors will load balance the upload of events to the listed Event Workers.
- Go to ADMIN > Settings > System > Event Worker and enter the IP of the Supervisor node. Click Save.
- Go to ADMIN > Setup > Collectors and add a Collector by entering:
- SSH to the Collector and run following script to register Collectors:
phProvisionCollector --add <user> '<password>' <Super IP or Host> <Organization> <CollectorName>
The password should be enclosed in single quotes to ensure that any non-alphanumeric characters are escaped.
- Set
user
andpassword
using the admin user name and password for the Supervisor. - Set
Super IP or Host
as the Supervisor's IP address. - Set
Organization
. For Enterprise deployments, the default name is Super. - Set
CollectorName
from Step 2a.The Collector will reboot during the Registration.
- Set
- Go to ADMIN > Health > Collector Health for the status.
Service Provider Deployments
For Service Provider deployments, follow these steps.
- Log in to Supervisor with 'Admin' privileges.
- Go to ADMIN > Settings > System > Event Worker.
- Enter the IP of the Worker node. If a Supervisor node is only used, then enter the IP of the Supervisor node. Multiple IP addresses can be entered on separate lines. In this case, the Collectors will load balance the upload of events to the listed Event Workers.
Note: Rather than using IP addresses, a DNS name is recommended. The reasoning is, should the IP addressing change, it becomes a matter of updating the DNS rather than modifying the Event Worker IP addresses in FortiSIEM. - Click OK.
- Enter the IP of the Worker node. If a Supervisor node is only used, then enter the IP of the Supervisor node. Multiple IP addresses can be entered on separate lines. In this case, the Collectors will load balance the upload of events to the listed Event Workers.
- Go to ADMIN > Setup > Organizations and click New to add an Organization.
- Enter the Organization Name, Admin User, Admin Password, and Admin Email.
- Under Collectors, click New.
- Enter the Collector Name, Guaranteed EPS, Start Time, and End Time.
The last two values could be set as Unlimited. Guaranteed EPS is the EPS that the Collector will always be able to send. It could send more if there is excess EPS available.
- SSH to the Collector and run following script to register Collectors:
phProvisionCollector --add <user> '<password>' <Super IP or Host> <Organization> <CollectorName>
The password should be enclosed in single quotes to ensure that any non-alphanumeric characters are escaped.
- Set
user
andpassword
using the admin user name and password for the Organization that the Collector is going to be registered to. - Set
Super IP or Host
as the Supervisor's IP address. - Set
Organization
as the name of an organization created on the Supervisor. - Set
CollectorName
from Step 6.The Collector will reboot during the Registration.
- Set
- Go to ADMIN > Health > Collector Health and check the status.
Install Log
The install ansible log file is located here: /usr/local/fresh-install/logs/ansible.log
.
Errors can be found at the end of the file.