freakalicious# cat relayd.conf
log state changes
log connection errors
prefork 5
table <httpd> { 127.0.0.1 }
table <radicale> { 127.0.0.1 }
http protocol "https" {
tls keypair "freakalicious.us"
return error
match request header set "X-Forwarded-For" value "$REMOTE_ADDR"
match request header set "X-Forwarded-By" value "$SERVER_ADDR:$SERVER_PORT"
# test in https://securityheaders.com
match response header remove "Server"
match response header append "Strict-Transport-Security" value "max-age=31536000"
match response header append "X-Frame-Options" value "SAMEORIGIN"
match response header append "X-XSS-Protection" value "1; mode=block"
match response header append "X-Content-Type-Options" value "nosniff"
match response header append "Referrer-Policy" value "strict-origin"
match response header append "Content-Security-Policy" value "default-src https: 'unsafe-inline'"
match response header append "Permissions-Policy" value "accelerometer=(none), camera=(none), geolocation=(none), gyroscope=(none), magnetometer=(none), microphone=(none), payment=(none), usb=(none)"
pass request quick header "Host" value "freakalicious.us" forward to <httpd>
pass request quick header "Host" value "dav.freakalicious.us" forward to <radicale>
}
relay "https" {
listen on 0.0.0.0 port 443 tls
protocol https
forward to <httpd> port 8080
forward to <radicale> port 5232
}
I did find this which looks to fit this situation better
See the section about
However, there was one small issue, my SSL Labs score was now capped at a B, with the following explanatory message:
This server’s certificate chain is incomplete. Grade capped to B
No bueno, what to do? After some googling I found this blog post which pointed me in the right direction: relayd looks for certificate chains in /etc/ssl/private/name:port.key and /etc/ssl/name:port.crt, falling back to /etc/ssl/private/name.key and /etc/ssl/name.crt respectively. My original acme-client.conf did save the full chain with a .pem extension, whereas the .crt file only contained the certificate for the specific domain. There probably would have been more elegant ways to solve this, but the easiest solution was to just store the full chain in the .crt file as mentioned above: domain full chain certificate "/etc/ssl/citizen428.net.crt"
Back to Me: In your case, in this last line for domain full chain certificate use the path and name to the fullchain.pem your ACME Client created.