Skip to content

Secure Externally Accessible Services


For security reasons, we strongly recommend configuring the TLS encryption. For PLOSSYS Administrator, this is also one step to get rid off the annoying certificate warnings in the browser. We also recommend using a regenerated client secret different to the one contained in delivery.

This article describes how to secure services that are accessible from the outside:

  • seal-cpm-checkin
  • seal-ipp-checkin
  • seal-job-notifier
  • seal-mainland-checkout
  • seal-plossysadmin
  • seal-rest

Hint - Script

SEAL Systems offers a script for updating certificates. Contact your Technical Project Manager at SEAL Systems if you are interested.


Configure the TLS Encryption

  1. Get the TLS certificate in PEM format, see the Requirement. For securing the connection to PLOSSYS Administrator, the certificate has to contain the server name of PLOSSYS Output Engine.

  2. Create a new directory for the external TLS certificates:

    mkdir C:\ProgramData\SEAL Systems\config\tls-external
    
  3. Save the private key and the public certificate in the newly created C:\ProgramData\SEAL Systems\config\tls-external directory.

    copy <your_key.pem> C:\ProgramData\SEAL Systems\config\tls-external\key.pem
    
    copy <your_cert.pem> C:\ProgramData\SEAL Systems\config\tls-external\cert.pem
    
  4. Set the following key to the path of the certificate files:

    • TLS_EXTERNAL_DIR: Directory for storing the files necessary for secure transfer of the services handling external requests.

    Example - setting key via PLOSSYS CLI for all external services (recommended)

    plossys config set TLS_EXTERNAL_DIR "C:\ProgramData\SEAL Systems\config\tls-external" --service any --insecure
    

    Example - setting key via PLOSSYS CLI for PLOSSYS Administrator only

    plossys config set TLS_EXTERNAL_DIR "C:\ProgramData\SEAL Systems\config\tls-external" --service plossysadmin --insecure
    

    Hint - exception job-notifier

    Although the seal-job-notifier is accessible from the outside, it does not support the environment key TLS_EXTERNAL_DIR yet. You have to set TLS_DIR for the seal-job-notifier service accordingly.

    plossys config set TLS_DIR "C:\ProgramData\SEAL Systems\config\tls-external" --service job-notifier --insecure
    
  5. If self-signed certificates are used, the following key has to be set to 0 for the respective services:

    Example - setting key via PLOSSYS CLI

    plossys config set NODE_TLS_REJECT_UNAUTHORIZED 0 --service plossysadmin --insecure
    
  6. Restart the following services:

    • seal-cpm-checkin
    • seal-ipp-checkin
    • seal-job-notifier
    • seal-mainland-checkout
    • seal-plossysadmin
    • seal-rest
  7. Close PLOSSYS Administrator and open it again.


Configure the TLS Encryption in a Cluster

In a cluster, execute the steps above on one server. On every other server, execute the following steps:

  1. Create a new directory for the external TLS certificates:

    mkdir C:\ProgramData\SEAL Systems\config\tls-external
    
  2. Save the private key and the public certificate in the newly created C:\ProgramData\SEAL Systems\config\tls-external directory.

    copy <your_key.pem> C:\ProgramData\SEAL Systems\config\tls-external\key.pem
    
    copy <your_cert.pem> C:\ProgramData\SEAL Systems\config\tls-external\cert.pem
    
  3. Restart the following service:

    • seal-cpm-checkin
    • seal-ipp-checkin
    • seal-job-notifier
    • seal-mainland-checkout
    • seal-plossysadmin
    • seal-rest
  4. If needed, close PLOSSYS Administrator and open it again.


Regenerate the Client Secret in the OIDC Identity Provider

  1. In the OIDC identity provider, regenerate the secret for the seal-plossysadmin client, refer to the SEAL Interfaces for OIDC documentation.

  2. In the configuration of the seal-plossysadmin service, specify the regenerated client secret with the following key:

    • AUTH_CLIENT_SECRET: Client secret generated in the OIDC identity provider for the seal-plossysadmin client

Specify a CA Certificate (Unnecessary in Most Cases)

If a CA certificate has been specified, PLOSSYS Administrator requires a client certificate from each client, that means from the Web browser. This would require corresponding properties of the certificate and would be a high effort. A complete explanation of how to use client certificates is beyond the scope of this documentation.

For the rare other cases, this is how you configure a CA certificate with PLOSSYS Administrator:

  1. Save the CA certificate to the following file:

    C:\ProgramData\SEAL Systems\config\tls-external\ca.pem
    

Next Step

Continue with: Secure Internal Services


Back to top