Issue using certbot with nginx

I'm actually working on a webapp, I use Reactjs for the frontend and Golang for the backend. Those 2 programs are hosted separately on 2 VMs on Google-Compute-Engine. I want to serve my app through https so I choose to use Nginx for serving the frontend in production. Firstly I made my config file for Nginx:

#version: nginx/1.14.0 (ubuntu) server { listen 80 default_server; listen [::]:80 default_server; root /var/www/banshee; server_name XX.XXX.XX.XXX; #public IP of my frontend VM index index.html; location / { try_files $uri /index.html =404; } } 

For this part everything works as expected but after that I want to serve my App over https following this tutorial. I installed the packages software-properties-common,python-certbot-apache and certbot but when I tried

sudo cerbot --nginx certonly

I get the following message:

gdes@frontend:/etc/nginx$ sudo certbot --nginx certonly Saving debug log to /var/log/letsencrypt/letsencrypt.log Could not choose appropriate plugin: The requested nginx plugin does not appear to be installed The requested nginx plugin does not appear to be installed 

I made some searches on Google and here and I still can't figure out which plugin is missing or an other way to fix this.

Does someone have an idea tohelp me ?

Thanks a lot :)

1

5 Answers

I was trying to create Let's Encrypt certificate using certbot for my sub-domain and had the following issue. Command:

ubuntu@localhost:~$ certbot --nginx -d my_subdomain.website.com -d my_subdomain2.website.com

Issue:

The requested Nginx plugin does not appear to be installed

Solution:

Ubuntu 20+

ubuntu@localhost:~$ sudo apt-get install python3-certbot-nginx

Earlier Versions

ubuntu@localhost:~$ sudo apt-get install python-certbot-nginx

3

You will need to replace

apt install python-certbot-nginx 

by

apt install python3-certbot-nginx 
0

You can install the Certbot nginx plugin with the following commands:

add-apt-repository ppa:certbot/certbot apt update apt install python-certbot-nginx 
2

You have to re-install a python3 version of Lets Encrypt's certbot.

Run

sudo apt-get install python3-certbot-nginx 

On Debian 10, certbot returns a "could not find a usable nginx binary" issue because, "/usr/sbin" is missing from the PATH. Add /usr/sbin to the PATH

export PATH=/usr/sbin:$PATH 

Then certbot can make a certificate for nginx

certbot --nginx -d <server name> --post-hook "/usr/sbin/service nginx restart" 

As explained on the debian wiki page for letsencrypt.

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

You Might Also Like