Apollo Data Collection
Technical Overview
The Apollo Data Collection solution provides a secure mechanism to transfer query output files from the practice location (or data centre) to a customer’s endpoint server.
Files are transmitted over SFTP (SSH File Transfer Protocol) which provides encryption whilst the file is in transmission. In addition to transport encryption, the payload itself is also
encrypted using a project unique 1024-bit RSA public/private key pair.
Prerequisites
Before beginning the installation, ensure you have a server or virtual machine with the following requirements:
Server operating system such as Windows Server 2003 or later (32 and 64-bit is supported).
.NET version 4.0 (full release). The installer will check that this is present. At least 1 GB RAM
Multi-core processors will aid in decryption performance but not mandatory. Inbound access granted from practice IP addresses on TCP port 22. Outbound http access (TCP port 80) to an external public URL/IP address:
apollo-medical.ws (this hostname resolves to 82.113.164.33 at time of writing).
Unique 1024-bit Private Key file (for example TEST002.Prv). Please contact Apollo for this file.
The setup files required for this installation can be found here: http://www.apollo-medical.com/downloads/ApolloDataCollection/
SFTP file server software. There are free solutions available such as ‘freeFTPd’ or paid such as ‘BitVise’ (BitVise is easier to install and configure). See section entitled ‘Installation - SFTP File Server (*Optional)’ if using the free version.
A user with write access should be set up on the above SFTP server with the following details:
User: ApolloDataCollection
Installation - Decryption Service Component
1. Download and run the installer package:‘ApolloDataCollectionCustomerPackage(Server).exe’
2. There are no values to set. Upon completion click to ‘Launch the program’ which will open the service configuration file.
3. The following settings/values are available in the service configuration file: ‘ApolloDataCollection.DecryptionService.exe.config’.
Required:
o incoming-path – Location of incoming encrypted files (the SFTP file server incoming/root folder). The default is:
C:\ApolloDataCollection\DecryptionService\INCOMING
o output-path – Location to place decrypted output files (the location your data-loader is expecting to load files from). The default is:
C:\ApolloDataCollection\DecryptionService\OUT
o private-key-file – The full path location of the project specific PRV key file. The service will not start without this component.
Optional:
o sleep-time – Amount of time the service waits between checking of the above incoming folder. The default is 2 minutes in milliseconds:
12000
o a2-relay-log-enabled – Specifies whether to respond a file receipt to the Apollo’s A2 Relay Log (requires outbound http (port 80) access to a public IP address
(‘www.apollo-medical.ws’). The default value is: yes
Installation - SFTP File Server (*Optional)
This part is only required if your organisation does not already have their own SFTP file server software. If this software is available then install with the incoming directory set to the one specified in the Decryption Service component (step 3) and go straight to creating the user account ‘ApolloDataCollection’ as detailed in the prerequisites.
Please note: The use of the ‘freeFTPd’ software is not officially supported by Apollo – this software is provided by a third party therefore the steps below are subject to change and are given as a guide only.
1. Download and run the installer: ‘freeFTPd.exe’
3. When asked to create private keys click YES.
4. When asked to run the software as a system service click YES.
6. Stop the ‘freeFTPdService’ from the Microsoft Management Console (‘services.msc’).
8. Click the ‘Users’ tree item and add a new user called ‘ApolloDataCollection’ using the password supplied by Apollo. Select ‘Password stored as SHA1 hash’ and uncheck ‘FTP server’.option. Ensure the ‘Home directory’ matches the directory set in the Decryption Service component (step 3).
9. Finally click ‘Apply’ and then again ‘Apply & Save’.
10. If there is an error writing to the configuration file then adjust the file permissions for the file below to allow WRITE.
C:\Program Files (x86)\freeFTPd\freeFTPdservice.cfg
12. Finally start the ‘freeFTPdService’ from the Microsoft Management Console (‘services.msc’).
Support Section – Reading Log Entries
The Decryption Service logs as default to the local Event Log and to a text file.
ApolloDataCollection.DecryptionService log file location:
C:\ApolloDataCollection\DecryptionService\ApolloDataCollection.DecryptionService.log Log file example:
DateTime: 07/01/2016 09:15:48 SEVERITY: Information SOURCE: ApolloDataCollection.DecryptionService MESSAGE:
Apollo Decryption Service Started! <---> DateTime: 07/01/2016 09:15:48 SEVERITY: Information SOURCE: ApolloDataCollection.DecryptionService MESSAGE:
Reading configuration values... <--->
ApolloDataCollection.DecryptionService log entries as viewed in Event Viewer (under the ID ‘DecryptionService.ApolloDataCollection’):