645ec05164
commit messages by http://whatthecommit.com
78 lines
1.6 KiB
Markdown
78 lines
1.6 KiB
Markdown
# what is this?
|
|
|
|
to play with cookies
|
|
|
|
this serves a nginx server on port 8443
|
|
|
|
# how to use?
|
|
|
|
## set up dns
|
|
|
|
> [!CAUTION]
|
|
> you want to change your `/etc/hosts` (on \*nix; requires root)
|
|
|
|
```
|
|
# /etc/hosts
|
|
127.0.0.1 website.com a.website.com b.website.com sub.a.website.com
|
|
```
|
|
|
|
the nginx config has these domains hardcoded. change them too if you want
|
|
|
|
## set up tls
|
|
|
|
run `make setup-tls`
|
|
|
|
you don't have `make`? well install it.
|
|
|
|
you don't have `openssl`? what insane operating system are you on? get openssl too.
|
|
|
|
|
|
## change the cookie attributes
|
|
|
|
to add attributes, modify the file `cookieattr`
|
|
```
|
|
# cookieattr
|
|
set $cookie_attr 'Secure; Domain=a.host.com; HttpOnly;';
|
|
```
|
|
note that the `;` at the end is the line terminator for nginx config and is necessary
|
|
|
|
## start the server
|
|
|
|
### with compose
|
|
|
|
```console
|
|
$ docker compose up -d
|
|
$ docker compose exec cookies nginx -s reload
|
|
$ # or create a make/just target to do that
|
|
```
|
|
|
|
### with podman
|
|
|
|
```console
|
|
$ just container
|
|
$ # now you mess around with cookieattr
|
|
$ # you look at https://a.website.com https://b.website.com https://sub.a.website.com
|
|
$ # you can tell you need to tell your browser you want a taste of danger
|
|
$ just reload
|
|
$ # ^ do that when you make changes to config
|
|
```
|
|
|
|
# what if sth doesn't work?
|
|
|
|
## using podman?
|
|
give the nginx (sub)user access to the tls directory
|
|
```console
|
|
$ podman unshare setfacl -Rmu:101:rX tls/
|
|
```
|
|
|
|
## using docker?
|
|
might be the `:z` label in the `volumes` in `docker-compose.yml`. remove it.
|
|
e.g.
|
|
```
|
|
- ./tls:/etc/nginx/tls:ro
|
|
```
|
|
|
|
## using macOS?
|
|
make is angry with you? you're on your own for this one. just read the commands and run them directly
|
|
|