This commit is contained in:
Kris Lamoureux 2022-05-21 01:27:40 -04:00
parent cd11567164
commit 544111a7dd
6 changed files with 76 additions and 0 deletions

View File

@ -5,6 +5,7 @@
- host_vars/bitwarden.yml
roles:
- base
- proxy
- docker
- traefik
- bitwarden

View File

@ -13,6 +13,9 @@ traefik_domain: traefik.vm.krislamo.org
traefik_auth: admin:$apr1$T1l.BCFz$Jyg8msXYEAUi3LLH39I9d1 # admin:admin
#traefik_acme_email: realemail@example.com # Let's Encrypt settings
#traefik_production: true
traefik_ports:
- "8000:80"
- "4430:443"
# bitwarden
# Get Installation ID & Key at https://bitwarden.com/host/

1
roles/.gitignore vendored
View File

@ -11,6 +11,7 @@
!nextcloud*/
!nginx*/
!prometheus*/
!proxy*/
!rsnapshot*/
!traefik*/
!unifi*/

View File

@ -0,0 +1,5 @@
- name: Reload nginx
service:
name: nginx
state: reloaded
listen: reload_nginx

View File

@ -0,0 +1,27 @@
- name: Install nginx
apt:
name: nginx
state: present
update_cache: true
- name: Install nginx configuration
template:
src: nginx.conf.j2
dest: /etc/nginx/nginx.conf
mode: '0644'
notify: reload_nginx
- name: Generate self-signed certificate
shell: 'openssl req -newkey rsa:4096 -x509 -sha256 -days 3650 -nodes \
-subj "/C=US/ST=Local/L=Local/O=Org/OU=IT/CN=example.com" \
-keyout /etc/ssl/private/nginx-selfsigned.key \
-out /etc/ssl/certs/nginx-selfsigned.crt'
args:
creates: /etc/ssl/certs/nginx-selfsigned.crt
notify: reload_nginx
- name: Start nginx and enable on boot
service:
name: nginx
state: started
enabled: true

View File

@ -0,0 +1,39 @@
user www-data;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;
include /etc/nginx/modules-enabled/*.conf;
events {
worker_connections 1024;
}
http {
include /etc/nginx/mime.types;
include /etc/nginx/conf.d/*.conf;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] $status '
'"$request" $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
server_tokens off;
sendfile on;
tcp_nopush on;
keepalive_timeout 65;
server_names_hash_bucket_size 128;
server {
listen 443 ssl;
server_name traefik.vm.krislamo.org vault.vm.krislamo.org;
access_log /var/log/nginx/vault.vm.krislamo.org.log main;
ssl_certificate /etc/ssl/certs/nginx-selfsigned.crt;
ssl_certificate_key /etc/ssl/private/nginx-selfsigned.key;
location / {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_pass http://127.0.0.1:8080;
}
}
}