nginx/README.md
2026-02-10 10:49:35 +01:00

3.6 KiB

Pedagogic html static file server

Note

This is a complete Ansible playbook to configure Nginx with basic authentication using htpasswd.
This playbook installs Nginx, configures a static website, and secures access with basic authentication.

Steps:.
\

  • Installation of Nginx: The playbook installs Nginx and ensures it is started and enabled.\
  • Creation of the website directory: A directory is created to host the website files.\
  • Creation of a simple homepage: A simple HTML page is created for the website.\
  • Installation of apache2-utils: This package is necessary to use the htpasswd command.\
  • Creation of the htpasswd file: A .htpasswd file is created with a username and password.\
  • Configuration of the Nginx site: The nginx_site.conf.j2 template is used to configure Nginx with basic authentication.\
  • Activation of the Nginx site: The site is enabled by creating a symbolic link in the sites-enabled directory.\
  • Testing the Nginx configuration: The Nginx configuration is tested before restarting the service.\
  • Restarting Nginx: Nginx is restarted to apply the changes.
    Path: nginx
Variable Description
nginx.domain_name
domainname mandatory
Domain name.
Validator: type domainname
Example: exemple.fr
nginx.email
mail mandatory
Email for the domain name.
This is for certbot.
Example: contact@exemple.fr
nginx.htpasswd_file
UNIX filename mandatory
Htpassword file.
Validator: file type allowed: "file"
Default: /etc/nginx/.htpasswd

Nginx authenticated user credentials

Note

This family contains lists of variable blocks.
Path: nginx.users

Variable Description
nginx.users.username
UNIX user multiple mandatory unique
Nginx user.
nginx.users.password
secret mandatory
Nginx password.