...
Atheos Server must be updated to version xx.yy.zz
Update Create the new configuration file
Update the configuration of the component ??????????????????????
...
/etc/amadis/atheosgw++.conf
Keep the previous configuration file
These packages must be installed libboost-program-options1.65.1 and libboost-filesystem1.65.1
Atheos Server must be updated to version xx.yy.zz
This is pretty straight forward. It should be handled the same way as the previous updates. The changes introduced to support version 3 of the Gateway are listed in the Atheos Server release notes.
Update the configuration file
The default configuration distributed with the Gateway version 3 contains many comments. This section contains general information that describes the overall configuration file. The sample configuration file is given at the end of this section.
NOTE: The content of the configuration is case-sensitive.
Currently, the sections defined in the configuration are:
LogFile
MessagesRepositories
Connectivity
ServerSSLCertificate
ServerSSLPrivateKey
Performance
PoiConfigurations
Nexo
Security Provider sections
OpenSSL
HSM
LogFile
The log file was defined in previous versions using only the parameter LogFile. It is now a section which contains the following parameters:
...
Parameters
...
Previous parameters
...
URI
...
LogFile
Command line parameters
This version supports the following command line parameters:
Parameters | Description |
---|---|
-c arg or --config arg | Configuration file. By default, /etc/amadis/atheosgw++.conf is used. |
-d | Adds to the log some debug information |
Update the configuration file
The default configuration distributed with the Gateway version 3 contains many comments. This section contains general information that describes the overall configuration file. The sample configuration file is given at the end of this section.
NOTE: The content of the configuration is case-sensitive.
Currently, the sections defined in the configuration are:
LogFile
MessagesRepositories
Connectivity
ServerSSLCertificate
ServerSSLPrivateKey
Performance
PoiConfigurations
Nexo
Security Provider sections
OpenSSL
HSM
LogFile
The log file was defined in previous versions using only the parameter LogFile. It is now a section which contains the following parameters:
Parameters | Previous parameters |
---|---|
URI | LogFile |
DirectoriesPermissions | n/a |
FilePermissions | n/a |
...
This section relates to the directory structure used to store the POI configurations. The parameter are:
Parameters | Previous Parametersparameters |
---|---|
BaseDirectory | POIDataRoot |
DirectoriesPermissions | n/a |
...
If the BaseDirectory does not exists, it will be created and will have its permissions assigned to the value of the parameter DirectoriesPermissions. For example, 0755. The leading zero is required.
Parameters that are no longer in the configuration file
These parameters must be moved into the specific configuration files
MOVED
ASFileUploadSignatureKey
NexoMessagesUploadURL
GatewayId
DELETED
DebugDumpMessages
Code Block |
---|
###############################################################################
#
# Atheos Gateway V3 Configuration File
#
# Copyright ©2005-2021 - 9164-4187 QUEBEC INC (“AMADIS”), All Rights Reserved
#
###############################################################################
#
[LogFile]
# Log file location. A fully qualified file name must be supplied.
URI = file:///var/log/amadis/atheosgw.log
# Directories permissions
DirectoriesPermissions = 0770
# File permissions
FilePermissions = 0640
[MessagesRepositories]
# Base directory where the messages received and sent to the POI are saved.
# Previously FileRepositoryBaseDir
BaseDirectory=/home/amadis/files
# Directories permissions for the message repositories
DirectoriesPermissions = 0770
# File permissions for the message repositories
FilePermissions = 0640
[Connectivity]
# Server incoming connection port. Previously ServerPort
ListeningPort = 55554
# Address on which the server will bind (listen) to.
BindingAddress = 0.0.0.0
# Server certificate used
[ServerSSLCertificate]
CryptographicProvider = OpenSSL
Type = X509Certificate
Format = PEM
URI = file://server.crt
# Private key for the server certificate. Password protected keys are not
# supported yet.
[ServerSSLPrivateKey]
CryptographicProvider = OpenSSL
Type = PrivateKey
Format = PEM
URI=file://server.unprotected.key
#[ServerSSLPrivateKey]
#CryptographicProvider = hsm1
#Type = PrivateKey
#URI = pkcs11:model=SoftHSM%20v2;manufacturer=SoftHSM%20project;serial=abe6ed66024f38b2;token=claude;id=%40%00;object=serverkey;type=private;pin-value=4321
[hsm1]
# Engine type (internal or HSM)
Type = PKCS11HSM
# Engine ID
ID=pkcs11
# Engine library path
SOPath=/usr/lib/x86_64-linux-gnu/engines-1.1/libpkcs11.so
# Engine module path as required by the engine shared object library.
ModulePath=/usr/lib/softhsm/libsofthsm2.so
# Engine PIN
PIN=4321
[OpenSSL]
Type = OpenSSL
Version = 1.0.0
[Performance]
# Maximum number of concurrent connections the server will handle before
# queuing the other ones.
MaximumConnections = 10
# Pending connections queue length. If MaximumConnections is reached, up to
# PendingConnectionQueueLength connections will be queued before rejecting
# them.
PendingConnectionQueueLength = 200
# Maximium wait time while listening for a new connection in microseconds.
ListeningMaximumWaitTime = 100000
# Time in seconds the server will wait before terminating
# active connections.
ShutdownDelay = 60
# Timeout in seconds of a connection with a POI.
SSLTimeout = 60
# Maximum wait time when waiting for an event on a socket.
SocketSelectMaximumWaitTime = 100000
# Nexo message initial input buffer size in bytes. This value shall not be
# lower than 2000 bytes.
NexoMessageInitialBufferSize = 48000
# Nexo Builder Buffer size in bytes. NexoBuilderErrorMessagesBufferSize bytes
# are reverved as the error message buffer.
NexoBuilderBufferSize = 48000
# How much space to reserve in the Nexo Builder Buffer for error messages.
# It must be lower than 3072.
NexoBuilderErrorMessagesBufferSize = 1024
[Nexo]
# Nexo protocol version included in the Nexo messages
ProtocolVersion = 6.0
# Terminal Manager Id included in the Nexo messages
TerminalManagerId=ATHEOS-TMS01
[PoiConfigurations]
# Base directory root where the configuration files and
# the management plans for the POIs are located.
BaseDirectory = /home/amadis/poi
# Directories permissions for the POI configuration repositories
DirectoriesPermissions = 0770
# User under which the AtheosGW will be running. Should not be root.
User=amadis
# Group under which the AtheosGW will be running. Should not be root.
Group=amadis |
old file
...
Nexo
This section contains parameters that will be embedded into the configuration sent to the POI’s.
Parameters | Previous parameters |
---|---|
ProtocolVersion | NexoTMSProtocolVersion |
TerminalManagerId | TerminalManagerId |
ProtocolVersion refers to the supported Nexo version. Currently, it is 6.0.
TerminalManagerId is the terminal id that will be embedded into the configuration messages sent to the POI’s.
Parameters that are no longer in the configuration file
These parameters must be moved into the specific configuration files .
MOVED
ASFileUploadSignatureKey
NexoMessagesUploadURL
GatewayId
User
Group
DELETED
DebugDumpMessages
Sample Configuration
Code Block |
---|
############################################################################### # # Atheos Gateway V3 Configuration File # # Copyright ©2005-2021 - 9164-4187 QUEBEC INC (“AMADIS”), All Rights Reserved # ############################################################################### # [LogFile] # Log file location. A fully qualified file name must be supplied. URI = file:///var/log/amadis/atheosgw.log # Directories permissions DirectoriesPermissions = 0770 # File permissions FilePermissions = 0640 [MessagesRepositories] # Base directory where the messages received and sent to the POI are saved. # Previously FileRepositoryBaseDir BaseDirectory=/home/amadis/files # Directories permissions for the message repositories DirectoriesPermissions = 0770 # File permissions for the message repositories FilePermissions = 0640 [Connectivity] # Server incoming connection port. Previously ServerPort ListeningPort = 55554 # Address on which the server will bind (listen) to. BindingAddress = 0.0.0.0 # Server certificate used [ServerSSLCertificate] CryptographicProvider = OpenSSL Type = X509Certificate Format = PEM URI = file://server.crt # Private key for the server certificate. Password protected keys are not # supported yet. [ServerSSLPrivateKey] CryptographicProvider = OpenSSL Type = PrivateKey Format = PEM URI=file://server.unprotected.key #[ServerSSLPrivateKey] #CryptographicProvider = hsm1 #Type = PrivateKey #URI = pkcs11:model=SoftHSM%20v2;manufacturer=SoftHSM%20project;serial=abe6ed66024f38b2;token=claude;id=%40%00;object=serverkey;type=private;pin-value=4321 [hsm1] # Engine type (internal or HSM) Type = PKCS11HSM # Engine ID ID=pkcs11 # Engine library path SOPath=/usr/lib/x86_64-linux-gnu/engines-1.1/libpkcs11.so # Engine module path as required by the engine shared object library. ModulePath=/usr/lib/softhsm/libsofthsm2.so # Engine PIN PIN=4321 [OpenSSL] Type = OpenSSL Version = 1.0.0 [Performance] # Maximum number of concurrent connections the server will handle before # queuing the other ones. MaximumConnections = 10 # Pending connections queue length. If MaximumConnections is reached, up to # PendingConnectionQueueLength connections will be queued before rejecting # them. PendingConnectionQueueLength = 200 # Maximium wait time while listening for a new connection in microseconds. ListeningMaximumWaitTime = 100000 # Time in seconds the server will wait before terminating # active connections. ShutdownDelay = 60 # Timeout in seconds of a connection with a POI. SSLTimeout = 60 # Maximum wait time when waiting for an event on a socket. SocketSelectMaximumWaitTime = 100000 # Nexo message initial input buffer size in bytes. This value shall not be # lower than 2000 bytes. NexoMessageInitialBufferSize = 48000 # Nexo Builder Buffer size in bytes. NexoBuilderErrorMessagesBufferSize bytes # are reverved as the error message buffer. NexoBuilderBufferSize = 48000 # How much space to reserve in the Nexo Builder Buffer for error messages. # It must be lower than 3072. NexoBuilderErrorMessagesBufferSize = 1024 [Nexo] # Nexo protocol version included in the Nexo messages ProtocolVersion = 6.0 # Terminal Manager Id included in the Nexo |
...
messages TerminalManagerId=ATHEOS-TMS01 [PoiConfigurations] # |
...
Base directory |
...
root |
...
where |
...
the |
...
configuration |
...
files and # the |
...
management plans for the POIs are located.
BaseDirectory = /home/amadis/poi
# Directories permissions for the POI configuration repositories
DirectoriesPermissions = 0770 |