Failed to save two-factor authentication

Hello.
I have installed VirtualminGPL
I tried to install two factor authentication - Google Authenticator.

But I received this error:
Failed to save two-factor authentication : The Perl module Authen::OATH needed for two-factor authentication is not installed. Use the Perl Modules page in Webmin to install it.

I continued the link Perl Modules in the above message.
The installation failed but it downloaded the file and I installed later.

I installed the module:

Install Module
Making and installing Authen::OATH …

Untarring module file

Executing gunzip -c /tmp/.webmin/Authen-OATH-2.0.1.tar.gz | tar xvf - …

Authen-OATH-2.0.1/
Authen-OATH-2.0.1/Changes
Authen-OATH-2.0.1/CONTRIBUTORS
Authen-OATH-2.0.1/cpanfile
Authen-OATH-2.0.1/dist.ini
Authen-OATH-2.0.1/INSTALL
Authen-OATH-2.0.1/lib/
Authen-OATH-2.0.1/LICENSE
Authen-OATH-2.0.1/Makefile.PL
Authen-OATH-2.0.1/MANIFEST
Authen-OATH-2.0.1/META.json
Authen-OATH-2.0.1/META.yml
Authen-OATH-2.0.1/README.md
Authen-OATH-2.0.1/stopwords
Authen-OATH-2.0.1/t/
Authen-OATH-2.0.1/t/00-load.t
Authen-OATH-2.0.1/t/01-cases.t
Authen-OATH-2.0.1/t/02-bignum.t
Authen-OATH-2.0.1/t/author-pod-coverage.t
Authen-OATH-2.0.1/t/author-pod-spell.t
Authen-OATH-2.0.1/t/author-synopsis.t
Authen-OATH-2.0.1/t/author-tidyall.t
Authen-OATH-2.0.1/t/manifest.t
Authen-OATH-2.0.1/t/pod-coverage.t
Authen-OATH-2.0.1/t/pod.t
Authen-OATH-2.0.1/t/release-cpan-changes.t
Authen-OATH-2.0.1/lib/Authen/
Authen-OATH-2.0.1/lib/Authen/OATH.pm

Compiling module

Executing /usr/bin/perl Makefile.PL && make …

Warning: prerequisite Moo 2.002004 not found.
Warning: prerequisite Types::Standard 0 not found.
Checking if your kit is complete…
Looks good
Writing Makefile for Authen::OATH
cp lib/Authen/OATH.pm blib/lib/Authen/OATH.pm
Manifying blib/man3/Authen::OATH.3pm

Installing module

Executing make install …

Manifying blib/man3/Authen::OATH.3pm
Installing /usr/local/share/perl5/Authen/OATH.pm
Installing /usr/local/share/man/man3/Authen::OATH.3pm
Appending installation info to /usr/lib64/perl5/perllocal.pod

Make and install of Authen::OATH successful.

After the installation I went to Perl Modules

In Perl modules > existing modules, I can see the module.

Authen::OATH 	0 	OATH One Time Passwords 	
06/13/2018 1:34 PM

The module is installed.

I went again to Webmin configuration > Two-Factor Authentication
in Two-factor authentication options
I have selected Goolgle Authenticator again and clicked Save button.

I received the same error:
Failed to save two-factor authentication : The Perl module Authen::OATH needed for two-factor authentication is not installed. Use the Perl Modules page in Webmin to install it.

Weird, isn’t it?


I tried to restart the webmin service but is trying to restart all the time.
I restarted the virtual machine.

I reinstalled the module, and I got an error:

Making, testing and installing Authen::OATH …

Untarring module file

Executing gunzip -c /tmp/.webmin/Authen-OATH-2.0.1.tar.gz | tar xvf - …

Authen-OATH-2.0.1/
Authen-OATH-2.0.1/Changes
Authen-OATH-2.0.1/CONTRIBUTORS
Authen-OATH-2.0.1/cpanfile
Authen-OATH-2.0.1/dist.ini
Authen-OATH-2.0.1/INSTALL
Authen-OATH-2.0.1/lib/
Authen-OATH-2.0.1/LICENSE
Authen-OATH-2.0.1/Makefile.PL
Authen-OATH-2.0.1/MANIFEST
Authen-OATH-2.0.1/META.json
Authen-OATH-2.0.1/META.yml
Authen-OATH-2.0.1/README.md
Authen-OATH-2.0.1/stopwords
Authen-OATH-2.0.1/t/
Authen-OATH-2.0.1/t/00-load.t
Authen-OATH-2.0.1/t/01-cases.t
Authen-OATH-2.0.1/t/02-bignum.t
Authen-OATH-2.0.1/t/author-pod-coverage.t
Authen-OATH-2.0.1/t/author-pod-spell.t
Authen-OATH-2.0.1/t/author-synopsis.t
Authen-OATH-2.0.1/t/author-tidyall.t
Authen-OATH-2.0.1/t/manifest.t
Authen-OATH-2.0.1/t/pod-coverage.t
Authen-OATH-2.0.1/t/pod.t
Authen-OATH-2.0.1/t/release-cpan-changes.t
Authen-OATH-2.0.1/lib/Authen/
Authen-OATH-2.0.1/lib/Authen/OATH.pm

Compiling module

Executing /usr/bin/perl Makefile.PL && make …

Warning: prerequisite Moo 2.002004 not found.
Warning: prerequisite Types::Standard 0 not found.
Checking if your kit is complete…
Looks good
Writing Makefile for Authen::OATH
cp lib/Authen/OATH.pm blib/lib/Authen/OATH.pm
Manifying blib/man3/Authen::OATH.3pm

Testing module

Executing make test …

PERL_DL_NONLAZY=1 /usr/bin/perl “-MExtUtils::Command::MM” “-e” “test_harness(0, ‘blib/lib’, ‘blib/ar
ch’)” t/*.t
Can’t locate Test/More.pm in @INC (@INC contains: /tmp/.webmin/Authen-OATH-2.0.1/blib/lib /tmp/.webm
in/Authen-OATH-2.0.1/blib/arch /usr/libexec/webmin /usr/local/lib64/perl5 /usr/local/share/perl5 /us
r/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5) at t/00-lo
ad.t line 3.
BEGIN failed–compilation aborted at t/00-load.t line 3.
t/00-load.t …
Dubious, test returned 2 (wstat 512, 0x200)
No subtests run
Can’t locate Moo.pm in @INC (@INC contains: /tmp/.webmin/Authen-OATH-2.0.1/blib/lib /tmp/.webmin/Aut
hen-OATH-2.0.1/blib/arch /usr/libexec/webmin /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib6
4/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at /tmp/.webmi
n/Authen-OATH-2.0.1/blib/lib/Authen/OATH.pm line 8.
BEGIN failed–compilation aborted at /tmp/.webmin/Authen-OATH-2.0.1/blib/lib/Authen/OATH.pm line 8.
Compilation failed in require at t/01-cases.t line 6.
BEGIN failed–compilation aborted at t/01-cases.t line 6.
t/01-cases.t …
Dubious, test returned 2 (wstat 512, 0x200)
No subtests run
Can’t locate Moo.pm in @INC (@INC contains: /tmp/.webmin/Authen-OATH-2.0.1/blib/lib /tmp/.webmin/Aut
hen-OATH-2.0.1/blib/arch /usr/libexec/webmin /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib6
4/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at /tmp/.webmi
n/Authen-OATH-2.0.1/blib/lib/Authen/OATH.pm line 8.
BEGIN failed–compilation aborted at /tmp/.webmin/Authen-OATH-2.0.1/blib/lib/Authen/OATH.pm line 8.
Compilation failed in require at t/02-bignum.t line 19.
BEGIN failed–compilation aborted at t/02-bignum.t line 19.
t/02-bignum.t …
Dubious, test returned 2 (wstat 512, 0x200)
No subtests run
t/author-pod-coverage.t … skipped: these tests are for testing by the author
t/author-pod-spell.t … skipped: these tests are for testing by the author
t/author-synopsis.t … skipped: these tests are for testing by the author
t/author-tidyall.t … skipped: these tests are for testing by the author
Can’t locate Test/More.pm in @INC (@INC contains: /tmp/.webmin/Authen-OATH-2.0.1/blib/lib /tmp/.webm
in/Authen-OATH-2.0.1/blib/arch /usr/libexec/webmin /usr/local/lib64/perl5 /usr/local/share/perl5 /us
r/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5) at t/manif
est.t line 5.
BEGIN failed–compilation aborted at t/manifest.t line 5.
t/manifest.t …
Dubious, test returned 2 (wstat 512, 0x200)
No subtests run
Can’t locate Test/More.pm in @INC (@INC contains: /tmp/.webmin/Authen-OATH-2.0.1/blib/lib /tmp/.webm
in/Authen-OATH-2.0.1/blib/arch /usr/libexec/webmin /usr/local/lib64/perl5 /usr/local/share/perl5 /us
r/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at t/pod
-coverage.t line 3.
BEGIN failed–compilation aborted at t/pod-coverage.t line 3.
t/pod-coverage.t …
Dubious, test returned 2 (wstat 512, 0x200)
No subtests run
Can’t locate Test/More.pm in @INC (@INC contains: /tmp/.webmin/Authen-OATH-2.0.1/blib/lib /tmp/.webm
in/Authen-OATH-2.0.1/blib/arch /usr/libexec/webmin /usr/local/lib64/perl5 /usr/local/share/perl5 /us
r/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5) at t/pod.t
line 5.
BEGIN failed–compilation aborted at t/pod.t line 5.
t/pod.t …
Dubious, test returned 2 (wstat 512, 0x200)
No subtests run
t/release-cpan-changes.t … skipped: these tests are for release candidate testing

Test Summary Report

t/00-load.t (Wstat: 512 Tests: 0 Failed: 0)
Non-zero exit status: 2
Parse errors: No plan found in TAP output
t/01-cases.t (Wstat: 512 Tests: 0 Failed: 0)
Non-zero exit status: 2
Parse errors: No plan found in TAP output
t/02-bignum.t (Wstat: 512 Tests: 0 Failed: 0)
Non-zero exit status: 2
Parse errors: No plan found in TAP output
t/manifest.t (Wstat: 512 Tests: 0 Failed: 0)
Non-zero exit status: 2
Parse errors: No plan found in TAP output
t/pod-coverage.t (Wstat: 512 Tests: 0 Failed: 0)
Non-zero exit status: 2
Parse errors: No plan found in TAP output
t/pod.t (Wstat: 512 Tests: 0 Failed: 0)
Non-zero exit status: 2
Parse errors: No plan found in TAP output
Files=11, Tests=0, 0 wallclock secs ( 0.08 usr 0.04 sys + 0.21 cusr 0.07 csys = 0.40 CPU)
Result: FAIL
Failed 6/11 test programs. 0/0 subtests failed.
make: *** [test_dynamic] Error 255

Installation of Authen::OATH failed. Check the output above and try installing manually.
You can also install the module from CPAN with the command perl -MCPAN -e shell.

I guess there is away to use two-factor authentication wiht Google-Authenticator

Regards.