Fireshield (Hydra transport)
Hydra protocol feature
General information
The Unified SDK offers domain categorization functionality, enabling you to classify domains and perform specific actions on them while the traffic passes through a VPN connection.
Fireshield configuration file saves DATA_FOLDER/unified-sdk/fireshield in the following files:
fireshield - contains a fireshield config that will be used by Hydra
unsafefraud, unsafespam, unsafeuntrusted, safe, etc. - this files contains domains for any possible category (the category name must match the file name) in fireshield config
Possible fireshield category types
bypass - It means that website go to the Internet behind, without using the VPN tunnel
vpn - It means that website go to the Internet through the VPN tunnel
proxy_peer - It means that website go to the Internet through the VPN tunnel with some addition Hydra implementation
block_dns - It means that website will be blocked
block_alert_page - It means that website will be blocked and tunned alert page will be displayed
How to manual setup a fireshield on the client side
Create/change a fireshield configuration file named "fireshield" in "DATA_FOLDER/unified-sdk/fireshield"
File structure
Structure description
"enabled" - A value indicating whether to use Fireshield
"services" - Contains the names of some databases with compromised domains
"alert_page" - Contains the alert page definition (e.g. "https://foo.bar.com/security/safe_zone") where the user will be redirected if he tries to access the site marked as block_alert_page
"domain" - The domain of the alert page, for instance "foo.bar.com"
"path" - The path of the alert page, for instance "security/safe_zone"
"categories" - Describes the client Fireshield categories
"category" - The category name, name as you want
"type" - The Fireshield category type. Fireshield supports the following types
bypass - It means that website go to the Internet behind, without using the VPN tunnel
vpn - It means that website go to the Internet through the VPN tunnel
proxy_peer - It means that website go to the Internet through the VPN tunnel with some addition Hydra implementation
block_dns - It means that website will be blocked
block_alert_page - It means that website will be blocked and tunned alert page will be displayed
"domains" - Contains the list of domains splitted by category
"category_name_from_categories" - Contains the list of domains which will be tracked
How to setup a fireshield configuration on the client side using SDK
BuildFireshieldConfig
Builds the fireshield configuration. Replace existing configuration or create new one if it does not exist.
EnableFireshield
Enables fireshield feature.
DisableFireshield
Disables fireshield feature.
For EnableFireshield/DisableFireshield SDK returns FireshieldConfigurationException if configuration does not exist.
GetCurrentFireshieldConfig
Returns current fireshield configuration if exist or empty string.
DeleteFireshieldConfig
Deletes the fireshield configuration and all related files.
How to setup a custom fireshield configuration on the client side using SDK
Usually "domains"
or "categories"
fields in fireshield configuration do not contain very many entries. But in cases when these fields contain a lot of entries it will be a good way to build custom fireshield configuration.
First of all needs to create files which contain the "domains"/"categories"
entries.
For categories it should be "fireshield-var-categories"
.
For category rules it should be "fireshield-var-domains"
.
CreateCategoriesFile
Creates the "fireshield-var-categories"
file with categories. Use this if categories contain a lot of entries.
CreateCategoryRulesFile
Creates the "fireshield-var-domains"
file with category rules. Use this if category rules contain a lot of entries.
After creating files needs to build a custom fireshield configuration. Custom fireshield configuration should looks like this:
ApplyCustomFireshieldConfig
Applies the custom fireshield configuration.
If the file "##fireshield-var-categories##" or "##fireshield-var-domains##" was provided to SDK but does not exist that SDK returns FireshieldConfigurationException.
Last updated