Installation
This document is used for MetaDefender ICAP Server since 5.2.0 and later
1.Wizard Installation
The Install Wizard is only for the Windows installer (.msi file).
1.1.Select database option
+ Standalone mode

+ Shared database mode

1.2.Setup database server
You can choose to create a native / built-in PostgreSQL server and setup the shared database on (then other MetaDefender ICAP Server instances will want to connect to that PostgreSQL server afterwards)

Or choose to connect to a pre-setup existing PostgreSQL server:

"Test Connection" button is required, to make sure the PostgreSQL is connected and authenticated successfully. Make sure to check and perform steps at Open Connection On PostgreSQL Server if you are unable to test the connection with remote PostgreSQL server.
MetaDefender ICAP Server will need to create and use dedicated PostgreSQL users for database setup, upgrade and its own operations. Those users requires certain privileges configured on PostgreSQL server, otherwise expecting failures to occur while installing and operating MetaDefender ICAP Server
1.3.Create an unique instance name for that MetaDefender ICAP Server
- Instance name must contain at least 3 characters and no white space, no special character like: "", ";" or "
- Setup instance name only require for Shared database mode
- If you choose to leave it blank, which means it will use the default instance name with 6 characters extracted from that MetaDefender ICAP deployment ID.

2.Command Line Installation
2.1.Without Ignition file
Start installation process by Installing MetaDefender ICAP Server using the command line
The installation on Linux environment will ask to input the required information from console incase the Ignition file does not exist in designated location
The installation will request user input Postgres server information via console. User can provide information or hit enter to select default value in []
Postgres server information request:
DATABASE MODE (default is standalone mode)
- 1: for standalone
- 4: for share mode
Type of database (default is local)
- local
- remote
Port (default is 5433)
Database username: postgres
Database password
For example: Here is the screenshot if user input PostgreSQL information as below:
- database mode: standalone
- type of database: local
- port: 5434
- database username: postgres
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
===========
Please input your postgres server information
You can enter to make default value in [] for each option
===========
DATABASE MODE must be (1-standalone mode or 4-share mode) [1]: 1
TYPE (local or remote) [local]: local
PORT [5433]: 5434
USER [postgres]: postgres
PASSWORD:
CONFIRM PASSWORD:
Complete creating /etc/opswat/mdicapsrv.conf.
2.2.With Ignition file
Start installation process by Installing MetaDefender ICAP Server using the command line
Both Linux and Windows can use ignition file to add PostgreSQL server information since MD ICAP Server 5.2.0 , refer to Ignition file
Make sure to create the ignition file, if it doesn't exists before you go ahead and install MetaDefender ICAP Server 2.1.Without Ignition file. (more detail about Ignition file at Deployment automation support)
- Windows:
C:\OPSWAT\mdicapsrv.conf
- Linux:
/etc/opswat/mdicapsrv.conf
2.2.1.Setup Local (Bundle) PostgreSQL server
- MetaDefender ICAP Server will install a new PostgreSQL server locally, next to the product.
- A sample iginition file for PostgreSQL server information (Only non-Unicode characters supported for "user" and "password"__ _** _ __** _** _ __** _** **_ _ _ ):
+ Standalone mode
[global]
dbmode=1
[dbserver]
type=local
host=localhost
port=5433
user=postgres
password=non_Unicode_password
+ Shared mode
Specific the instance_name in ignition file (the instance_name must be unique)
if instance_name does not exist in mdicapsrv.conf then default instance name with 6 characters extracted from that MetaDefender ICAP deployment ID.
[global]
dbmode=4
instance_name=mdicapsrv_test_1
[dbserver]
type=local
host=localhost
port=5433
user=postgres
password=non_Unicode_password
2.2.2.Remote (Existing) PostgreSQL server
PostgreSQL version 12.14 is required.
MetaDefender ICAP Server will connect to a pre-installed PostgreSQL server running remotely and will setup its database.
Make sure to follow steps at Open Connection On PostgreSQL Server first, so that your remote existing PostgreSQL server to accept upcoming connection from MetaDefender ICAP Server .
A sample ignition file for PostgreSQL server information:
+ Standalone mode
[global]
dbmode=1
[dbserver]
type=remote
host=192.168.86.32
port=5433
user=existingserver_admin_user
password=existing_server_pass
+ Shared mode
Specific the instance_name in ignition file (the instance_name must be unique)
if instance_name does not exist in mdicapsrv.conf then default instance name with 6 characters extracted from that MetaDefender ICAP deployment ID.
[global]
dbmode=4
instance_name=mdicapsrv_test_1
[dbserver]
type=remote
host=192.168.86.32
port=5433
user=existingserver_admin_user
password=existing_server_pass
After installing MetaDefender ICAP Server successfully, you may want to remove all credentials info created for [dbserver] section in ignition file for security reason.