Update

The CipherMail Appliance is installed and updated using RPM packages. To install updates, use the operating system’s standard update tool, dnf.

If you are using the Enterprise or Professional edition, dnf automatically downloads available updates from the official CipherMail repository. If you are using another edition, updates may need to be provided through a different repository or supplied by your administrator, depending on your deployment.

To ensure a smooth update, make sure the appliance has network access to the configured update repository before starting the update process.

Install updates from the command line using SSH, direct console access, or the Cockpit web interface’s built-in Terminal.

To install updates, run the following command:

sudo dnf update

After dnf installs an update, the CipherMail playbook runs automatically to verify that the system is in the correct state.

Most package updates do not require a reboot. However, some operating system updates, such as kernel updates, only take effect after the system is restarted. If a reboot is required, plan a maintenance window to minimize downtime and ensure the update is fully applied.

Hint

CipherMail configures an alias for the dnf command to ensure the playbook runs automatically whenever you install or update a package. If you do not want the playbook to run automatically, use \dnf to execute the original, unaliased dnf command.

Note

Pro/Ent only The DNF configuration file at /etc/dnf/dnf.conf is managed by Ansible. Do not edit this file directly, because your changes will be overwritten the next time the Ansible playbook runs. If you need to add or change DNF settings, place them in the ciphermail_appliance__dnf_additional_config Ansible variable instead. This ensures your custom configuration is preserved and applied correctly during future updates:

sudo vi /etc/ciphermail/ansible/group_vars/all/override.yml

Example which configures dnf proxy support and timeouts:

ciphermail_appliance__dnf_additional_config: |
    proxy=http://1.2.3.4:8080
    proxy_username=some_user
    proxy_password=some_password
    timeout=180

After changing override.yml, run the playbook:

sudo cm-run-playbook

For a complete list of available DNF configuration options, see the man page:

man dnf.conf