Virtualmin in Ubuntu 26.04 LTS

SYSTEM INFORMATION
OS type and version Ubuntu Linux 26.04
Webmin version 2.651
Usermin version 2.550
Virtualmin version 8.1.0 GPL
Theme version 26.50.2
Apache version 2.4.66
Package updates All installed packages are up to date

Hello,

I just installed the last version in a future production VPS from Contabo.
The entire installation process went well, but at the end, when it asked to restart, it froze. I had to restart it from my VPS control panel. After that, no problems.
With the first Ubuntu update, the SSH server didn’t restart; I had to do it manually. The same thing happened with today’s update.
After that, everything is working very well. I’m going to start moving some sites made with WordPress and Grav to this VPS and see how it goes.
Feel free to ask any questions. Thanks for the great work!

Its not listed as supported yet. OS Support | Virtualmin — Open Source Web Hosting Control Panel

and? I know that. Check the Grade B list.

It shouldn’t be used in production until fully tested, its always been the case. Use it with caution.
Its you use it that’s up to you. If it on the Grade B then its not a production OS.

Yes I know that too, thanks
I posted it here in case any of the devs wanted to try something in a real environment, and also so I can report any problems like I just did with SSH

Virtualmin 8.2.0 will soon support Grade A Ubuntu 26.04.

Thanks, please do, yet I doubt that SSH issue you described has anything to do with Virtualmin/Webmin.

Was the SSH server updated? I generally still do manual updates so I can check out WHAT is being updated in case a problem arises. I’m on Debian and I don’t remember doing any back to back updates of SSH server recently.

Are you restarting the whole server? I know Debian 13 on my desktop wants to do that now. Restart, install packages prior to the windows manager starting, and then rebooting again. (Unless I tell it to shutdown IF I have time to click on the choice :frowning: )

If the latter is the case, check to make sure it is set to come on at start.

SSH was not updated, I try first activate the server with the run command in the Server Status widget, finally I need to restart manually the service.
Today I need to restart the VPS and the SSH server is running fine.

SYSTEM INFORMATION
OS type and version Ubuntu Linux 26.04
Webmin version 2.652
Usermin version 2.551
Virtualmin version 8.1.0 GPL
Theme version 26.50.3
Apache version 2.4.66
Package updates 2 package updates are available

I found this issue, summarize using CHatGPT:

DKIM configuration appears broken after migration to Ubuntu 26.04 / Virtualmin 8.1

Hello,

I’m experiencing a DKIM issue after migrating my Virtualmin server from an older VPS.

Environment

  • Virtualmin GPL 8.1.0

  • Webmin 2.652

  • Ubuntu Server 26.04

  • Postfix 3.10.6

  • OpenDKIM 2.11.0

  • Dovecot

  • BIND DNS

  • All DNS zones are hosted locally on the same server.

  • About 16 Virtual Servers.

This server was migrated from a previous Virtualmin installation running Ubuntu 22.04.


Problem

Outgoing mail is rejected by Gmail with:

550-5.7.26 Your email has been blocked because the sender is unauthenticated.

DKIM = did not pass
SPF = did not pass

SPF is being corrected separately, but DKIM appears not to be working at all.


OpenDKIM status

OpenDKIM is installed and running correctly.

ii  opendkim
ii  opendkim-tools
ii  libopendkim11

systemctl status opendkim

returns:

Active: active (running)

Socket configured in:

Socket inet:8891@127.0.0.1


Postfix configuration

Postfix is configured with IPv4 only.

postconf inet_protocols

inet_protocols = ipv4

However:

postconf | grep milter

shows:

smtpd_milters =
non_smtpd_milters =

No milter is configured.


Virtualmin configuration

Global configuration:

grep dkim_enabled /etc/webmin/virtual-server/config

returns

dkim_enabled=0

However, individual domains report DKIM enabled.

Example:

grep dkim_enabled /etc/webmin/virtual-server/domains/168386005070117

returns

dkim_enabled=1

So the global configuration says DKIM is disabled, while domains indicate it is enabled.


DKIM commands

The command exists:

virtualmin get-command --command set-dkim

Output shows:

set-dkim

with parameters:

  • --enable

  • --disable

  • --select

  • --size

  • etc.

However,

virtualmin set-dkim --enable

does not generate any DKIM keys.

No errors are displayed.


Missing DKIM files

The following do NOT exist:

/etc/domainkeys

No domain private keys exist anywhere:

find /etc -name "*.private"

returns nothing related to DKIM.

Likewise:

find /home -name "*.private"

returns nothing.

The only key present is:

/etc/dkim.key

which is referenced from

/etc/opendkim.conf

and

/etc/dkim-domains.txt

contains only:

vmi3436560.contaboserver.net

No hosted domains are listed there.


DNS

Example:

dig TXT mail._domainkey.ajedrezdata.com

returns

NXDOMAIN

No DKIM TXT record exists.


Domain information

Virtualmin correctly reports for the migrated domains:

  • SPF enabled

  • Mail enabled

  • SSL enabled

  • DNS local

Everything else appears normal.


Additional observations

The server contains approximately 16 migrated Virtual Servers.

Every migrated domain appears to have:

dkim_enabled=1

but:

  • no DKIM keys

  • no DNS DKIM records

  • no OpenDKIM configuration for those domains


Questions

  1. Is this a known migration issue from Ubuntu 22.04 / Virtualmin 7.x to Ubuntu 26.04 / Virtualmin 8.1?

  2. Should virtualmin set-dkim --enable regenerate DKIM keys for all existing domains?

  3. Is there a command to rebuild the complete DKIM configuration for all migrated Virtual Servers?

  4. Is the global setting

dkim_enabled=0

preventing DKIM generation?

  1. Is there any migration step required to rebuild the OpenDKIM configuration after restoring Virtualmin backups?

Any guidance would be greatly appreciated.

Thank you.

@mlacunza To understand how to migrate to Ubuntu 26.04 and why things break, you should look into virtualmin/Virtualmin-Config, or at least let your chatbot do it for you.

@Jamie, we could write migration recipes for known changes (SASL config on 24.04 → 26.04, etc.), but I suspect they’d be fragile to maintain. Curious what you think.

Though since Webmin already detects major version upgrades, could we expose an API hook for one-time post-upgrade migrations? Some users clearly favor in-place upgrades over clean installs, so it seems worth supporting properly.

I suppose we could add a hook that allows modules to be notified when a new OS major version is detected by Webmin, to perform any needed config upgrades.