Word | Definition |
---|---|
IMPEX | The family name of USB Protect, ICC, Repo and DataLock |
ICC | The server which control the Stations |
USB Protect | The kiosk computer used to scan mass storage devices |
Repo | The server that has the updates and definitions |
DataLock | Server used for network flows that will scan files before transferring them onwards |
Network flows | This is the description of data being scanned and transferred through the Data Lock to a remote destination. A Data Lock can have multiple remote destinations configured |
Operators | The users who will use the administrative interface on the ICC server |
This document explains the preparations that are needed before the installation and configuration of an IMPEX system can be done. These steps and the information collected should be documented and kept ready at the time of the installation to ensure proper configuration.
USB Protect needs the following documented:
USB Protect needs the following configuration prepared:
DataLock need the following configuration prepared:
USB Protect needs port TCP/443 to be open outwards to be able to communicate with the ICC server and Repo server. USB Protect will synchronize time and obtain software updates over this port. It also uses this connection to upload scanning reports and system logs. All traffic between the Station USB to the ICC server is encrypted with TLS. If USB Protect cannot validate the server certificate, this is likely with a self signed certificate or a certificate from an internal CA, the Trust On First Use(TOFU) method will be used. If USB Protect uses a proxy the proxy must allow connections from the USB Protect to the ICC and the Repo server.
The server can be a virtual appliance or a physical server. The server should have the following minimum specification:
The DataLock server needs the following information before installation can be completed:
If firewall openings are required the following should be allowed:
DataLock needs port TCP/443 to be open outwards to be able to communicate with the ICC server and Repo server. DataLock will synchronize time and obtain software updates over this port. It also uses this connection to upload scanning reports and system logs. All traffic between the DataLock to the ICC server is encrypted with TLS. If DataLock cannot validate the server certificate, this is likely with a self signed certificate or a certificate from an internal CA, the Trust On First Use(TOFU) method will be used. If the DataLock uses a proxy the proxy must allow connections from the Data Lock to the ICC and the Repo server.
The DataLock needs TCP/22 to be open for incoming and outgoing SFTP connections.
The server can be a virtual appliance or a physical server. It is also possible to have the Repo services installed in the ICC server. The server should have the following minimum specification:
The Repo server needs the following information before installation can be completed:
If firewall openings are required the following should be allowed:
The server can be a virtual appliance or a physical server. The server should have the following minimum specification:
The ICC server needs the following information before installation can be completed:
If firewall openings are required the following must be allowed:
If the Repo server, Data Lock or the ICC server is installed as a virtual server we recommend the options below. Other options might be possible but would require additional testing.
The impex solution is built to be in architecures based on IEC62443 and simular zone concept solution as well as other network designs. This is two example of how IMPEX can fit in a network. The ICC and the Repo can be on the same machine and does not need to be separated servers. The solution supports a proxy but a proxy is not required.
+-------------------+ +--------------+
| updates.sysctl.se | | Lets Encrypt |
+------^------------+ +-----^--------+
Internet | |
| +----------------+
| |
+------------------------------------------------------------+
| |
DMZ +---+-----+---+
| Firewall <------+
+-------------+ |
|
+-----+----+
+-------------> Proxy |
| | if used |
| +----------+
|
|
+----+--------------------+
| |
| ICC and optional Repo <------+
| | |
+-------^-----------------+ +----^----+
| | Proxy |
| | if used |
| +-+-------+
| |
+------------------------+---------------------+-------------+
| |
Peripheral Network | |
| |
+------+-------+ +-------+------+
| USB Protect | | USB Protect |
+--------------+ +--------------+
+-------------------+ +--------------+
| updates.sysctl.se | | Lets Encrypt |
+------^------------+ +-----^--------+
Internet | |
| +----------------+
| |
+------------------------------------------------------------+
| |
DMZ +---+-----+---+
| Firewall <------+
+-------------+ |
|
+-----+----+
+------------------> Proxy |
| | if used |
| +----------+
+----+-------------+
| |
| Repo, if used |
| |
+----+-------------+
|
+------------------------------------------------------------+
|
Internal network |
|
+----+--------------------+
| |
| ICC and optional Repo <------+
| | |
+-------^-----------------+ +----^----+
| | Proxy |
| | if used |
| +-+-------+
| |
+------------------------+---------------------+-------------+
| |
Peripheral Network | |
| |
+------+-------+ +-------+------+
| USB Protect | | USB Protect |
+--------------+ +--------------+
+-------------------+ +--------------+
| updates.sysctl.se | | Lets Encrypt |
+------^------------+ +-----^--------+
Internet | |
| +----------------+
| |
+---------------------------------------------------------------------+
| |
DMZ +---+-----+---+
| Firewall <------+
+-------------+ |
|
+-----+----+
+-------------> Proxy |
| | if used |
| +----------+
|
|
+----+--------------------+
| |
| ICC and optional Repo <------+
| | |
+-------^-----------------+ +----^----+
| | Proxy |
| | if used |
| +-+-------+
| |
+------------------------+---------------------+-----------------------+
| |
Office Network | |
| |
| |
+--------+ +----+-----+ +-----+----+ +--------+
| Sender |-------> DataLock | | DataLock <------| Sender |
+--------+ +----------+ +----------+ +--------+
| |
| |
+------------------------+---------------------+------------------------+
| |
Protected Network | |
+-----v----+ +----v-----+
| Receiver | | Receiver |
+----------+ +----------+
The Repo server requires internet connectivity to be able to access updates.sysctl.se for updates. All updates for Operating System, ICC-server, USB Protect, DataLock and AV-signatures are downloaded from updates.sysctl.se over a TLS-connection.
The ICC server supports the use of letsencrypt1 to get a trusted certificate. Letsencrypt is not required and certificates can be installed manually to the ICC and Repo. Using the letsencrypt feature ensures that certificates are updated automatically. This greatly reduces administrative overhead, but as with all public CA:s, the certificate will be published in the CT log.
The Repo server is the only device that requires internet connection and it is only used to a clearly defined destination.
The Repo server could be placed in a DMZ network segment. The Repo needs outbound connection to the internet and specifically updates.sysctl.se, this could be through a proxy.
The ICC server can as a suggestion be placed in an internal network and access to the ICC should be restricted by an external firewall. The ICC needs outbound connection to the Internet and specifically to Lets Encrypt when the module is used, this can be through a proxy.
The ICC server needs access to a time-server to get the correct time and a DNS server to resolv DNS names. If email notifications are enabled the ICC-server must have access to a mail relay.
The ICC server requires inbound connections from the IMPEX stations to be able to receive scanning reports. It should also allow inbound access from administrators and operators so that they can access the web interface.
It should also allow inbound access from administrators to the SSH console.
In the peripheral network or where the USB Protect are placed, the only network access needed is from the USB Protect is to the ICC server over TCP/443.
USB Protect are not listening on any port so it is not possible to connect to a station. It is possible to ping the devices, they allow ICMP echo and can send ICMP echo replies.
The protected network where the only way to transferer in files are through the Data Lock.
The firewalls should limit access to the Stations and the ICC server and only allow the defined ports and protocols that are needed by the service.
Source | Destination | Port | Protocol | Optional |
---|---|---|---|---|
Repo server | updates.sysctl.se | TCP/443 | SSL/TLS | No |
ICC server | Repo server | TCP/443 | SSL/TLS | No |
ICC server | acme-v02.api.letsencrypt.org | TCP/80 | HTTP or Acme protocol | Yes |
ICC server | acme-v02.api.letsencrypt.org | TCP/443 | SSL/TLS or Acme protocol | Yes |
ICC server | Mail relay | TCP/25 | STMP | Yes |
ICC server | DNS servers | TCP/53 | DNS | No |
ICC server | DNS servers | UDP/53 | DNS | No |
ICC server | NTP server | UDP/123 | NTP | No |
ICC server | Proxy server | TCP/XXX | HTTP/HTTPS/SOCKS | Yes |
Repo server | Proxy server | TCP/XXX | HTTP/HTTPS/SOCKS | Yes |
USB Protect | Repo server | TCP/443 | SSL/TLS | No |
USB Protect | Proxy server | TCP/XXX | HTTP/HTTPS/SOCKS | Yes |
USB Protect | ICC server | TCP/443 | SSL/TLS | No |
DataLock | Repo server | TCP/443 | SSL/TLS | No |
DataLock | Proxy server | TCP/XXX | HTTP/HTTPS/SOCKS | Yes |
DataLock | ICC server | TCP/443 | SSL/TLS | No |
DataLock | Receiver server | TCP/22 | SFTP | No |
Sender server | DataLock | TCP/22 | SFTP | No |
Remote Access | ICC server | TCP/22 | SSH | Yes |
Operators | ICC server | TCP/443 | SSL/TLS | Yes |
.letsencrypt.org | ICC server | TCP/80 | SSL/TLS or Acme protocol | Yes |
.letsencrypt.org | ICC server | TCP/443 | SSL/TLS or Acme protocol | Yes |
Source | Destination | Port | Protocol | Optional |
---|---|---|---|---|
ICC server | updates.sysctl.se | TCP/443 | SSL/TLS | No |
ICC server | acme-v02.api.letsencrypt.org | TCP/80 | HTTP or Acme protocol | Yes |
ICC server | acme-v02.api.letsencrypt.org | TCP/443 | SSL/TLS or Acme protocol | Yes |
ICC server | Mail relay | TCP/25 | STMP | Yes |
ICC server | DNS servers | TCP/53 | DNS | No |
ICC server | DNS servers | UDP/53 | DNS | No |
ICC server | NTP server | UDP/123 | NTP | No |
ICC server | Proxy server | TCP/XXX | HTTP/HTTPS/SOCKS | Yes |
USB Protect | Proxy server | TCP/XXX | HTTP/HTTPS/SOCKS | Yes |
USB Protect | ICC server | TCP/443 | SSL/TLS | No |
DataLock | Proxy server | TCP/XXX | HTTP/HTTPS/SOCKS | Yes |
DataLock | ICC server | TCP/443 | SSL/TLS | No |
DataLock | Receiver server | TCP/22 | SFTP | No |
Remote Access | ICC server | TCP/22 | SSH | Yes |
Operators | ICC server | TCP/443 | SSL/TLS | Yes |
.letsencrypt.org | ICC server | TCP/80 | SSL/TLS or Acme protocol | Yes |
.letsencrypt.org | ICC server | TCP/443 | SSL/TLS or Acme protocol | Yes |
The ICC server, Repo server, DataLock and USB Protectcan use a proxy but it is optional and if no proxy should be used is it still possible to use the services.
The ICC server, Repo server, DataLock and the USB Protect have support for the most common proxies and the proxy should be configured to limit the server to only access the required domains.
If there are any transparent proxies who try to inspect the traffic, the connection will fail due to strong encryption and certificate validation enforcements. It is recommended to use syslog to get audit logs from the systems.
The information below should be filled in before the installation date.
Signature:
Name:
Sysctl would like to have email and optional mobile numbers to contact persons.
Email address to receivers of new release information emails:
Email and number to system owner:
The ICC and Repo server could be either on the same machine or on separate servers.
Physical machine exist
Physical machine exist
https://letsencrypt.org/ ↩