Undefined subroutine &Net::SSLeay::CTX_new called at /usr/share/webmin/miniserv.pl line 4599

SYSTEM INFORMATION
OS type and version Debian 10
Webmin version 2.001

When doing anything that requires to reload the Webmin configuration it throws: “Error 503” on the userinterface. I tracked it down to the error apparently being in the miniserv.pl.

Hope anyone can help.

Thank you in advance and greetings,

Richard

That function is part of the libnet-ssleay-perl package. As far as I know, that’s a dependency of the Webmin package. Perhaps you’ve replaced perl with a non-standard installation which does not have this module?

Thank you for the speedy reply, I thought about that too and double checked. The module is installed and usable by perl.

/usr/bin/perl -MNet::SSLeay -e ‘print “OK\n”;’

Prints OK.

1 Like

Any other ideas what could cause the error?

Are you sure Webmin is using the same Perl you’re using? How did you install Webmin? What’s the shebang for miniserv.pl (and what’s which perl)?

root@nyx:~# cat /usr/share/webmin/miniserv.pl
Yes, they are using the same perl.
I installed via the virtualmin pro install script.


root@nyx:~# cat /usr/share/webmin/miniserv.pl
#!/usr/bin/perl
# A very simple perl web server used by Webmin

and

root@nyx:~# which perl
/usr/bin/perl

No Idea what could cause this Problem?
Webmin dies with this error which makes it very unusable.

How did you install Webmin?

@Ilia

like this I guess

This should never be an issue on a clean Debian 10 or 11 systems. Figuring what’s wrong may take more time than reinstalling.

@ripix What is your service provider? Is this a clean Debian 10 install? Also, for clean installs you should use Debian 11.

This has been a clean install a while back.
This Problem came up randomly after running for nearly a year now.

All that was done is the “upgrade license” from gpl to pro. Other than that just normal updates and stuff.

A new clean install is not an option atm. there are 160 Websites running rightnow in production.

I’m kinda stumped. It seems like that module has changed from the one provided by the deb package provided by the OS. I don’t know how/why that’d happen (we never touch it, we just depend on the package provided by the OS).

It looks like dpkg now has a verify flag, so maybe: dpkg -V libnet-ssleay-perl will provide some clues about what files have changed (if any)?

The dpkg -V libnet-ssleay-perl gives no output…
The current version installed is libnet-ssleay-perl (1.85-2+deb10u1).

I wonder, does it solve your problem:

/etc/webmin/restart-by-force-kill

If not, can we see the exact content of your /etc/webmin/config and /etc/webmin/miniserv.conf files?

The force kill did not work out.

Here are the config files:

/etc/webmin/config

passwd_cindex=2
passwd_pindex=1
passwd_mindex=4
passwd_uindex=0
ld_env=LD_LIBRARY_PATH
find_pid_command=ps auwwwx | grep NAME | grep -v grep | awk '{ print $2 }'
by_view=0
tempdelete_days=7
path=/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin
passwd_file=/etc/shadow
os_type=debian-linux
os_version=10
real_os_type=Debian Linux
real_os_version=10
lang=en
log=1
referers_none=1
md5pass=0
theme=authentic-theme
product=webmin
webprefix=
nowebminup=1
logfiles=1
mobile_theme=authentic-theme
cache_size=52428800
cache_mods=virtual-server
referer=0
referers=nyx.rittler.co
realname_femopeak=
notabs_femopeak=1
ownmods_femopeak=bind8 mysql spam virtual-server filemin passwd proc cron at telnet change-user htaccess-htpasswd mailboxes syslog virtualmin-htpasswd webminlog
readonly_femopeak=virtual-server

/etc/webmin/miniserv.conf

port=10000
root=/usr/share/webmin
mimetypes=/usr/share/webmin/mime.types
addtype_cgi=internal/cgi
realm=Webmin Server
logfile=/var/webmin/miniserv.log
errorlog=/var/webmin/miniserv.error
pidfile=/var/webmin/miniserv.pid
logtime=168
ssl=0
no_ssl2=1
no_ssl3=1
no_tls1=1
no_tls1_1=1
ssl_honorcipherorder=1
no_sslcompression=1
env_WEBMIN_CONFIG=/etc/webmin
env_WEBMIN_VAR=/var/webmin
atboot=1
logout=/etc/webmin/logout-flag
listen=10000
denyfile=\.pl$
log=1
blockhost_failures=5
blockhost_time=60
syslog=1
ipv6=1
session=1
premodules=WebminCore
server=MiniServ/2.001
userfile=/etc/webmin/miniserv.users
keyfile=/etc/webmin/miniserv.pem
passwd_file=/etc/shadow
passwd_uindex=0
passwd_pindex=1
passwd_cindex=2
passwd_mindex=4
passwd_mode=0
preroot=authentic-theme
passdelay=1
cipher_list_def=2
logout_script=/etc/webmin/logout.pl
login_script=/etc/webmin/login.pl
failed_script=/etc/webmin/failed.pl
sudo=1
sessiononly=/virtual-server/remote.cgi
preload=virtual-server=virtual-server/virtual-server-lib-funcs.pl virtual-server=virtual-server/feature-unix.pl virtual-server=virtual-server/feature-dir.pl virtual-se$ssl_cipher_list=ECDHE-RSA-AES256-SHA384:AES256-SHA256:AES256-SHA256:RC4:HIGH:MEDIUM:+TLSv1:+TLSv1.1:+TLSv1.2:!MD5:!ADH:!aNULL:!eNULL:!NULL:!DH:!ADH:!EDH:!AESGCM
error_handler_403=403.cgi
error_handler_404=404.cgi
error_handler_401=401.cgi
nolog=\/stats\.cgi\?xhr\-stats\=general
ssl_hsts=0
no_tls1_2=
extracas=
certfile=
logouttimes=

The miniserv.conf file on your system should have ssl=0 changed to ssl=1 in order to access Webmin service using https://. If you use ssl=0 (not recommended) you should access your Webmin instance using http:// protocol. Note that some domains, like .dev are inscribed in the HTTP Strict Transport Security (HSTS) preload list and will never work without SSL enabled in any modern browser.

2 Likes

Looks like that fixed it.
Thank you!

This topic was automatically closed 8 days after the last reply. New replies are no longer allowed.