This commit is contained in:
bee
2026-04-27 15:07:54 +02:00
commit 56d73c7c6f
34 changed files with 2295 additions and 0 deletions
Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

+16
View File
@@ -0,0 +1,16 @@
<!DOCTYPE html>
<html>
<head>
<title>Secretbee</title>
<link rel="icon" type="image/x-icon" href="/icon.ico">
</head>
<body>
<p><img src="https://secretbee.buzz/icon.png" alt="bee" width="128" height="128" /></p>
<p>Welcome to the hive.</p>
<p>Available services:</p>
<p>&nbsp;</p>
<h1><strong>irc</strong></h1>
<p>Grab yourself an irc client (for example <a href="https://www.mirc.com/">mirc</a>) and connect to irc.secretbee.buzz and port 6697.</p>
<p>All traffic is encrypted and secured.</p>
</body>
</html>
+26
View File
@@ -0,0 +1,26 @@
- name: Nginx
hosts: pi
become: true
tasks:
- name: Install nginx
ansible.builtin.apt:
name: nginx
state: present
- name: Delete default
ansible.builtin.file:
path: /etc/nginx/sites-enabled/default
state: absent
- name: Copy sites
ansible.builtin.copy:
src: sites-enabled/
dest: /etc/nginx/sites-enabled/
owner: root
group: root
mode: '0644'
- name: Restart nginx
ansible.builtin.service:
name: nginx
state: restarted
@@ -0,0 +1,32 @@
## Redirect all HTTP traffic to HTTPS
server {
listen 80;
server_name git.secretbee.buzz;
location / {
return 301 https://$host$request_uri;
}
}
server {
listen 443 ssl;
server_name git.secretbee.buzz;
add_header Strict-Transport-Security "max-age=31536000" always;
ssl_certificate /etc/letsencrypt/live/git.secretbee.buzz/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/git.secretbee.buzz/privkey.pem;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers HIGH:!aNULL:!MD5;
location / {
client_max_body_size 512M;
proxy_pass http://localhost:3000;
proxy_set_header Connection $http_connection;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
@@ -0,0 +1,42 @@
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}
upstream grafana {
server localhost:4000;
}
server {
listen 80;
server_name grafana.secretbee.buzz;
location / {
return 301 https://$host$request_uri;
}
}
server {
listen 443;
server_name grafana.secretbee.buzz;
add_header Strict-Transport-Security "max-age=31536000" always;
ssl_certificate /etc/letsencrypt/live/grafana.secretbee.buzz/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/grafana.secretbee.buzz/privkey.pem;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers HIGH:!aNULL:!MD5;
location / {
proxy_set_header Host $host;
proxy_pass http://localhost:4000;
}
location /api/live/ {
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
proxy_set_header Host $host;
proxy_pass http://localhost:4000;
}
}
@@ -0,0 +1,36 @@
## Redirect all HTTP traffic to HTTPS
server {
listen 80;
server_name lounge.secretbee.buzz;
location / {
return 301 https://$host$request_uri;
}
}
server {
listen 443 ssl;
server_name lounge.secretbee.buzz;
add_header Strict-Transport-Security "max-age=31536000" always;
ssl_certificate /etc/letsencrypt/live/lounge.secretbee.buzz/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/lounge.secretbee.buzz/privkey.pem;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers HIGH:!aNULL:!MD5;
location / {
proxy_pass http://127.0.0.1:9000/;
proxy_http_version 1.1;
proxy_set_header Connection "upgrade";
proxy_set_header Upgrade $http_upgrade;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_read_timeout 1d;
}
location /folder/ {
proxy_pass http://127.0.0.1:9000/uploads/;
proxy_set_header X-Forwarded-For $remote_addr;
}
}
@@ -0,0 +1,32 @@
limit_req_zone $binary_remote_addr zone=mylimit:10m rate=10r/s;
server {
listen 80 default_server;
server_name secretbee.buzz;
limit_req zone=mylimit burst=20;
location / {
return 301 https://$host$request_uri;
}
}
server {
listen 443 ssl;
server_name secretbee.buzz;
limit_req zone=mylimit burst=20;
root /var/www;
add_header Strict-Transport-Security "max-age=31536000" always;
ssl_certificate /etc/letsencrypt/live/secretbee.buzz/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/secretbee.buzz/privkey.pem;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers HIGH:!aNULL:!MD5;
location / {
default_type "text/html";
try_files $uri $uri.html $uri/index.html index.html;
}
}