mirror of
https://gitlab.com/futile/thingy.git
synced 2026-07-21 08:10:07 +00:00
1268d49031e0ec8192726448317ba486cce0281f
thingy!
some kind of hosting setup
setup
- log into the vps, make sure it's fedora (or else 🔪)
- create a new admin user
sudo useradd -m -G wheel adminsudo passwd adminsudo su - admin
- use the system setup script, and log out
sudo dnf install git -ygit clone https://gitlab.com/futile/thingy./thingy/scripts/system-setup.shexit
- log in again, populate the
.envand start everything upcd thingymicro .envdocker compose up
- continue with service-specific setups .....
services
specifics for everything
currently serving
- via docker
- caddy – http server & reverse proxy
- stalwart – mailserver
- bulwark – webmail
- via caddy
mail.yaoi.dog– mail (server & admin dash)post.yaoi.dog– mail (webmail)
dns setup
| type | host | value | notes |
|---|---|---|---|
A |
@ |
<ip> |
apex domain |
A |
mail |
<ip> |
mailserver |
A |
post |
<ip> |
webmail |
CAA |
@ |
0 issue "letsencrypt.org" |
allow caddy to issue certs |
stalwart
first setup
- server identity
- server hostname:
mail.yaoi.dog - default email domain:
yaoi.dog - automatically obtain tls certificate:
true - generate email signing keys:
true
- server hostname:
- storage
- main data storage:
rocksdb - path:
/var/lib/stalwart/
- main data storage:
- account directory
- directory type:
use internal
- directory type:
- logging
- log destination:
console
- log destination:
- automatic dns management
- dns server type:
porkbun - description:
porkbun
- dns server type:
further setup
- settings -> security -> allowed ips
- added
172.18.0.0/24; reason:internal
- added
- settings -> network -> http -> security
- permissive cors policy:
true[restart needed]
- permissive cors policy:
useful links
- https://stalw.art/docs
- https://testconnectivity.microsoft.com/tests/Imap/input
- https://mail-tester.com
bulwark
useful links
backups
- backups are done with vykar to borgbase
- if on a new borgbase repo, run
vykar initfirst - to back up automatically, run
sudo EDITOR=micro crontab -eand add the following:TZ=UTC 0 * * * * /home/admin/thingy/scripts/volume-backup.sh
todo
- further secure the server (ratelimiting, hardening...)
- more services
- forgejo (need to change host ssh port to 2222)
- vaultwarden
- tie all services together with an sso (like voidauth)
Languages
Shell
100%