The requested apache plugin does not appear to be installed

Please fill out the fields below so we can help you better. Note: you must provide your domain name to get help. Domain names for issued certificates are all made public in Certificate Transparency logs (e.g. https://crt.sh/?q=example.com), so withholding your domain name here does not increase secrecy, but only makes it harder for us to provide help.

My domain is: holidayshop.echo-inc.org

I ran this command: # certbot certonly --apache

It produced this output:
Saving debug log to /var/log/letsencrypt/letsencrypt.log
The requested apache plugin does not appear to be installed
Ask for help or search for solutions at https://community.letsencrypt.org. See the logfile /var/log/letsencrypt/letsencrypt.log or re-run Certbot with -v for more details.

My web server is (include version): ea-apache24-2.4.62-2.3.2.cpanel.x86_64

The operating system my web server runs on is (include version): AlmaLinux release 9.4 (Seafoam Ocelot)

My hosting provider, if applicable, is: bluehost

I can login to a root shell on my machine (yes or no, or I don't know): yes

I'm using a control panel to manage my site (no, or provide the name and version of the control panel): no

The version of my client is (e.g. output of certbot --version or certbot-auto --version if you're using Certbot): certbot 2.11.0

How did you install Certbot?

2 Likes

using the instructions listed here:

the failure occurred in step #7

cat /var/log/letsencrypt/letsencrypt.log

2024-09-05 11:47:55,118:DEBUG:certbot._internal.main:certbot version: 2.11.0
2024-09-05 11:47:55,118:DEBUG:certbot._internal.main:Location of certbot entry point: /usr/bin/certbot
2024-09-05 11:47:55,118:DEBUG:certbot._internal.main:Arguments: ['--apache']
2024-09-05 11:47:55,118:DEBUG:certbot._internal.main:Discovered plugins: PluginsRegistry(PluginEntryPoint#manual,PluginEntryPoint#null,PluginEntryPoint#standalone,PluginEntryPoint#webroot)
2024-09-05 11:47:55,126:DEBUG:certbot._internal.log:Root logging level set at 30
2024-09-05 11:47:55,126:DEBUG:certbot._internal.plugins.selection:Requested authenticator apache and installer apache
2024-09-05 11:47:55,126:DEBUG:certbot._internal.plugins.selection:No candidate plugin
2024-09-05 11:47:55,126:DEBUG:certbot._internal.plugins.selection:No candidate plugin
2024-09-05 11:47:55,126:DEBUG:certbot._internal.log:Exiting abnormally:
Traceback (most recent call last):
File "/usr/bin/certbot", line 8, in
sys.exit(main())
File "/opt/certbot/lib64/python3.9/site-packages/certbot/main.py", line 19, in main
return internal_main.main(cli_args)
File "/opt/certbot/lib64/python3.9/site-packages/certbot/_internal/main.py", line 1894, in main
return config.func(config, plugins)
File "/opt/certbot/lib64/python3.9/site-packages/certbot/_internal/main.py", line 1581, in certonly
installer, auth = plug_sel.choose_configurator_plugins(config, plugins, "certonly")
File "/opt/certbot/lib64/python3.9/site-packages/certbot/_internal/plugins/selection.py", line 256, in choose_configurator_plugins
diagnose_configurator_problem("authenticator", req_auth, plugins)
File "/opt/certbot/lib64/python3.9/site-packages/certbot/_internal/plugins/selection.py", line 374, in diagnose_configurator_problem
raise errors.PluginSelectionError(msg)
certbot.errors.PluginSelectionError: The requested apache plugin does not appear to be installed
2024-09-05 11:47:55,127:ERROR:certbot._internal.log:The requested apache plugin does not appear to be installed

Ah yes, there apparently is a "bug" in the pip instruction generator. It actually does not instruct to install the actual Apache authenticator plugin. See also Missing dependency in certbot instructions · Issue #9998 · certbot/certbot · GitHub where this bug was reported a few days ago.

You should install the plugin by running:

sudo /opt/certbot/bin/pip install certbot-apache

(Assuming you've used the path /opt/certbot/ as instructed in the Certbot instructions, otherwise you need to modify the path in the command above.)

4 Likes

/opt/certbot/bin/pip install certbot-apache

Collecting certbot-apache
Downloading certbot_apache-2.11.0-py3-none-any.whl.metadata (1.5 kB)
Requirement already satisfied: acme>=2.11.0 in /opt/certbot/lib/python3.9/site-packages (from certbot-apache) (2.11.0)
Requirement already satisfied: certbot>=2.11.0 in /opt/certbot/lib/python3.9/site-packages (from certbot-apache) (2.11.0)
Collecting python-augeas (from certbot-apache)
Downloading python-augeas-1.1.0.tar.gz (93 kB)
Installing build dependencies ... done
Getting requirements to build wheel ... done
Installing backend dependencies ... done
Preparing metadata (pyproject.toml) ... error
error: subprocess-exited-with-error

× Preparing metadata (pyproject.toml) did not run successfully.
│ exit code: 1
╰─> [39 lines of output]
/tmp/pip-build-env-_6jaca7z/overlay/lib/python3.9/site-packages/setuptools/_distutils/dist.py:261: UserWarning: Unknown distribution option: 'test_suite'
warnings.warn(msg)
Traceback (most recent call last):
File "/opt/certbot/lib64/python3.9/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in
main()
File "/opt/certbot/lib64/python3.9/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main
json_out['return_val'] = hook(**hook_input['kwargs'])
File "/opt/certbot/lib64/python3.9/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 149, in prepare_metadata_for_build_wheel
return hook(metadata_directory, config_settings)
File "/tmp/pip-build-env-_6jaca7z/overlay/lib/python3.9/site-packages/setuptools/build_meta.py", line 373, in prepare_metadata_for_build_wheel
self.run_setup()
File "/tmp/pip-build-env-_6jaca7z/overlay/lib/python3.9/site-packages/setuptools/build_meta.py", line 503, in run_setup
super().run_setup(setup_script=setup_script)
File "/tmp/pip-build-env-_6jaca7z/overlay/lib/python3.9/site-packages/setuptools/build_meta.py", line 318, in run_setup
exec(code, locals())
File "", line 16, in
File "/tmp/pip-build-env-_6jaca7z/overlay/lib/python3.9/site-packages/setuptools/init.py", line 117, in setup
return distutils.core.setup(**attrs)
File "/tmp/pip-build-env-_6jaca7z/overlay/lib/python3.9/site-packages/setuptools/_distutils/core.py", line 146, in setup
_setup_distribution = dist = klass(attrs)
File "/tmp/pip-build-env-_6jaca7z/overlay/lib/python3.9/site-packages/setuptools/dist.py", line 283, in init
_Distribution.init(self, dist_attrs)
File "/tmp/pip-build-env-_6jaca7z/overlay/lib/python3.9/site-packages/setuptools/_distutils/dist.py", line 279, in init
self.finalize_options()
File "/tmp/pip-build-env-_6jaca7z/overlay/lib/python3.9/site-packages/setuptools/dist.py", line 635, in finalize_options
ep(self)
File "/tmp/pip-build-env-_6jaca7z/overlay/lib/python3.9/site-packages/setuptools/dist.py", line 655, in _finalize_setup_keywords
ep.load()(self, ep.name, value)
File "/tmp/pip-build-env-_6jaca7z/normal/lib64/python3.9/site-packages/cffi/setuptools_ext.py", line 216, in cffi_modules
add_cffi_module(dist, cffi_module)
File "/tmp/pip-build-env-_6jaca7z/normal/lib64/python3.9/site-packages/cffi/setuptools_ext.py", line 49, in add_cffi_module
execfile(build_file_name, mod_vars)
File "/tmp/pip-build-env-_6jaca7z/normal/lib64/python3.9/site-packages/cffi/setuptools_ext.py", line 25, in execfile
exec(code, glob, glob)
File "augeas/ffi.py", line 3, in
ffi = FFI()
File "/tmp/pip-build-env-_6jaca7z/normal/lib64/python3.9/site-packages/cffi/api.py", line 48, in init
import _cffi_backend as backend
ImportError: /tmp/pip-build-env-_6jaca7z/normal/lib64/python3.9/site-packages/_cffi_backend.cpython-39-x86_64-linux-gnu.so: failed to map segment from shared object
[end of output]

note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

× Encountered error while generating package metadata.
╰─> See above for output.

note: This is an issue with the package mentioned above, not pip.
hint: See above for details.

That's a weird error I've never seen before. Not sure how to fix it. Google suggests some things like SELinux or /tmp/ not being able to have executable files.

Alternatively you can forget about the --apache plugin and use the --webroot authenticator and install the certificate into Apache manually.

1 Like

SELinux is disabled. Not sure about /tmp not being able to have executable files. I can install the certificate into Apache manually.

Is this what you're implying that I run?

certbot certonly --webroot

For example. You can add more options to the command line or let Certbot ask the questions so you can answer them. See User Guide — Certbot 2.11.0 documentation for the webroot documentation for example.

1 Like

I used this:

https://eff-certbot.readthedocs.io/en/stable/using.html#webroot

I'm all good now I think. It's downloaded the certs to the machine. Now its on to the .conf file to configure.

2 Likes

Yeah, that's the same link :stuck_out_tongue:

1 Like