Branding
Branding can be localized, allowing different branding for each supported language.
Branding should be applied on the filesystem using Cockpit File Browser or via ssh.
To configure portal branding, you need to create an ansible override file /etc/ciphermail/ansible/group_vars/all/portal-branding.yml
which overrides values for specific locales.
favicon
layout.logo
login.logo
portal.home.content
portal.home.title
portal.legal-notice
portal.title
Example:
---
favicon_en: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUg....'
layout.logo_en: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA'
login.logo_en: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA'
portal.home.content_en: |
<p>This is shown on the portal home page<p>
This <b>can</b> contain
HTML <a href="https://www.example.com>link</a>
portal.home.title_en: 'Updated Portal Home Title'
portal.legal-notice_en: |
<p>This is shown on the login and signup page<p>
This <b>can</b> contain
HTML <a href="https://www.example.com>link</a>
portal.title_en: 'Update Portal Application Title'
If you do not need to change a particular setting, you can omit it.
To use a different override for a different locale (language), you need to replace the language with a different language from the following list:
de, dk, en, es, fi, fr, it, ja, ko, nl, no, pl, pt, ro, sv, tr
Example:
---
portal.legal-notice_en: |
<p>This is the default override<p>
portal.legal-notice_de: |
<p>This is only for the German language<p>
The English locale (en) is used as the default for all languages. If a language-specific value is provided, it overrides the English default for that language.
After changing the portal branding override file, you need to run the playbook to apply the changes:
sudo cm-run-playbook
Tip
To copy logo files to the gateway, you can use Cockpit File Browser or use an scp client.
To create and edit the override file /etc/ciphermail/ansible/group_vars/all/portal-branding.yml
,
you can use the built-in Cockpit text editor. To create a file select Create file from the
top-right menu (the three dots). To edit a file, right-click the file and select Open text file.
To access the system shell, use Cockpit Terminal or use an SSH client.
Favicon
The favicon must be provided as a data‑URL. To encode an image, follow these steps:
Copy the favicon to the gateway
Log in to the shell, then run the following command:
ciphermail-cli tool html data-url encode --input-file <favicon-file>
Replace
<favicon-file>
with the full path of the uploaded favicon.The above command will return the encoded image.
Copy the encoded value to the
/etc/ciphermail/ansible/group_vars/all/portal-branding.yml
file:Add the following line:
favicon_en: '<encoded-favicon>'
Replace
<encoded-favicon>
with the result of the previous step.
Layout logo
The logo must be provided as a data‑URL. To encode an image, follow these steps:
Copy the logo to the gateway
Log in to the shell, then run the following command:
ciphermail-cli tool html data-url encode --input-file <logo-file>
Replace
<logo-file>
with the full path of the uploaded logo.The above command will return the encoded image.
Copy the encoded value to the
/etc/ciphermail/ansible/group_vars/all/portal-branding.yml
file:Add the following line:
layout.logo_en: '<encoded-logo>'
Replace
<encoded-logo>
with the result of the previous step.
Login logo
The logo must be provided as a data‑URL. To encode an image, follow these steps:
Copy the logo to the gateway
Log in to the shell, then run the following command:
ciphermail-cli tool html data-url encode --input-file <logo-file>
Replace
<logo-file>
with the full path of the uploaded logo.The above command will return the encoded image.
Copy the encoded value to the
/etc/ciphermail/ansible/group_vars/all/portal-branding.yml
file:Add the following line:
login.logo_en: '<encoded-logo>'
Replace
<encoded-logo>
with the result of the previous step.
Portal home page content
The portal home page content is the HTML content of the portal home page. To change the portal home page title, follow the procedure below.
Copy the new HTML content to the
/etc/ciphermail/ansible/group_vars/all/portal-branding.yml
file:Add the following line:
portal.home.content_en: | <html>
Replace
<html>
with html content for the portal page
Portal home title
To change the portal home-page title, follow the procedure below.
Copy the new title to the
/etc/ciphermail/ansible/group_vars/all/portal-branding.yml
file:Add the following line:
portal.home.title_en: '<title>'
Replace
<title>
with the new title
Portal legal notice
If configured, the legal notice will be added to the portal login and portal signup page. To configure the legal notice, follow the procedure below.
Copy the legal notice HTML content to the
/etc/ciphermail/ansible/group_vars/all/portal-branding.yml
file:Add the following line:
portal.legal-notice_en: | <html>
Replace
<html>
with html content for the legal notice
Example legal notice on the login page:

Portal title
To change the portal application title, follow the procedure below.
Copy the new title to the
/etc/ciphermail/ansible/group_vars/all/portal-branding.yml
file:Add the following line:
portal.title_en: '<title>'
Replace
<title>
with the new title