Unable to add virtual server to slave DNS servers during creation

Hi,

I am all of a sudden receiving an error when creating a new virtual server in Virtualmin Professional (version 5.04) on my CentOS 7.2 machine running the latest versions of all packages. I haven't really made any changes to my Virtualmin configuration lately yet, as shown in the below virtual server creation log, Virtualmin fails to add the created domain to the two slave DNS servers (ns12.airshock.net and ns13.airshock.net) that I have set up. Here is the log:

Creating administration group webercitydeli .. .. done Creating administration user webercitydeli .. .. done

Creating aliases for administration user .. .. done

Adding administration user to groups .. .. done

Creating home directory .. .. done

Creating mailbox for administration user .. .. done

Adding new DNS zone .. .. done

Adding slave zone on ns13.airshock.net ns12.airshock.net .. .. BIND DNS domain failed! : Can't use string ("ns13.airshock.net ns12.airshock."...) as an ARRAY ref while "strict refs" in use at /usr/libexec/webmin/bind8/bind8-lib.pl line 2670.

Adding to email domains list .. .. done

Adding default mail aliases .. .. done

Adding new virtual website .. .. done

Adding webserver user apache to server's group .. .. done

Performing other Apache configuration .. .. done

Setting up log file rotation .. .. done

Creating MySQL login .. .. done

Creating MySQL database clients_webercitydeli .. .. done

Setting up spam filtering .. .. done

Setting up virus filtering .. .. done

Creating Webmin user .. .. done

Applying web server configuration .. .. done

Re-loading Webmin .. .. done

Saving server details .. .. done

Creating alias server webercitydeli.jemediacorp.com .. Adding to email domains list .. .. done Updating target virtual website .. .. done

Performing other Apache configuration .. .. done

Applying web server configuration .. .. done

Saving server details .. .. done

Updating Webmin user .. .. done

Re-loading Webmin .. .. done

.. done Installing third-party scripts .. Installing wordpress version 4.5.3 .. Configuring webserver PHP settings .. .. already done. .. done. WordPress installation complete. It can be accessed at http://webercitydeli.com/wp-admin/install.php.

.. done Applying web server configuration .. .. done

How can I resolve this issue? Thank you!

Status: 
Active

Comments

We have just released an update to the BIND Webmin module to fix this. If you login to Webmin / Virtualmin on the slave system, you should be prompted to install it.

Hi Jamie,

Thanks for your prompt response to the issue. Once I install the update, how can I get the slave DNS servers to pick up all of the domain names that they are missing due to the bug? (this has happened on more than one virtual server)

Thanks!

You'd have to disable and re-enable the DNS feature for those domains in Virtualmin.

Hi,

I updated both slave DNS Webmin servers and both updates completed successfully. Then I disabled DNS on the affecting domains through the Virtualmin "disable-feature" command-line utility and attempted to re-enable it with the "enable-feature" utility. However, I still receive the exact same error message as before (though BIND continues to work just fine on the local system as it did before as well). I am running the latest versions of Webmin on all three machines.

Perhaps this issue is related to some other bug?

Thanks, -Logan

So the problem only happens when re-enabling a disabled domain?

I did some testing on a couple of fully-patched systems, but wasn't able to reproduce the problem when enabling or disabling.

The issue also still occurs when adding a new virtual server, as shown in the full log below:

Setting Up Virtual Server
In domain example11.com Creating administration group example11 .. .. done Creating administration user example11 .. .. done

Creating aliases for administration user .. .. done

Adding administration user to groups .. .. done

Creating home directory .. .. done

Creating mailbox for administration user .. .. done

Adding new DNS zone .. .. done

Adding slave zone on ns13.airshock.net ns12.airshock.net .. .. BIND DNS domain failed! : Can't use string ("ns13.airshock.net ns12.airshock."...) as an ARRAY ref while "strict refs" in use at /usr/libexec/webmin/bind8/bind8-lib.pl line 2670.

Adding to email domains list .. .. done

Adding default mail aliases .. .. done

Adding new virtual website .. .. done

Adding webserver user apache to server's group .. .. done

Performing other Apache configuration .. .. done

Setting up log file rotation .. .. done

Creating MySQL login .. .. done

Creating MySQL database clients_example11 .. .. done

Setting up spam filtering .. .. done

Setting up virus filtering .. .. done

Creating Webmin user .. .. done

Applying web server configuration .. .. done

Re-loading Webmin .. .. done

Saving server details .. .. done

Creating alias server example11.jemediacorp.com .. Adding to email domains list .. .. done Updating target virtual website .. .. done

Performing other Apache configuration .. .. done

Applying web server configuration .. .. done

Saving server details .. .. done

Updating Webmin user .. .. done

Re-loading Webmin .. .. done

.. done Installing third-party scripts .. Installing wordpress version 4.5.3 .. Configuring webserver PHP settings .. .. already done. .. done. WordPress installation complete. It can be accessed at http://example11.com/wp-admin/install.php.

.. done Applying web server configuration .. .. done

Can you post line 2670 of /usr/libexec/webmin/bind8/bind8-lib.pl to this ticket?

Here is the requested line:

my %on = map { $_, 1 } @$hosts;

Odd, that doesn't look like the code from the latest version.

What does the /usr/libexec/webmin/bind8/module.info file contain on your system?

Here is the contents of the module.info file (note this is from my Virtualmin system, not any of the two slaves):

desc_ca=Servidor DNS BIND desc_pt_BR=Servidor de DNS BIND longdesc_de=Erstellt und bearbeitet Domains, DNS-Einträge, BIND-Optionen und Ansichten. desc_zh_CN.UTF-8=BIND DNS 服务器 readonly=1 desc=BIND DNS Server longdesc_ms_MY=Membuat dan mengubah domain, rekod DNS, 'options' dan 'views' pada BIND. category=servers desc_ja_JP.euc=BIND DNS ?????? longdesc_pl=Tw?rz i edytuj domeny, rekordy DNS, opcje BIND i widoki. desc_zh_TW.Big5=BIND DNS ???A?? desc_ko_KR.UTF-8=BIND DNS 서버 desc_bg=BIND DNS ?????? name=BIND desc_tr=BIND DNS Sunucusu desc_de=BIND DNS-Server os_support=slackware-linux redhat-linux mandrake-linux solaris debian-linux suse-linux united-linux hpux freebsd osf1 irix unixware openserver macos open-linux turbo-linux openbsd corel-linux cobalt-linux/5.0-* aix netbsd msc-linux generic-linux gentoo-linux trustix-linux sol-linux coherent-linux openmamba-linux windows pardus-linux desc_zh_CN=BIND DNS ?????? risk=low medium high desc_pl.UTF-8=BIND - serwer DNS desc_cz.UTF-8=DNS BIND Server desc_ja_JP.UTF-8=BIND DNS サーバ desc_pl=BIND - serwer DNS desc_fr=Serveur de noms de domaines BIND desc_es=Servidor de DNS BIND desc_ru_RU=?????? DNS BIND desc_no=BIND DNS-tjener desc_cz=DNS BIND Server desc_pt=Servidor de DNS BIND desc_nl=BIND DNS-server desc_sv=BIND DNS-server desc_hu=DNS szerver (Bind) desc_ms_MY=Pelayan DNS BIND desc_zh_TW.UTF-8=BIND DNS 伺服器 version=1.810 longdesc=Create and edit domains, DNS records, BIND options and views. desc_ru_SU=?????? DNS BIND desc_ko_KR.euc=BIND DNS ???? syslog=1 desc_ru.UTF-8=Сервер DNS BIND depends=servers 1.810 desc_de.UTF-8=BIND DNS-Server desc_fr.UTF-8=Serveur de noms de domaines BIND desc_hu.UTF-8=DNS szerver (Bind) desc_no.UTF-8=BIND DNS-tjener desc_sv.UTF-8=BIND DNS-server desc_ms_MY.UTF-8=Pelayan DNS BIND desc_es.UTF-8=Servidor de DNS BIND desc_pt.UTF-8=Servidor de DNS BIND desc_ca.UTF-8=Servidor DNS BIND desc_pt_BR.UTF-8=Servidor de DNS BIND desc_nl.UTF-8=BIND DNS-server

Hello both of you,

Just a quick message to tell you that I have the exact same problem here.

Some additional informations :

  • I'm running Debian

  • Both servers are runing Webmin 1.810 (and Virtualmin 5.04.gpl)

  • I have never been prompted connecting myself on the slave server for any update to install

  • The line 2670 of my /usr/share/webmin/bind8/bind8-lib.pl also is :

my %on = map { $_, 1 } @$hosts;

  • I apologize for my poor english ;-)

Thank you in advance for any help, Nico

I've never been prompted to update my Virtualmin system's BIND module, but I was prompted to on both slaves running only Webmin (but not Virtualmin). The OS versions and packages are the same across all three machines, I keep them all up to date.

I was able to resolve this issue by following the instructions in the following post: https://www.virtualmin.com/node/41721

Specifically, I launched the Upgrade Webmin utility on my primary Virtualmin system, which then showed me the BIND module update available (which was not shown at login like it was on the slave systems running only Webmin). Once I installed the update, the bug disappeared and I can successfully create DNS zones locally and on slaves yet again.