SOLIDserver Hardening Guide-8.2
SOLIDserver Hardening Guide-8.2
Version 8.2
Hardening SOLIDserver
Hardening SOLIDserver
Revision: #128019
This document aims at detailing EfficientIP proprietary solutions. As our solutions rely on several third-party products, created by other
companies or organizations, it may redirect readers to third-party websites and documentation for further information. EfficientIP cannot
be liable for or expected to provide said information regarding products maintained or created by third parties.
In no event shall EfficientIP be liable for any special, punitive, indirect, incidental or consequential damages of any kind including, but
not limited to, loss of present or prospective profits or business, loss of data, business interruption, damages to reputation or image,
whether in an action of contract, negligence, or other action, arising out of or in connection with the use, reliance upon or performance
of the products provided by EfficientIP or any information contained herein.
All EfficientIP products and documentation are subject to separate licensing terms which users must agree to and comply with in order
to use such products and documentation.
Table of Contents
1. Prerequisites ................................................................................................................. 1
2. Hardening the Access Controls ...................................................................................... 2
Securing the BIOS Password ..................................................................................... 2
Securing the iDRAC Superuser Password .................................................................. 3
Securing the System Admin Access ........................................................................... 3
Securing the Superuser Password ............................................................................. 4
Securing CLI and GUI Connection Parameters ........................................................... 4
Securing the HTTPS Connection ............................................................................... 5
Securing the Firewall ............................................................................................... 15
Securing the Services ............................................................................................. 17
Securing NetChange ............................................................................................... 18
3. Hardening the Management Infrastructure .................................................................... 19
Setting User Access ................................................................................................ 19
Setting Authentication Rules .................................................................................... 22
Managing Backups .................................................................................................. 28
Setting High Availability ........................................................................................... 30
Encrypting the Database ......................................................................................... 33
4. Hardening the Monitoring Infrastructure ........................................................................ 38
Securing the SNMP Connections ............................................................................. 38
Defining Alerts ........................................................................................................ 46
Managing the Logs ................................................................................................. 48
Tracking Sessions and Users ................................................................................... 51
5. Hardening the DNS Management ................................................................................. 54
Configuring Recursive and Authoritative Resolution ................................................... 54
Configuring a Smart Architecture ............................................................................. 56
Configuring Hybrid DNS .......................................................................................... 58
Configuring DNSSEC .............................................................................................. 60
Configuring TSIG Keys ............................................................................................ 61
Configuring DNS ACLs ............................................................................................ 63
Configuring Rate Limits ........................................................................................... 66
Configuring Anycast DNS ........................................................................................ 67
Configuring DNS Guardian ...................................................................................... 67
A. Hardening Checklist .................................................................................................... 68
B. Matrices of Network Flows ........................................................................................... 69
SOLIDserver ........................................................................................................... 70
IPAM ...................................................................................................................... 71
DHCP .................................................................................................................... 72
DNS ....................................................................................................................... 73
NetChange ............................................................................................................. 76
Identity Manager ..................................................................................................... 77
Remote Management .............................................................................................. 78
iv
Chapter 1. Prerequisites
This document aims at describing EfficientIP operational guidelines to harden SOLIDserver
security in a production environment.
Before going further, you should have installed SOLIDserver following any guide below:
• Configuring SOLIDserver on Hardware Appliances.
• SOLIDserver Installation on Virtual Appliances.
• SOLIDserver Deployment on Amazon Web Services Cloud Environment.
• SOLIDserver Deployment on Microsoft Azure Cloud Environment.
• Reimaging SOLIDserver on Hardware Appliances.
• SOLIDserver Installation on SDS-50 Hardware Appliances.
1
All guides are available on our download portal .
Hardening is the process of securing a system and its applications against unknown threats by
reducing its surface of vulnerability. Therefore, we strongly recommend that you:
1. Do not to connect your appliance to the Internet before going through the securing and
configuration process.
2. Secure physical access to your appliances and management terminals. Physical hacking re-
mains one of the most dangerous threat to the security of your environment.
3. Make sure to have an IT Security policy in your organization and that it is consistent with the
use of SOLIDserver components and configuration.
4. Check the EfficientIP Knowledge Base to keep up with the latest product evolutions, at
https://kb.efficientip.com/index.php/Main_Page. Log in using your credentials.
5. Keep SOLIDserver up-to-date in your running supported version. It is strongly recommended
to apply a security patch less than 24 hours after its official release. For more details, refer to
the chapter Upgrading in the Administrator Guide.
1
At https://downloads.efficientip.com/support/downloads/docs/, in the relevant version folder. Log in using your credentials. If you do
not have credentials yet, request them at www.efficientip.com/support-access.
1
Chapter 2. Hardening the Access
Controls
SOLIDserver comes with default administrator credentials for the following accesses:
• BIOS: (unset)
• iDRAC: root / calvin
• System: admin / admin
• GUI/API access: ipmadmin / admin
• SSH: admin / admin
To prevent any unauthorized access, these default passwords should be changed. In addition,
you must keep track of your credentials and change them regularly. EfficientIP cannot,
under any circumstances, guarantee the recovery of lost credentials.
Note that EfficientIP cannot, under any circumstances, provide a procedure to recover a
lost BIOS password. Make sure to take all the necessary precautions when changing any BIOS
setting.
2
Hardening the Access Controls
a. Open any supported browser and, in the URL field, type in https://<iDRAC-configured-
IP-address>. If you are configuring from an iDRAC in version 8, the browser must have
Java installed.
b. Connect using the default credentials or the ones you set. For more details, refer to the
section Securing the iDRAC Superuser Password.
c. Click on Reset iDRAC , either from the bottom-left panel Quick Launch Tasks in iDRAC8
or via the menu Maintenance > Diagnostics in iDRAC.
d. During boot-up, in the drop-down menu Boot controls of the virtual console, select
BIOS Setup and press Enter .
3. Select System Security. The page opens and displays system security settings such as
the system password, setup password, TPM security, and Secure Boot. It also enables or
disables support for the power and NMI buttons on the server.
4. Edit the option Setup Password and set a password to restrict any change in the BIOS
settings, with the exception of the System password which can be changed without entering
the correct Setup password.
5. Edit the option Password Status and set it to Locked to prevent the System password from
being modified
Note that you can even edit the password level of security, as detailed in the section Securing
CLI and GUI Connection Parameters.
3
Hardening the Access Controls
Keep in mind that you can configure SOLIDserver to allow LDAP/RADIUS authentication for SSH
connections. For more details, refer to the appendix Using Remote Authentication for SSH Con-
nections to SOLIDserver in the Administrator Guide.
4
Hardening the Access Controls
2. In the section Expert, click on Registry database. The page Registry database opens.
3. In the search engine of the column Name, filter the list using one of the entries below:
4. In the column Value, click on the value of your choice. The wizard Registry database Edit
a value opens.
5. In the field Value, specify the value that suits your needs following the table above.
6. Click on OK to complete the operation. The report opens and closes. The page refreshes
and the new value is displayed.
7. Repeat the steps 3 to 6 for all the connection parameters that suit your needs.
By default, each appliance uses a self-signed certificate to secure connections. As this certificate
is not trusted by your web browser, warning messages appear to inform you that the certificate
is not from a trusted certifying authority, that its hostname is invalid, etc. This connection can be
prone to a man-in-the-middle (MITM) attack.
5
Hardening the Access Controls
When you receive such warnings, you can accept the certificate for the current session and save
it in the certificate store of your browser.
To eliminate the warning messages altogether, you can import or create a valid SSL certificate
and use this one instead of the default one to secure connections.
For more details on how to change the SSL certificate that authenticates the connections to the
appliance, refer to the section Changing the HTTPS Certificate in the chapter Configuring the
Services.
Note that you cannot edit SSL objects. If you import the wrong object, you can only delete it and
perform the import again for the right one. For more details, refer to the section Deleting SSL
Objects.
Importing Certificates
You can import as many self-signed certificates and CA signed certificates as you need. The
import wizard allows you to paste in the certificate details, including any Subject Alternative
Names, and its private key.
To import a certificate
Only users of the group admin can perform this operation.
1. In the sidebar, click on Administration or Admin Home. The page Admin Home opens.
6
Hardening the Access Controls
2. In the section Authentication & Security, click on Certificates and keys. The page All
certificates opens.
3. In the menu, select Import > Certificate. The wizard Import an SSL object opens.
4. In the field Name, name the certificate.
5. In the drop-down list Type, select Certificate.
6. In the field Certificate, paste in the certificate, in PEM format.
7. In the field Private key, paste in its private key.
8. Click on OK to complete the operation. The report opens and closes. The certificate is listed,
its private key is available on the certificate properties page.
Once you imported a valid certificate, if it is not a CA certificate, you can use it as HTTPS certi-
ficate for your local appliance. For more details, refer to the section Changing the HTTPS Certi-
ficate.
If you imported a CA certificate to secure the SSL communications between SOLIDserver appli-
ances, you can enable two registry database keys to enforce certificate validation.
Once you imported a valid CA certificate and enabled the registry database entries, you can use
it as HTTPS certificate for your local appliance. For more details, refer to the section Changing
the HTTPS Certificate.
Importing CSRs
You can import as many Certificate Signing Requests (CSR) as you need. The import wizard
allows you to paste in the certificate details, including any Subject Alternative Names, and its
private key.
7
Hardening the Access Controls
To import a CSR
Only users of the group admin can perform this operation.
1. In the sidebar, click on Administration or Admin Home. The page Admin Home opens.
2. In the section Authentication & Security, click on Certificates and keys. The page All
certificates opens.
3. In the menu, select Import > Certificate. The wizard Import an SSL object opens.
4. In the field Name, name the CSR.
5. In the drop-down list Type, select Certificate Signing Request. The page refreshes.
6. In the field Certificate, paste in the certificate, in PEM format.
7. In the field Private key, paste in its private key.
8. Click on OK to complete the operation. The report opens and closes. The CSR is listed, its
private key is available on the CSR properties page.
If you imported a private key, you can use it to create a certificate or a CSR. For more details,
refer to the section Creating Self-signed Certificates or Creating CSRs.
Note that you cannot edit SSL objects. If you create a misconfigured object, you can only delete
it and create it again. For more details, refer to the section Deleting SSL Objects.
8
Hardening the Access Controls
As each certificate is unique to a SOLIDserver appliance, you can configure it with Subject Altern-
ative Names for all the DNS names and IP addresses of the appliance.
The certificate creation wizard allows you to either configure and generate the certificate private
key or use an existing private key. For more details on private keys import or creation, refer to
the sections Importing Private Keys and Creating Private Keys.
9
Hardening the Access Controls
13. Click on OK to complete the operation. The report opens and closes. The certificate is listed,
its private key is available on the certificate properties page.
Once you created a valid certificate, you can use it as HTTPS certificate for your local appli-
ance. For more details, refer to the section Changing the HTTPS Certificate.
10
Hardening the Access Controls
Creating CSRs
From the page All certificates, you can create as many Certificate Signing Requests (CSR) files
as you need. The CSR details can be sent to the Certificate Authority that generates your certi-
ficate. Then you must import the certificate you receive, as detailed in the section Importing
Certificates.
As a CSR is used to generated a unique certificate for a SOLIDserver appliance, you can configure
it with Subject Alternative Names for all the DNS names and IP addresses of the appliance.
The CSR creation wizard allows you to either configure and generate the certificate private key
or use an existing private key. For more details on private keys import or creation, refer to the
sections Importing Private Keys and Creating Private Keys.
To create a CSR
Only users of the group admin can perform this operation.
1. In the sidebar, click on Administration or Admin Home. The page Admin Home opens.
2. In the section Authentication & Security, click on Certificates and keys. The page All
certificates opens.
3. In the menu, click on Add. The wizard Create an SSL object opens.
4. In the field Object Name, name the CSR.
5. In the drop-down list SSL File Type, select CSR File. The page refreshes.
6. In the drop-down list Encryption type, RSA is displayed in read-only.
7. In the field Encryption, specify the value of your choice. By default, 2048 is displayed.
8. Click on NEXT . The last page opens.
9. Configure the file details:
a. In the field Country Code, specify the two letter code of your country.
b. In the field State or Province, specify the state, province or region name in full letters.
c. In the field Locality, specify the city name.
d. In the field Organization Name, specify your company name.
e. In the field Organization Unit Name, specify the name of the department of the final
user.
f. In the field Common Name, specify the appliance hostname.
g. In the field Email address, specify your email address.
10. You can configure Subject Alternative Names for the appliance:
a. In the drop-down list Type, select DNS or IP. The page refreshes.
b. In the field Value, specify the DNS name (hostname) or the IP address of the appliance.
c. In the field Subject Alternative Name, the Type and Value are displayed.
d. Click on ADD . The Subject Alternative Name is moved to the list Subject Alternative
Names.
• To update an entry in the list, select it. It is displayed in the field(s) again. Edit the
field(s) and click on UPDATE .
• To delete an entry from the list, select it and click on DELETE .
• To discard changes, click on CANCEL .
e. Repeat these operations for all the DNS names and IP addresses of the appliance.
11
Hardening the Access Controls
11. Click on OK to complete the operation. The report opens and closes. The CSR is listed, its
private key is available on the CSR properties page.
Once you created a CSR, you can go to its properties page to download the content of the
panel Certificate and send it to the Certificate Authority. For more details, refer to the section
Downloading SSL objects.
12
Hardening the Access Controls
Private keys can be used to create certificates or CSRs. For more details, refer to the sections
Creating Self-signed Certificates and Creating CSRs.
Note that the panel Certificate is displayed in PEM format and includes all the configured Subject
Alternative Names.
13
Hardening the Access Controls
14
Hardening the Access Controls
Be careful when configuring the firewall as it may lead to loss of connection between your devices.
We recommend that:
• The firewall remains enabled, i.e. in Restricted mode.
• The UDP port 161 (SNMP) be restricted to the management interface and only allow connection
from management appliances and system administrators networks.
• The TCP ports 80 and 443 (HTTP and HTTPS) be restricted to the management interface and
only allow connection from management appliances and system administrators networks.
• The TCP port 22 (SSH) be restricted to the management interface and only allow connection
from management appliances and system administrators networks.
• The TCP port 5432 (PostgreSQL) denies connection from any IP address except between
two appliances in High Availability.
• The UDP and TCP ports 123 (NTP) deny connection from any IP address if the appliance does
not need to offer time service to other hosts on the network.
In any case, we strongly recommend authorizing connection to the least access points possible.
For more details on all SOLIDserver network configurations, refer to the appendix Matrices of
Network Flows.
You can Open the firewall, to disable it, and ignore all these rules.
1
also known as dynamic packet filtering.
15
Hardening the Access Controls
rules from a DNS server A to a DNS server B via the same port, interface and protocol, if one
denies access while the other grants it, only the rule with the smallest position is applied.
• As the firewall is restrictive, the last position 65535 denies access to any kind of packets, no
matter what protocol or where it goes or comes from. In addition, the positions 1 - 99 and 59999
- 65535 are reserved by EfficientIP and cannot be used.
16
Hardening the Access Controls
Parameter Description
Log The logging status of the rule. By default, No is selected. You can decide to save, Yes,
the log parameter indicating if a packet matches a rule on the page Syslog; it is saved
with a facility SECURITY name.
Keep state The dynamic rule status of the rule. By default, No is selected. It allows you to decide if
you want SOLIDserver firewall to add a dynamic rule, upon match, whose default beha-
vior is to match bidirectional traffic between source and destination IP/port using the
same protocol.
Note that the SNMP and NTP services must never be stopped or disabled. For more details,
refer to the chapters Configuring the Services and Configuring the Time and Date in the Admin-
istrator Guide.
To enable/disable a service
Only users of the group admin can perform this operation.
1. In the sidebar, click on Administration or Admin Home. The page Admin Home opens.
2. In the section System, click on Services configuration. The page Services configuration
opens.
3. In the column Name, look for the service of your choice.
4. In the column Enabled:
a. To enable the service, click on Disabled. The wizard opens.
b. To disable the service, click on Enabled. The wizard opens.
5. Click on OK to complete the operation.
6. Right now your configuration is pending. In the menu, select Tools > Apply configuration
to save your changes or Tools > Rollback configuration to discard them. The corres-
ponding wizard opens, click on OK to complete the operation. The page refreshes.
17
Hardening the Access Controls
• A disabled service is automatically stopped, so you can only stop an Enabled service.
To start/stop a service
Only users of the group admin can perform this operation.
1. In the sidebar, click on Administration or Admin Home. The page Admin Home opens.
2. In the section System, click on Services configuration. The page Services configuration
opens.
3. In the column Name, look for the service of your choice.
4. In the column Running:
a. To start the service, click on Stopped. The wizard opens.
b. To stop the service, click on Started. The wizard opens.
5. Click on OK to complete the operation.
Securing NetChange
SOLIDserver allows to manage versioning for your network devices, which is supported by most
vendors, to automatically save all the changes in the configuration files. All the revisions of the
files are then saved in SOLIDserver backup file. For more details, refer to the section Managing
Configuration Versioning in the Administrator Guide.
Thanks to a registry database key, you can show or hide all or some of the passwords of the
configuration file. By default, they are all hidden and we strongly recommend leaving it this way.
Table 2.3. Available display options for passwords in the configuration file
Value Description
0 Allows you to hide all the passwords in the configuration files.
1 Allows you to display only the encrypted passwords of the configuration files, in their encrypted
form. All the non-encrypted passwords are hidden.
This display option can be useful to keep track of the password changes without displaying them.
2 Allows you to display all the passwords of the configuration files.
This display option is not recommended.
18
Chapter 3. Hardening the Management
Infrastructure
The management infrastructure can be hardened by:
• Setting specific access to users.
• Adding authentication rule(s) to grant access to SOLIDserver to external Microsoft Active Dir-
ectory, RADIUS, LDAP and OpenID users.
• Defining a custom backup management.
• Configuring two appliances in High Availability to ensure uninterrupted access.
Being logged as the superuser, ipmadmin, you belong to the most privileged group, admin. Users
of that group can perform all operations and have access to all existing resources. Some operations
can only be performed by the users of that group, in which case it is specified in the procedure.
In the following sections, you add a group of users and set it with:
• Rights, all the granted and denied operations, such as adding or deleting a resource type.
• Resources, all the objects you can perform the rights on, such as servers, zones or networks.
• Users, they must belong to a group to have access to the appliance and specific rights and
resources.
In addition, these groups of users can be externally authenticated via Microsoft Active Directory,
RADIUS, LDAP or OpenID. For more details, refer to the section Setting Authentication Rules.
Setting Groups
You can add as many groups as you need. For each group you can then define rights and re-
sources, which includes its users.
To add a group
Only users of the group admin can perform this operation.
19
Hardening the Management
Infrastructure
1. In the sidebar, click on Administration or Admin Home. The page Admin Home opens.
2. In the section Authentication & Security, click on Groups. The page opens.
3. In the menu, click on Add. The wizard Add a group opens.
4. In the list Parent group, select the parent group of your choice or None. The selected parent
group can add users to the group you are adding.
5. Click on NEXT . The next page opens.
6. If classes are enabled, in the list Group class, select a class or None.
Click on NEXT . The last page opens.
If no custom class is enabled, the class dedicated page is automatically skipped. Note that
applying a class on an object can impact the configuration fields available and/or required.
7. In the field Group name, name the group. If you intent to authenticate users via AD, name
the group after an existing AD group.
8. In the field Description, you can specify a description.
9. In the drop-down list Copy rights from group, you can select any group, except admin, or
None. The rights of the selected group are granted or denied to the group you are adding,
their rights configuration is exactly the same. You can edit the Rights of the new group later
on.
10. Click on OK to complete the operation. The report opens and closes. The group is listed.
Setting Rights
The rights are services in essence that can be granted or denied to groups of users. They corres-
pond to operations named as follows: <action-granted>: <object-concerned>.
The group admin is the only one with full administration rights. You must configure rights for all
other groups.
For more details regarding group rights, refer to the chapter Managing Groups in the Administrator
Guide.
20
Hardening the Management
Infrastructure
Setting Resources
Adding an object, such as a DNS server or a terminal network, to a group resources means that:
• Its users can display, in read-only, the parent object(s) of the resource.
For example, adding a DNS zone as a resource to a group allows its users to display the
server it belongs to. However, they cannot display the other zones in that server if they are not
added to the resources of the group. In any case, users need the right to display the module
elements.
• Its users can perform operations, granted rights, over the object(s) set as resource.
For example, adding a DHCP scope as a resource to a group allows its users to edit it if the
group has the right to edit scopes. If the group does not have the right to edit DHCP servers,
the server containing the scope can be displayed, as described above, but it cannot be edited.
• Its users can apply display the content of the object(s) set as resource.
For example, adding a space as a resource to a group allows its users to add networks in it if
the group has the right to add networks.
Note that you can also add resources to a group from a listing page or from a resource properties
page. For more details, refer to the section Managing the Resources of a Group of Users in the
Administrator Guide.
Setting Users
When you add users to a group, it grants them the right configured for said group. Users can be
part of multiple groups at the same time, cumulating the rights and resources of each of them.
If you want to use an external authentication system, we strongly suggest that you configure
your group of users before enabling the remote authentication rules. Once the authentication
rules are enabled, the corresponding users can log in SOLIDserver. This goes especially for AD
authentication, once the rule is enabled any AD user can log in the appliance. If you added a
group of users named after the AD group the users belong to, SOLIDserver automatically adds
a user in the GUI and put it in the corresponding group of users. For more details, refer to the
section Setting Authentication Rules.
21
Hardening the Management
Infrastructure
2. In the section Authentication & Security, click on Users. The page opens.
3. In the menu, click on Add. The wizard Add a user opens.
4. If classes are enabled, in the list User class, select a class or None.
Click on NEXT . The next page opens.
If no custom class is enabled, the class dedicated page is automatically skipped. Note that
applying a class on an object can impact the configuration fields available and/or required.
5. In the field Login, specify the user login. This login cannot be an email address.
1
6. In the field Password, specify the user password .
7. In the field Confirm password, specify the user password again.
8. To configure additional parameters:
a. Tick the box Expert mode.
b. In the field First name, specify the user first name.
c. In the field Last name, specify the user last name.
d. In the field Official name, the user last and first name are automatically displayed. You
can replace them by a shortname or shorter name if you want.
e. In the field Email, specify the user email address.
f. In the field Login URL, specify the URL toward which the user should be directed after
being authenticated.
g. In the drop-down list Maintainer group, select the group of users that should be able
to edit the user information (names, credentials, email...) and classes.
9. Click on OK to complete the operation. The report opens and closes. The user is listed among
the users with its Login, Official name and Origin in the corresponding columns.
Once you added a user, you must add it as the resources of any group. It can also belong to
several groups with different resources and rights. The user credentials are the same but their
access correspond to the group they belong to.
Note that this guide does not detail how to authenticate OpenID users. For more details, refer to
the chapter Managing Authentication Rules in the Administrator Guide.
1
If the user is of Unix type and the password is not printable, the system password is used.
22
Hardening the Management
Infrastructure
From the page Authentication rules you can add rules dedicated to authenticate Active Directory,
LDAP and/or RADIUS users. Once you add a rule, SOLIDserver can grant secure access to the
identified users or deny them access if they are not found anywhere.
Thanks to a systematic check of all the remote authentication possible configurations, you can
add as many rules as you want to authenticate users stored on AD, LDAP or RADIUS remote
servers. SOLIDserver compares and checks all the user credentials against one another. This
allows you to set different authentication configurations for each remote server.
Note that there is no order in which authentication rules are checked, therefore, it is important
to keep your authentication servers updated with the same data. If a user is in the group A on a
server and in the group B on another server, there is no mean to set a preference for one authen-
tication rule over the other.
Active Directory (AD) is a technology created by Microsoft that provides a variety of network
services, including LDAP like directory services and other network information. SOLIDserver
supports remote authentication with any AD running on Microsoft Window Server 2008, 2008
R2, 2012 R2, 2016 or 2019.
To successfully authenticate users and take into account existing AD groups, you must:
1. Already have at least one group added both on the AD server and among SOLIDserver groups
of users with the exact same name, down to the case. The group name in SOLIDserver must
match the AD group name, the group name is case sensitive.
2. Configure said group with the resources and rights that define the users profile.
3. Add and configure the AD authentication rule with the option Synchronize set to Yes. You can
even configure it to deny access to users that do not belong to an AD group.
With this configuration, AD users are automatically added as resource of the matching local
group when they connect, they are granted the relevant rights and resources.
Once the rule is added, AD users can connect to SOLIDserver. Note that:
• The changes performed on the AD server are not immediately taken into account by SOLID-
server. To avoid waiting, you can delete the AD users you modified from the page Users, when
they connect again, SOLIDserver contacts the AD server and authenticates them with their
new parameters.
• If several email addresses are available for one user, only the first non-empty value is taken
into account.
23
Hardening the Management
Infrastructure
5. In the field Rule name, name the rule. This name is used as the Instance of the rule.
6. In the field Comment, you can add a comment regarding that rule.
7. Click on NEXT . The page Rule filters opens.
8. Click on NEXT . The page Rule parameters opens.
9. Configure the basic AD authentication parameters following the table below:
24
Hardening the Management
Infrastructure
Field Description
Base DN The name of the top of the AD tree. The level specified is the starting point of
the search for a matching user account on the server. You can customize this
field in order to look in specific location(s) of the AD. This field is optional.
Use sAMAccountName You can decide to use or not the sAMAccountName field as user login. This
field as login parameter is used for pre-AD installation (basically NTDS) and accepts 8-char-
acters long login names instead of regular longer names. This field is optional.
14. Click on OK to complete the operation. The report opens and closes. The rule now is listed,
its Instance matches the Rule name you set.
If some users connections fail, some guidelines may help an administrator to troubleshoot the
authentication.
Most of the time, the source of the problem is that the AD connection is impossible. The
column may even indicate that the AD user credentials are not recognized as a member of
any existing SOLIDserver group.
Lightweight Directory Access Protocol (LDAP) is an application protocol over TCP/IP for querying
and modifying directory services that might hold passwords, addresses, groups, public encryption
keys and other exchange-facilitating data.
To set up authentication for SSH connections, refer to the appendix Using Remote Authentication
for SSH Connections to SOLIDserver in the Administrator Guide.
To successfully authenticate users and take into account an existing LDAP group, before
the first user connection you must:
1. Add a group of users within SOLIDserver matching the relevant LDAP group. This local group
must have the same name as the LDAP group. Therefore, to include the whole LDAP repository
tree structure, it may look as follows: cn=group1,ou=Groups,dc=example,dc=com.
25
Hardening the Management
Infrastructure
2. Add and configure the LDAP authentication rule with the option Group attribute set to match
this LDAP group.
With this configuration, LDAP users are automatically added as resource of the matching local
group when they connect, they are granted the relevant rights and resources.
If you have clients distributed among several LDAP groups, you can decide to add local groups
that only use the section Common Name (CN) of your LDAP groups. To do so, you need to tick
the relevant box during the rule configuration. Keep in mind that if you tick this box, the name of
all LDAP groups you add within SOLIDserver must only use the CN. You cannot mix long and
short group names in the database to authenticate LDAP users.
Once the rule is added, LDAP users can connect to SOLIDserver. Note that:
• The changes performed on the LDAP server are not immediately taken into account by
SOLIDserver. To avoid waiting, you can delete the LDAP users you modified from the page
Users, when they connect again, SOLIDserver contacts the LDAP server and authenticates
them with their new parameters.
• If several email addresses are available for one user, only the first non-empty value is taken
into account.
26
Hardening the Management
Infrastructure
Field Description
Short group name (CN) Tick this box if you want to use only the Common Name (CN) as group
name, instead of the whole directory tree structure. This box should be
ticked for all LDAP rules or none of them, so make sure that all the groups
of users locally added in SOLIDserver are named using only the CN before
the first user authenticates. This field is optional
LDAP group granted "admin" The name of any group on the LDAP server. All the users of the specified
rights group are granted access to SOLIDserver with the same rights as the users
of the group admin. These users are also listed as resource of the group
admin. This field is optional.
Login The login of an account that can retrieve the LDAP attributes of the users
that you want to grant access to SOLIDserver. This field is optional and
based on the attribute uid. Note that if your LDAP is configured in a very
strict manner and do not not specify an account with sufficient rights,
standard users might not be able to browse their own attributes.
Password If you specified a Login, specify its account password.
10. Click on OK to complete the operation. The report opens and closes. The rule now is listed,
its Instance matches the Rule name you set.
Remote Authentication Dial In User Service (RADIUS) is a networking protocol that uses access
servers to provide centralized access management to large networks.
To set up authentication for SSH connections, refer to the appendix Using Remote Authentication
for SSH Connections to SOLIDserver in the Administrator Guide.
You can use FreeRADIUS or RADIUS for Cisco ACS with SOLIDserver. For more details, refer
to the appendix Configuring RADIUS in the Administrator Guide.
27
Hardening the Management
Infrastructure
10. Click on OK to complete the operation. The report opens and closes. The rule now is listed,
its Instance matches the Rule name you set.
Managing Backups
Backup files allow to restore the configuration of an appliance. You can store them locally and
even archive them on a remote server.
You should regularly backup your appliance. In order to help you perform this maintenance oper-
ation, SOLIDserver includes automatic backup and version management mechanism.
The backup process can either be scheduled or triggered on demand. Note that:
• SOLIDserver automatically generates a new backup before each upgrade to allow revert-
ing back its data and configuration.
• The backup files are stored on the appliance itself, but you can also decide to store the backup
files on a remote FTP server or SFTP server. For ease of use and to prevent confusion, binaries,
system and log files are not included in the backup stored on the appliance. Still, they can be
restored separately, either when you reinstall SOLIDserver or when you update the system.
Keep in mind that creating an instant backup during the enrollment of a Hot Standby appliance
in High Availability may trigger an error.
28
Hardening the Management
Infrastructure
2. In the section Maintenance, click on Backup & Restore. The page Backup & Restore
opens.
3. Under the menu, in the drop-down list SOLIDserver, make sure your local appliance is se-
lected.
4. In the menu, select Tools > Create instant backup. The wizard Create instant backup
opens.
5. To only save the database, configuration files and certificates, and avoid generating a large
backup file, you can tick any of the following boxes:
• Exclude all the reports, i.e. all the performed operations of the window Notifications in
the top bar.
• Exclude all the files from the directory "tftpboot".
• Exclude all the files from the directory "users". By default, this box is ticked.
6. Click on OK to complete the operation. The report opens and works for a while. Once the
backup is generated, it is listed in the panel Local backup file and named solid-<hostname>-
<year><month><day>-<hour><minutes>.gz.
You can archive a copy of SOLIDserver backup files on a remote server. Note that:
• You can archive backups on an FTP server or an SFTP server. We strongly recommend using
SFTP as it relies on an SSH key instead of a password, which is far more secure than FTP.
• You can configure the remote server to decide which logs to include, how many days they
should keep the backup files, and which port to use. On SFTP servers, usually the same port
than SSH is used.
• If no remote archive is configured, the panel Remote archive contains the message Remote
archive is disabled.
29
Hardening the Management
Infrastructure
Field Description
Remote password If you selected Active FTP or Passive FTP, the password of the account used to
connect to the FTP server.
DNS
DNS firewall (RPZ)
Tick any of these boxes to save the corresponding logs on the remote server.
DHCP
System
Retention The number of days, from 4 days to Unlimited, beyond which a backup should be
automatically deleted from the FTP server. By default, 4 days is selected.
7. Click on OK to complete the operation. The report opens and closes. The page refreshes
and the panel Remote archive displays the configuration you just set.
8. If you selected SFTP, the panel SSH local key displays the SSH public key used. You must
COPY it and paste it on the SFTP server to secure the communication with SOLIDserver.
In such a configuration, the local Master appliance contains all the data you manage, and the
remote Hot Standby replicates the Master database. Each appliance can have a specific config-
uration of its services and network. The remote appliance becomes a read-only backup server
replicating the content of the Master appliance database.
You can even enable to automatic switch between the appliances if the Master crashes or en-
counters any problem, the Hot Standby can replace it immediately and vice versa. Therefore,
the Hot Standby must replicate the Master database as often as possible.
For more details regarding the management of appliances configured in High Availability, refer
to the chapter Centralized Management in the Administrator Guide.
Prerequisites
• You must have two SOLIDserver appliances.
• The HA configuration can only be configured from and with appliances using an IPv4 address.
• On all appliances, the NTP should be configured to make sure they are all set at the same
time and date. For more details, refer to the chapter Configuring the Time and Date in the Ad-
ministrator Guide.
Limitations
• The database High Availability is configurable only for two appliances.
30
Hardening the Management
Infrastructure
Configuring an appliance locally means assigning it an IP address. This operation defines the IP
address of the appliance as the Master address, it sets the grounds for the Master/Hot Standby
configuration.
The local appliance becomes a management platform where you remotely manage and/or
monitor other SOLIDserver appliances via the drop-down list SOLIDserver available on the pages
Network configuration, Services configuration, Syslog and System statistics of the module Admin-
istration.
Only one of the remote appliances can be used as Hot Standby. For more details, refer to the
chapter Centralized Management in the Administrator Guide.
31
Hardening the Management
Infrastructure
For more details regarding how to configure the SNMP parameters used to monitor the Hot
Standby appliance, refer to the Adding a Remote Appliance in the Administrator Guide.
This configuration has to be done from the future Master appliance and can be done on layer 2
or 3 or the network. For more details, refer to the section Frequently Asked Questions of the
chapter Centralized Management in the Administrator Guide.
Keep in mind that for the configuration to be viable and effective the two appliances must:
• Meet the prerequisites.
• Be set at the same time. For more details, refer to the chapter Configuring the NTP Server in
the Administrator Guide.
• Have the same version of SOLIDserver.
• Have the same performance rate, to ensure a smooth transition. In the event of a switch, the
former Hot Standby has retrieved all the database information and can actually provide the
same performance and efficiency as the original Master.
• Have the same architecture (32 bits or 64 bits).
32
Hardening the Management
Infrastructure
appliance set as Hot Standby is unavailable for a while. Each appliance Role is modified
according to the configuration, they now share the same HA UID.
For more details regarding the available switch configurations, refer to the section Configuring
High Availability Advanced Options in the Administrator Guide.
33
Hardening the Management
Infrastructure
• The database keys are not included in the appliance backup file.You must download and keep
them in a safe location.
• In High Availability, once the Hot Standby has replicated the Master data, both appliances have
an encrypted database.
By default, only on fresh installations, a database key is available on the page. You can sort and
filter all the columns on the page but you cannot change their layout.
The panel Database key displays all the properties of the key and allows you to download it.
! Active (missing) The key should be active but is missing from the key file. The database is not encryp-
ted. To activate the database encryption, you must import the key. For more details,
refer to the section Importing Database Keys.
Inactive The key is inactive and saved, it can be used to encrypt the database. For more
details, refer to the section Activating the Database Encryption.
! Inactive (missing) The key is inactive and missing from the key file. It cannot be used to encrypt the
database. If you want to use it to encrypt the database, you must import the key. For
more details, refer to the section Importing Database Keys.
! Inactive (unsaved) The key is inactive and unsaved, it cannot be used to encrypt the database. This is
the default status of all the keys you add. If you want to use the key to encrypt the
database, you must download it. For more details, refer to the section Downloading
Database Keys or Activating the Database Encryption.
34
Hardening the Management
Infrastructure
If a banner above the top bar notifies you of any activation error, refer to the section
Troubleshooting the Database Encryption.
35
Hardening the Management
Infrastructure
Once the database encryption is active, you can use a different database key to encrypt sensitive
data. Note that, in the procedure below, we tick the key that replaces the current active one, but
you can also execute the option Activate encryption without ticking any key and select it on the
last page of the wizard.
Importing keys is useful if you already have database keys that can be used to encrypt sensitive
data, if the key used to encrypt the database has the Status Active (missing) or after restoring a
backup.
Note that if you configured appliances in High Availability, the Hot Standby automatically replicates
the database keys of the Master.
36
Hardening the Management
Infrastructure
It is recommended to download the relevant keys before you generate a backup or before upgrad-
ing the appliance.
37
Chapter 4. Hardening the Monitoring
Infrastructure
Once you secured accesses to your system, its management hierarchy and its backup policy, it
is important that you constantly keep an eye on its working state.
Management appliances rely on this SNMP server to retrieve statistics from some of the resources
they manage. This includes:
• Other SOLIDserver appliances dedicated to management, whether via remote management
or High Availability.
• Other SOLIDserver appliances dedicated to DNS or DHCP services, i.e. Efficient DNS or DHCP
servers.
• Some compatible network devices managed via NetChange.
• On all the elements from which SNMP statistics can be retrieved, you need to set SNMP cre-
dentials other than the default ones. For more details, refer to the section Configuring the SNMP
Service.
• On the management appliance, you need to save these credentials as SNMP profiles so it can
use them to retrieve statistics. For more details, refer to the section Managing SNMP Profiles.
• On the management appliance, you need to select what profile to use for each resource to
monitor. For more details, refer to the section Defining a Resource SNMP Profile.
On hardware SOLIDserver appliances with iDRAC, you can also configure SNMP monitoring for
an extra layer of security. For more details, refer to the section Monitoring the iDRAC Using SNMP.
1
Such as Nagios or HP OpenView
38
Hardening the Monitoring
Infrastructure
Note that:
• The SNMP service must never be stopped or disabled. If you do not want it to offer statistics,
prefer using a firewall rule to block any traffic on the port 161. For more details, refer to the
chapter Securing the Firewall.
• You can monitor the server state from the columns Running and Enabled.
• SNMPv3 requires a properly configured NTP server. For more details, refer to the section
Configuring the NTP Server in the Administrator Guide.
• If you want to retrieve statistics from SNMP compatible devices managed via NetChange, you
need to set the credentials directly on the device. For more details, refer to the related propri-
etary documentation.
No matter what you select, the field Access is grayed out and displays Read-only.
b. If you left v1/v2c selected, complete the configuration via the following fields.
39
Hardening the Monitoring
Infrastructure
c. If you selected v3, complete the configuration via the following fields.
d. When the configuration is complete, click on ADD . The profile is moved to the SNMP
access list.
e. Repeat these actions for as many SNMP profiles as needed.
• To update an entry in the list, select it. It is displayed in the field(s) again. Edit the
field(s) and click on UPDATE .
• To delete an entry from the list, select it and click on DELETE .
• To discard changes, click on CANCEL .
40
Hardening the Monitoring
Infrastructure
b. When your configuration is complete, click on ADD . The profile is moved to the Trap
list.
c. Repeat these actions for as many traps as needed.
• To update an entry in the list, select it. It is displayed in the field(s) again. Edit the
field(s) and click on UPDATE .
• To delete an entry from the list, select it and click on DELETE .
• To discard changes, click on CANCEL .
By default, 3 profiles are available to query an appliance SNMP server, standard v1, standard
v2c and standard v3. For more details, refer to the section Managing SNMP Profiles in the Ad-
ministrator Guide.
If you edited the profiles allowed to access the SNMP server when you configured the SNMP
service, you need to add these new profiles.
Once you added profiles, you can select which one to use for each resource to monitor. For more
details, refer to the next section Defining a Resource SNMP Profile.
41
Hardening the Monitoring
Infrastructure
10. Click on OK to complete the operation. The profile is listed in the panel.
42
Hardening the Monitoring
Infrastructure
Field Description
Use TCP The network communication protocol, either TCP (Yes) or UDP (No). By default, No is
selected. You should use TCP instead of UDP if the network link is unreliable. This field
is required.
SNMP transfer The number of minutes above which the SNMP transfer is aborted when you add or refresh
timeout (minutes) a device, a value between 0 and 999. By default, it is set to 0. This field is optional.
To monitor the iDRAC using SNMP, you need to enable the alerts from its web platform. During
the configuration, you specify how to be notified, via SNMP trap and/or mail notification, and
configure which alerts should be included in the notification.
43
Hardening the Monitoring
Infrastructure
44
Hardening the Monitoring
Infrastructure
c. Login using your iDRAC credentials. For more details, refer to the section Securing the
iDRAC Superuser Password.
d. Hit Enter. The iDRAC homepage opens.
2. Enable and configure the alerts
a. In the navigation menu, click on Configuration > System Settings. The page refreshes.
b. Click on Alert Configuration. The section expands.
c. In the drop down list Alerts, select Enabled.
d. Click on Apply to commit your modifications.
e. In the sections Category and Severity, tick the boxes that suit your needs.
f. Click on Apply to commit your modifications.
g. Click on Alerts and Remote System Log Configuration. The section expands.
h. In the columns Email and SNMP Trap, tick the boxes that suit your needs.
i. Click on Apply to commit your modifications.
3. Configure the SNMP trap destinations
a. In the navigation menu, click on Configuration > System Settings. The page refreshes.
b. Click on SNMP Traps Configuration. The section expands.
c. For each SNMP server to notify, fill in the field Destination Address, tick the related
box State.
d. Click on Apply to commit your modifications.
e. In the section SNMP Trap Format, indicate the version that suits your needs.
f. Click on Apply to commit your modifications.
g. In the section SNMP Settings, indicate your remote SNMP server parameters.
h. Click on Apply to commit your modifications.
4. Configure the email destinations
a. In the navigation menu, click on Configuration > System Settings. The page refreshes.
b. Click on SMTP (E-mail) Configuration. The section expands.
c. For each email address to notify, fill in the field Destination Email Address and tick
the related box State.
d. Click on Apply to commit your modifications.
e. In the section SMTP (E-mail) Server Settings, indicate your remote SMTP server
parameters.
f. Click on Apply to commit your modifications.
5. Configure the remote syslog destinations
a. In the navigation menu, click on Configuration > System Settings. The page refreshes.
b. Click on Remote Syslog Configuration. The section expands.
c. In the drop down list Remote Syslog, select Enabled.
d. In the fields Syslog Server #, specify the IP address of the remote syslog server to
notify. You can indicate up to 3 remote syslog servers.
e. In the field Port number, specify the port of the remote syslog server to notify. It is the
same on all the specified servers. By default, the value is 514.
f. Click on Apply to commit your modifications.
45
Hardening the Monitoring
Infrastructure
Defining Alerts
From any page of SOLIDserver you can add alerts.You can filter the list to customize the triggers
before adding your alerts.
In the procedure below, we add an alert on the page All zones already filtered with !=OK in the
column Status. That way, the alert is triggered when the status of any zone changes to a value
different from OK, it can send an email and/or an SNMP trap depending on what you configure.
• Via email, by selecting one or several groups of users or by indicating specific mail addresses.
You can configure the email address of a user when you add it. For more details, refer to the
chapter Hardening the Management Infrastructure.
• Via an SNMP trap to an external management platform by indicating its IP address and com-
munity string, if the SNMP server of the appliance is properly configured. For more details re-
garding how to configure the appliance SNMP server, refer to the chapter Securing the SNMP
Connections.
For more details regarding how to define and manage alerts, refer to the section Managing Alerts
in the Administrator Guide.
To add an alert
This procedure is an example, it sends an alert if any zone status changes to anything but OK.
1. Go to the page of your choice and filter the list according to your needs.
a. In the sidebar, go to DNS > Zones. The page All zones opens.
b. In the column Server, click on the name of the server of your choice to display the zones
it contains.
c. In the search engine of the column Status, click on . The filter constructor opens.
d. In the drop-down list on the left, select != (different from).
e. In the field on the right, click on . The statuses drop-down list opens.
f. Select OK and click on APPLY . The page refreshes. The column search engine now
contains != OK and only the zones with a status different from OK are displayed.
2. In the menu, select Alerts, gadgets & Smart Folders > Add an Alert. The wizard Add
an alert definition opens.
3. In the field Name, name the alert. By default, the alert is named after the module and page
from where you configure it, in our example DNS: Zones.
4. In the field Description, you can specify a description if needed.
5. For alerts added from the DNS page Analytics displaying Guardian data, in the drop-down
list Period, select the overall period of data to retrieve, either the last 1h, 3h or 6h.
6. In the section Expert mode, tick the box to display the expert configuration fields.
7. Through the fields Filter results and Value, you can configure the alert execution parameters.
46
Hardening the Monitoring
Infrastructure
Field Description
Value A number that corresponds to the threshold of your the filter you set before adding
the alert. By default, 0 is displayed.
For instance, if you do not want the alert to be triggered for less than 2 zones with a status
different from OK, you can select Greater than in the drop-down list Filter results and 2 in
the field Value.
8. In the section Triggered by change, tick the box if you want your alert to match your filter
only by change. In the case of our example, if you do not tick the box and three zones already
correspond to the filter (they could be in delayed create, timeout...), the alert is triggered if,
at the next check, the zones are still not set to OK.
9. In the drop-down list Alert Priority, define the alert priority. It can be Low, Normal, High,
Urgent or Immediate.
10. In the drop-down list Alert Severity, define the alert severity. You can choose among Minor,
Major, Crash and Block.
11. In the drop-down list Alert Group Owner, select a group of users among the ones you added.
12. You can tick the box Edit scheduling to configure a specific check frequency for the alert.
By default, the check is performed every 5 minutes of every hour, every day and every month.
13. You can tick the box Send mail to notify the users of your choice via email when the alert
definition is met. The following fields appear.
a. In the drop-down list Mailing lists, select an existing group of users. The email address
of the users of the group must be configured, otherwise they can never receive the alert
notification.
b. In the field Additional Mail, specify the target email address of the alert notification.
c. Click on ADD to move the information to the Additional Mail List. The list contains all
the recipients of the alert email.
d. Repeat these actions from as many recipients as needed.
• To update an entry in the list, select it. It is displayed in the field(s) again. Edit the
field(s) and click on UPDATE .
• To delete an entry from the list, select it and click on DELETE .
• To discard changes, click on CANCEL .
14. You can tick the box SNMP Trap to send a trap to the device of your choice when the alert
definition is met. The following fields appear.
47
Hardening the Monitoring
Infrastructure
Field Description
SNMP Destination The IP address of the network management platform.
SNMP Community The community string that would act as a password to access the SNMP agent.
Raised alert SNMP A custom OID to be sent when the alert is raised. You can use and extend the default
OID OID 1.3.6.1.4.1.2440.1.6.1.2.0.1.
Released alert A custom OID to be sent when the alert is released. If this field is empty, no trap is
SNMP OID sent when the alert is released.
15. Click on OK to complete the operation. It is now listed in the page Alerts Definition and
marked as Released.
Using syslog-ng include files, it is even possible to activate syslog over TCP protocol to avoid
syslog message loss. For more details, refer to the appendix Configuring Non-Supported Options
in the Administrator Guide.
Syslog
The page Syslog lists the logs of all the services executed. You can filter the list using the menu
or the columns to display a specific operation on the local or a remote appliance.
Service Description
named The DNS log messages.
dns-firewall The log messages related to RPZ processing.
dhcpd The DHCP log messages.
ipmserver The internal transactional engine log messages.
messages All the system log messages.
auth The authentication log messages. By default, it logs failed authentications. To also
log successful authentications refer to the section Monitoring Successful Authentica-
tions.
ipmserver-rules The operations executed by rules.
gslb-check The Application log messages regarding initial health check failures and node status
changes.
5. You can tick the box Automatic refresh to automate the refresh of all the logs.
48
Hardening the Monitoring
Infrastructure
By default, the refresh is scheduled to be executed every 10 seconds. To change the refresh
frequency, refer to the section Editing Syslog Refresh Frequency.
6. You can look for specific logs by filtering the following columns:
a. From the column Time, you can sort and filter the logs based on the date and time of
the service execution. Note that you can edit the time and date format from the top bar
menu My Account > My Settings.
b. From the column Log, you can filter the logs based on the details of the operation per-
formed.
Note that monitoring successful authentication events can drastically increase the number of
logs.
49
Hardening the Monitoring
Infrastructure
You can redirect the logs of a particular service and severity level. The available severity levels
are listed below.
Note that selecting a log level automatically includes the logs with a higher severity, the ones
with a smaller code number. Therefore, if you select Warning (4) logs, you also redirect the Error
(3), Critical (2), Alert (1) and Emergency (0) logs.
50
Hardening the Monitoring
Infrastructure
5. In the drop-down list Level, select the severity level of your choice. Note that any severity
other than Emergency (0) also redirects higher severity levels, the ones with a lower code.
For more details, refer to the table Syslog severity levels.
6. In the field Target server, specify the IP address and port number of the Syslog server re-
ceiving the logs following the format <ip-address>:<port-number>.
7. Click on OK to complete the operation. The report opens and closes. The page displays the
list of logs redirections.
Tracking Sessions
The page Session tracking allows you to display the list of the users who recently connected or
are currently connected to SOLIDserver. The user connection is checked every 300 seconds.
You can also track previous sessions on the page Session history.
Tracking Users
The page User tracking allows each user to monitor their events, all the operations they carried
out. Note that:
• The different columns and filters on the page allow to track operations and who performed
them.
• You can display user operations on the page Syslog via a dedicated registry database entry,
as detailed in the section Sending a Copy of User Operations to Syslog.
51
Hardening the Monitoring
Infrastructure
52
Hardening the Monitoring
Infrastructure
e. In the column Log, use the filter ipmserver: . The user operations are listed as follows:
<hostname> <process_name>[<process_id>]: ipmserver: <service_name> <user_name>
<service_parameters>
53
Chapter 5. Hardening the DNS
Management
If you manage DNS servers, no matter the vendor, we recommend securing your DNS infrastruc-
ture. To can add and configure servers, refer to the chapters Managing DNS Servers and Con-
figuring DNS Servers in the Administrator Guide.
Depending on your infrastructure, some or all of the following best practices allow to harden your
DNS management:
• Separate authoritative and recursive resolution. For more details, refer to the section Configuring
Recursive and Authoritative Resolution.
• Add a secure smart architecture to manage your servers, a Stealth smart architecture for in-
stance. For more details, refer to the section Configuring a Smart Architecture.
• Secure BIND servers via Hybrid DNS, once prepared your server engine can switch to NSD
or Unbound and reduce corruption risks. For more details, refer to the section Configuring
Hybrid DNS.
• Configure DNSSEC protection, to ensure your DNS hierarchy is legitimate. For more details,
refer to the section Configuring DNSSEC.
• Configure TSIG protection, to authenticate DNS data exchanges. For more details, refer to the
section Configuring TSIG Keys.
• Restrict access to recursive servers via DNS ACLs. For more details, refer to the section
Configuring DNS ACLs.
• Limit the number of responses of a server through rate limits. For more details, refer to the
section Configuring Rate Limits.
• Implement Anycast forwarding. For more details, refer to the section Configuring Anycast DNS.
• Configure DNS Guardian, if your license allows it, to set advanced protection on your system.
For more details, refer to the section Configuring DNS Guardian.
• Dedicate a full appliance to DNS, i.e. it should only run the DNS service. Any other service
running alongside, other than NTP and SNMP, invites hacking attempts and decreases per-
formances. For more details, refer to the chapter Securing Services.
• Restrict public connection(s) to the interfaces through which the appliance is updated and an-
swers DNS queries. Open ports and/or additional attached network cables invites hacking at-
tempts. For more details, refer to the chapter Securing the Firewall.
1
BIND version 10 explicitly conforms to this guideline by separating recursive and authoritative name servers.
54
Hardening the DNS Management
If you only need an authoritative resolution, the best practices recommend having 2 servers,
a master and a slave, located in two different data centers to ensure availability. For instance,
you could have two authoritative servers located in the data centers A and B that you manage
2
via one smart architecture from a SOLIDserver appliance located in the data center A .
If you need authoritative and recursive resolution, the best practices also recommend man-
aging servers located in different data centers to ensure availability. For instance, you can have
an authoritative server and a recursive server located in the data center A and the same config-
uration in the data center B. Both configurations can be managed via smart architectures from
2
one SOLIDserver appliance located in the data center A , one smart architectures would managing
the two authoritative servers and another one the two recursive servers.
Note that you should configure the authoritative name servers to accept DNS database updates
only from other authoritative name servers or management appliances. For more details, refer
to the section Configuring DNS ACLs.
Once you set the resolution that suit your needs on your server(s), refer to the section Configuring
a Smart Architecture.
2
Note that you can also have a backup SOLIDserver appliance located elsewhere, for instance in the data center B. For more details,
refer to the section Setting High Availability.
55
Hardening the DNS Management
If your organization needs to deploy DNS servers on the Internet, we recommend using at least
3 name servers managed via a Stealth smart architecture:
• A true Master server hidden from the world,
• One or several visible slave server(s) used as decoy,
• Slave server(s) that do not transfer or accept transfers from the hidden Master server.
The Master server can be offline for maintenance without causing any interruption to DNS service
within the expiration duration (30 days) set for the validity of its zone data.
56
Hardening the DNS Management
DNS Hidden
Master
57
Hardening the DNS Management
e. You can tick the box Force Hybrid DNS compatibility if you intend to manage BIND
servers that you might switch to Hybrid in the future. For more details, refer to the section
Configuring Hybrid DNS.
9. Click on NEXT . The last page opens.
10. Tick the box Use DNS as DNSSEC resolver if you want to activate DNSSEC validation on
all the servers the smart architecture manages. For more details, refer to the chapter Config-
uring DNSSEC.
11. Tick the box Isolated if you want to isolate the server within SOLIDserver. This prevents the
server, and its content, from executing any configured replication rule or advanced property.
The server still receives data if your network configuration allows it.
This option is mainly useful during migrations. When the server configuration is ready and
you untick the box, you must manually execute the rules and/or advanced properties, at all
relevant levels of the module hierarchy, via the menu Tools > Initialize rules.
12. In the field Description, you can specify a description, it is displayed in the dedicated column
of the page All servers.
13. In the drop-down list Advanced properties, Default is selected, so only the fields/options
included in the wizard default display are visible.
You can display All available fields, but you may not be able configure them. For more details,
refer to the DNS section of the chapter Managing Advanced Properties in the Administrator
Guide.
14. Click on OK to complete the operation. The report opens and closes. The smart architecture
is listed as a DNS server and marked Smart (master/slave) in the column Type. To display
or hide the physical servers managed through the smart architecture click on on the right-
end side of the menu.
During the first addition of a DNS smart architecture, the option allow-transfer is by
default configured with the ACL admin. Within SOLIDserver admin corresponds to any,
so you might want to change the ACL and restrict the option use as it is inherited by the
server zones. For more details, refer to the section Configuring DNS ACLs.
When managing only EfficientIP servers via a smart architecture, you can use the DNS Hybrid
feature to switch, in seconds, between two DNS engines:
• If the smart architecture recursion is set to yes, a Hybrid compliant server can switch to
BIND/Unbound.
• If the smart architecture recursion is set to no, a Hybrid compliant server can switch to
BIND/NSD.
For more details regarding the limitation and configuration of DNS Hybrid, refer to the chapter
Hybrid DNS Service in the Administrator Guide.
Before using Hybrid DNS, you must generate the hybrid compatibility report to ensure that the
configuration of your DNS server and the elements it contains are compatible.
58
Hardening the DNS Management
3. In the menu, select Report > Hybrid DNS Engine incompatibilities. The wizard Hybrid
incompatibilities report opens.
4. In the list Report format, select HTML or PDF.
5. Click on NEXT . The last page of the report opens.
6. In the drop-down list Action, select Generate new data, Schedule the report or a former report,
they are listed using their date and time. By default, Generate new data is selected.
a. If you leave Generate new data selected, a report of all to the incompatibilities with Hybrid
is immediately generated.
b. If you select Schedule the report, you can configure the frequency at which all the reports
are generated.
Once you generated the report, you must review and correct all the parameters it contains that
are not compatible with Hybrid until your smart architecture is marked compatible. You can gen-
erate as many reports as you need.
59
Hardening the DNS Management
Once the physical server is Hybrid compliant, on the page All servers, the column Hybrid DNS
compatibility is marked Yes and, in the smart architecture editing wizard, the field Compatible
with a Hybrid DNS Engine is also marked Yes.
Once your server is compatible with Hybrid, you can switch it. If you manage it from a smart ar-
chitecture, that architecture can contain one or several BIND servers that you can all switch.
Keep in mind that, if you only switch one server, the other servers share the same limitations that
the Hybrid servers.
Configuring DNSSEC
Domain Name System Security Extensions (DNSSEC) is used to strengthen DNS protocol security.
It controls the integrity of all DNS answers and ensures that client queries are answered by the
proper zone.
By providing origin authentication, it protects the DNS information exchanged between name
servers configured with DNSSEC. Within SOLIDserver, it can only be configured on EfficientIP
servers and smart architectures managed via SSL, you cannot configure it on other DNS vendors.
You can configure DNSSEC on authoritative and recursive servers. In this section, we focus on
recursive servers, for more details refer to the chapter DNSSEC in the Administrator Guide.
60
Hardening the DNS Management
• You can set Efficient DNS servers and smart architectures as DNSSEC resolvers and
associate them with a trust anchor.
The information is encrypted via a technique called HMAC (Keyed-Hashing for Message Authen-
tication, see RFC 2104) which employs a shared secret and a one-way cryptographic hash
function to sign data. This shared secret is used a password known only to the two parties involved
in the exchange.
From the properties page of EfficientIP, EfficientIP Package and Generic servers as well as smart
architectures you can add, edit and delete TSIG keys. Once a key is added, you can use it:
• To secure the server with a unique TSIG key. A key can be used in any of the server statements
or in the statements of its views and zones.
At zone level you can set up dynamic update if you use the TSIG key specified on the server
in the statement allow-update.
• In your ACLs at server, view and/or zone level. For more details, refer to the chapter Configuring
DNS ACLs.
• When adding and editing slave zones, RPZ or not, and stub zones. For more details, refer to
the chapter DNS Firewall (RPZ) in the Administrator Guide.
• To set up dynamic update for your master zones. For more details, refer to the chapter Imple-
menting Dynamic Update in the Administrator Guide.
Note that TSIG keys are not supported by Microsoft servers. However, you can configure their
zones for dynamic update via GSS-TSIG keys.
For more details on TSIG keys, refer to the section Configuring DNS Keys in the Administrator
Guide.
61
Hardening the DNS Management
You can use TSIG keys to secure all the data exchanges between a DNS server and a SOLID-
server appliance. You can secure EfficientIP, EfficientIP Package and Generic servers. TSIG
keys are not supported by Microsoft servers.
By default, EfficientIP physical servers managed via a smart architecture provide TSIG keys on
the properties page. You can use either key to secure the server. Note that:
• The TSIG key used to secure the server must also be used in the statements allow-transfer
and allow-update. Setting these statements at server level allows for the server views and
zones to inherit the configuration.
By default, the statement allow-transfer is configured with the ACL any, and the statement allow-
update is configured with the ACL admin.
To include the relevant TSIG key in both statements you can include the key to the ACL admin.
In this case, you must edit the statement allow-transfer to replace the ACL any with the ACL
admin. The statement allow-update is automatically updated.
To avoid using ACLs, you can edit the statement allow-transfer to grant access to the TSIG
key instead of the ACL any. You also need to add it to the statement allow-update.
For more details, refer to the section Limiting Zone Transfers at Server Level in the Adminis-
trator Guide.
• The TSIG key selected at server level can be used at zone level to set up dynamic update, if
you use the TSIG key in the statement allow-update.
If you manage your physical servers from a smart architecture, the TSIG keys of the smart archi-
tecture are pushed to the properties of each of the physical servers it manages. So keep in mind
that a TSIG key must be unique to each server, you cannot use the same for several servers.
62
Hardening the DNS Management
5. In the drop-down list TSIG key name, select the key of your choice.
6. Click on OK to complete the operation. The report opens and closes.
• You can add an ACL restricting access to the clients network(s) allowed to query the DNS.
• You can edit the ACL admin, which allows any connection by default, to restrict access to the
management appliance(s) IP address(es) only.
• You can add an ACL restricting access to the DNS servers IP addresses or network, for Master-
Slave synchronization.
You can then use these ACLs to configure the access controls on your EfficientIP smart architec-
tures and servers. Note that, by default:
• When you add a smart architecture, it uses the ACL any for the access control allow-query
and allow-query-cache and propagates it to the servers/zones it manages. This also applies
when you add an EfficientIP server not managed by a smart architecture, even though the ACL
is not displayed in the related properties page panel.
We recommend that you use ACLs to restrict access to the management appliance(s), other
DNS servers and clients.
• When you add a smart architecture, it uses the ACL any for the access control allow-transfer
and propagates it to the servers/zones it manages.This also applies when you add an EfficientIP
server not managed by a smart architecture, even though the ACL is not displayed in the related
properties page panel.
We recommend that you use ACLs to restrict access to the management appliance(s) IP ad-
dress(es) and other DNS servers
• When you add a zone to an EfficientIP server, either directly or via a smart architecture, it uses
the ACL any for the access control allow-update.
The same way, we recommend that you use ACLs to restrict access to the management appli-
ance(s) IP address(es), other DNS servers
Keep in mind that any configuration set at view or zone level overrides the server level configur-
ation.
63
Hardening the DNS Management
For more details regarding how to use ACLs to secure your DNS infrastructure, refer to the section
Managing DNS Security in the Administrator Guide.
Finally, note that you can add en extra layer of security by configuring DNS TSIG keys on your
servers and add them to your ACLs. For more details, refer to the section Configuring TSIG Keys.
Once a restriction or permission is configured as needed, click on ADD . The entry is moved
to the list ACL values. All denied entries are preceded by an exclamation mark (!). Keep in
mind that the entries order matters, each restriction or permission listed is reviewed following
the order you set. To order the entries, select them one by one and click on the arrows to
move them up or down .
• To update an entry in the list, select it. It is displayed in the field(s) again. Edit the field(s)
and click on UPDATE .
• To delete an entry from the list, select it and click on DELETE .
• To discard changes, click on CANCEL .
7. Click on OK to complete the operation. The report opens and closes. Your ACL is listed in
the panel ACL.
Once created, an ACL includes permissions and restrictions that you allow or deny access
to depending on the configuration you set:
64
Hardening the DNS Management
• If you allow access to the ACL, every permission it contains are granted access to,
every restriction it contains are denied access to.
• If you deny access to the ACL, the contrary is set: every permission it contains are
denied access to, every restriction it contains are granted access to.
65
Hardening the DNS Management
Many DNS engines support RRL and allow a name server to remember how many times it has
sent the same response to the same querier. You can set a rate threshold, once exceeded the
name server waits for a time before sending a response; in the meantime it honors other queries
from other computers. As a result, the name server will never send responses to a querier any
faster than specified by the threshold. The RRLcompliant name server becomes immune to many
types of DDoS attack.
You can configure RRL on EfficientIP DNS servers, EfficientIP DNS Package servers, smart ar-
chitectures or Guardian servers configured with the parameter recursive set to 2.
If you set it on a smart architecture that manages different types of servers, it only applies to the
relevant servers. The settings are ignored by all the servers that do not support it. Note that you
can even configure it on a BIND/NSD Hybrid servers; however, the option Log only disables RRL
on NSD servers.
For more details on RRL, refer to the section Limiting the Number of Responses of a Server in
the Administrator Guide.
66
Hardening the DNS Management
When relying on an anycast architecture, DNS clients always query the same IP address(es) but
their packets are routed to the nearest anycast DNS server according to the network topology.
If the closest DNS server is down, the related route is withdrawn and the packets are transparently
re-routed by the network to the nearest available DNS server in the topology.
For more details on how to setup and use OSPF, IS-IS and BGP routing, refer to the section
Setting up Anycast DNS in the Administrator Guide.
Guardian offers adaptive security to DNS cache and recursive services by detecting threats and
activating adapted counter measures to ensure DNS services continuity and attack mitigation.
For more details, refer to the part Guardian in the Administrator Guide.
67
Appendix A. Hardening Checklist
To keep track of SOLIDserver hardening process, you can print and fill in the check list below:
68
Appendix B. Matrices of Network Flows
This appendix maps out the networks flows that you must open to manage your SOLIDserver
appliance or remotely manage servers. They are detailed in tables divided as follows:
• SOLIDserver network flows.
• IPAM network flows.
• DHCP network flows.
• DNS network flows.
• NetChange network flows.
• Identity Manager network flows.
• Remote Management network flows.
Each flow detail includes its Source IP, Port, Destination IP, Port, Protocol, Service used and
Notes, when relevant. The Source IP and Destination IP may contain the following:
69
Matrices of Network Flows
SOLIDserver
Basic Configuration
Source IP Port Destination IP Port Protocol Service Notes
administrator any SOLIDserver 80 TCP HTTP Graphic User Interface (GUI)
administrator any SOLIDserver 443 TCP HTTPS Graphic User Interface (GUI)
administrator any SOLIDserver 22 TCP SSH Command Line Interface (CLI)
SOLIDserver any DNS server 53 UDP DNS DNS resolution, DDNS update
SOLIDserver any DNS server 53 TCP DNS DNS resolution, DNS zone transfer
SOLIDserver any NTP server 123 UDP NTP Time synchronization
SOLIDserver any FTP server 21 TCP FTP Remote archive on an FTP or SFTP
SOLIDserver any SFTP server 22 TCP SFTP server
External Authentication
Source IP Port Destination IP Port Protocol Service Notes
SOLIDserver any LDAP/AD 389 TCP LDAP LDAP or AD authentication
SOLIDserver any LDAPS/AD 636 TCP LDAPS LDAPS or AD authentication
SOLIDserver any RADIUS 1812 UDP RADIUS RADIUS authentication
iDRAC
Source IP Port Destination IP Port Protocol Service Notes
administrator any iDRAC 22 TCP SSH iDRAC SSH
administrator any iDRAC 80 TCP HTTP iDRAC GUI
administrator any iDRAC 443 TCP HTTPS iDRAC GUI
administrator any iDRAC 5900 TCP VNC Virtual Console
70
Matrices of Network Flows
IPAM
Cisco DNA
Source IP Port Destination IP Port Protocol Service Notes
Required to configure DNA synchroniza-
DNA center any SOLIDserver 443 TCP HTTPS
tion
SPX
RIPE
APNIC
71
Matrices of Network Flows
DHCP
EfficientIP DHCP Servers
Source IP Port Destination IP Port Protocol Service Notes
SOLIDserver Required to manage an EfficientIP DH-
any DHCP server 443 TCP HTTPS
Management CP server on a SOLIDserver appliance
Failover channel port on the backup
DHCP master any DHCP backup 647 TCP Failover
server
Failover channel port on the master
DHCP backup any DHCP master 847 TCP Failover
server
DHCP client 68 DHCP server 67 UDP DHCP Required by the service DHCP
DHCP server 67 DHCP client 68 UDP DHCP Required by the service DHCP
DHCP client 546 DHCP server 547 UDP DHCP Required by the service DHCPv6
DHCP server 547 DHCP client 546 UDP DHCP Required by the service DHCPv6
Broadcast ad- Required by the DHCP protocol on the
DHCP client 68 67 UDP DHCP
dress local segment
DHCP server - any - ICMP ICMP Only if the option ping-check is enabled
Linux Packages
Prerequisite before configuring a Linux Package: configuring DHCP network flows as detailed
in the section EfficientIP DHCP Servers.
DHCP Statistics
Source IP Port Destination IP Port Protocol Service Notes
SOLIDserver SNMP v1, v2c and v3 to retrieve the
any DHCP server 161 UDP SNMP
Management server statistics
72
Matrices of Network Flows
DNS
EfficientIP DNS Servers
Source IP Port Destination IP Port Protocol Service Notes
SOLIDserver Required to manage an EfficientIP DNS
any DNS server 443 TCP HTTPS
Management server on a SOLIDserver appliance
SOLIDserver DNS resolution, DDNS update, DNS
any DNS server 53 UDP/TCP DNS
Management zone transfer
DNS resolution, DDNS update, DNS
DNS server any DNS server 53 UDP/TCP DNS
zone transfer
DNS client any DNS server 53 UDP/TCP DNS DNS resolution
10000
SOLIDserver a
DNS server - 2053 UDP DNS DNS notify (optional)
Management
65535
a
The port 2053 allows you to speed up zone transfers between SOLIDserver Management and its managed DNS servers.
Keep in mind that not all DNS engines support this functionality, for instance Microsoft DNS engines do not support it.
73
Matrices of Network Flows
Linux Packages
Prerequisite before configuring a Linux Package: configuring the DNS network flows as detailed
in the section EfficientIP DNS Servers.
DNS Statistics
Source IP Port Destination IP Port Protocol Service Notes
SNMP v1,v2c or v3 to retrieve the stat-
SOLIDserver
any DNS server 161 UDP SNMP istics of DNS servers on SOLIDserver
Management
appliances or Linux Packages
GSS-TSIG
Source IP Port Destination IP Port Protocol Service Notes
SOLIDserver Kerberos serv-
any 88 Protocol Kerberos Kerberos authentication
Management ers
Guardian
Cache Sharing via Unicast
74
Matrices of Network Flows
DoT
DoH
75
Matrices of Network Flows
NetChange
Source IP Port Destination IP Port Protocol Service Notes
Network
NetChange any 161 UDP SNMP SNMP v1, v2c, v3
device
NetChange any DNS server 53 UDP DNS DNS resolution
Network
NetChange any 22 TCP SSH
device
Save the configuration
Network
NetChange any 23 TCP SNMP
device
76
Matrices of Network Flows
Identity Manager
Source IP Port Destination IP Port Protocol Service Notes
Windows AD
any SOLIDserver 5986 TCP WEF Required to retrieve sessions.
Controller
77
Matrices of Network Flows
Remote Management
High Availability
Source IP Port Destination IP Port Protocol Service Notes
SOLIDserver SOLIDserver
any 443 TCP HTTPS
Hot Standby Master
Health check
SOLIDserver SOLIDserver
any 443 TCP HTTPS
Master Hot Standby
SOLIDserver SOLIDserver
any 5432 TCP PostgreSQL
Hot Standby Master
Replication
SOLIDserver SOLIDserver
any 5432 TCP PostgreSQL
Master Hot Standby
78