You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
258 lines
11 KiB
258 lines
11 KiB
{
|
|
admin off
|
|
}
|
|
|
|
www.allthingsbytes.com allthingsbytes.com {
|
|
tls /var/lib/caddy/ssl/allthingsbytes.pem /var/lib/caddy/ssl/allthingsbytes-key.pem {
|
|
protocols tls1.2 tls1.3
|
|
ciphers TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256
|
|
client_auth {
|
|
mode require_and_verify
|
|
trusted_ca_cert_file /var/lib/caddy/cloudflare-mtls.crt
|
|
}
|
|
}
|
|
redir * https://technerdonline.com{uri}
|
|
}
|
|
|
|
www.allyourbytearebelongtous.com allyourbytearebelongtous.com {
|
|
tls /var/lib/caddy/ssl/allyourbytearebelongtous.pem /var/lib/caddy/ssl/allyourbytearebelongtous-key.pem {
|
|
protocols tls1.2 tls1.3
|
|
ciphers TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256
|
|
client_auth {
|
|
mode require_and_verify
|
|
trusted_ca_cert_file /var/lib/caddy/cloudflare-mtls.crt
|
|
}
|
|
}
|
|
redir * https://technerdonline.com{uri}
|
|
}
|
|
|
|
www.technerdonline.net technerdonline.net {
|
|
tls /var/lib/caddy/ssl/cert-net.pem /var/lib/caddy/ssl/cert-net-key.pem {
|
|
protocols tls1.2 tls1.3
|
|
ciphers TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256
|
|
client_auth {
|
|
mode require_and_verify
|
|
trusted_ca_cert_file /var/lib/caddy/cloudflare-mtls.crt
|
|
}
|
|
}
|
|
redir * https://technerdonline.com{uri}
|
|
}
|
|
|
|
www.technerdonline.com {
|
|
tls /var/lib/caddy/ssl/cert.pem /var/lib/caddy/ssl/key.pem {
|
|
protocols tls1.2 tls1.3
|
|
ciphers TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256
|
|
client_auth {
|
|
mode require_and_verify
|
|
trusted_ca_cert_file /var/lib/caddy/cloudflare-mtls.crt
|
|
}
|
|
}
|
|
@www host www.technerdonline.com
|
|
redir @www https://technerdonline.com{uri}
|
|
}
|
|
|
|
technerdonline.com {
|
|
log {
|
|
output file /var/log/caddy/access.log {
|
|
roll true # Rotate logs, enabled by default
|
|
roll_size_mb 5 # Set max size 5 MB
|
|
roll_gzip true # Whether to compress rolled files
|
|
roll_local_time true # Use localhost time
|
|
roll_keep 2 # Keep at most 2 log files
|
|
roll_keep_days 7 # Keep log files for 7 days
|
|
}
|
|
}
|
|
|
|
tls /var/lib/caddy/ssl/cert.pem /var/lib/caddy/ssl/key.pem {
|
|
protocols tls1.2 tls1.3
|
|
ciphers TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256
|
|
client_auth {
|
|
mode require_and_verify
|
|
trusted_ca_cert_file /var/lib/caddy/cloudflare-mtls.crt
|
|
}
|
|
}
|
|
@http {
|
|
protocol http
|
|
}
|
|
redir @http https://technerdonline.com{uri} permanent
|
|
|
|
@static {
|
|
file
|
|
path *.ico *.css *.js *.gif *.jpg *.jpeg *.png *.svg *.woff
|
|
}
|
|
header @static {
|
|
Cache-Control "public, max-age=2592000"
|
|
defer
|
|
}
|
|
|
|
@notstatic {
|
|
file
|
|
not path *.ico *.css *.js *.gif *.jpg *.jpeg *.png *.svg *.woff
|
|
}
|
|
header @notstatic {
|
|
Cache-Control "no-cache, no-store"
|
|
Pragma "no-cache"
|
|
}
|
|
|
|
header {
|
|
Strict-Transport-Security "max-age=31536000; includeSubDomains; preload"
|
|
X-XSS-Protection "1; mode=block"
|
|
X-Content-Type-Options "nosniff"
|
|
X-Frame-Options "SAMEORIGIN"
|
|
Feature-Policy "accelerometer 'none';ambient-light-sensor 'none'; autoplay 'none';camera 'none';encrypted-media 'none';focus-without-user-activation 'none'; geolocation 'none';gyroscope 'none';magnetometer 'none';microphone 'none';midi 'none';payment 'none';picture-in-picture 'self'; speaker 'none';sync-xhr 'none';usb 'none';vr 'none';"
|
|
Referrer-Policy "no-referrer"
|
|
Content-Security-Policy "upgrade-insecure-requests"
|
|
Expect-CT "max-age=604800"
|
|
-Server
|
|
}
|
|
|
|
handle {
|
|
encode zstd gzip
|
|
root * /usr/share/caddy/public
|
|
try_files {path} {path}/index.html
|
|
file_server
|
|
}
|
|
|
|
handle_errors {
|
|
rewrite * /{http.error.status_code}.html
|
|
file_server
|
|
}
|
|
}
|
|
|
|
git.technerdonline.com {
|
|
log {
|
|
output file /var/log/caddy/access.log {
|
|
roll true # Rotate logs, enabled by default
|
|
roll_size_mb 5 # Set max size 5 MB
|
|
roll_gzip true # Whether to compress rolled files
|
|
roll_local_time true # Use localhost time
|
|
roll_keep 2 # Keep at most 2 log files
|
|
roll_keep_days 7 # Keep log files for 7 days
|
|
}
|
|
}
|
|
|
|
tls /var/lib/caddy/ssl/cert.pem /var/lib/caddy/ssl/key.pem {
|
|
protocols tls1.2 tls1.3
|
|
ciphers TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256
|
|
client_auth {
|
|
mode require_and_verify
|
|
trusted_ca_cert_file /var/lib/caddy/cloudflare-mtls.crt
|
|
}
|
|
}
|
|
@http {
|
|
protocol http
|
|
}
|
|
redir @http https://git.technerdonline.com{uri}
|
|
|
|
header {
|
|
Strict-Transport-Security "max-age=31536000; includeSubDomains"
|
|
X-XSS-Protection "1; mode=block"
|
|
X-Content-Type-Options "nosniff"
|
|
X-Frame-Options "SAMEORIGIN"
|
|
Feature-Policy "accelerometer 'none';ambient-light-sensor 'none'; autoplay 'none';camera 'none';encrypted-media 'none';focus-without-user-activation 'none'; geolocation 'none';gyroscope 'none';magnetometer 'none';microphone 'none';midi 'none';payment 'none';picture-in-picture 'self'; speaker 'none';sync-xhr 'none';usb 'none';vr 'none';"
|
|
Referrer-Policy "no-referrer"
|
|
Content-Security-Policy "upgrade-insecure-requests"
|
|
Expect-CT "max-age=604800"
|
|
-Server
|
|
}
|
|
|
|
handle {
|
|
encode zstd gzip
|
|
|
|
reverse_proxy localhost:3000 {
|
|
header_up Host {host}
|
|
#header_up X-Real-IP {CF-Connecting-IP}
|
|
#header_up X-Forwarded-For {CF-Connecting-IP}
|
|
header_up X-Forwarded-Port {http.request.port}
|
|
header_up X-Forwarded-Proto {http.request.scheme}
|
|
header_up X-Forwarded-TlsProto {tls_protocol}
|
|
header_up X-Forwarded-TlsCipher {tls_cipher}
|
|
header_up X-Forwarded-HttpsProto {proto}
|
|
}
|
|
}
|
|
}
|
|
|
|
element.technerdonline.com {
|
|
log {
|
|
output file /var/log/caddy/access.log {
|
|
roll true # Rotate logs, enabled by default
|
|
roll_size_mb 5 # Set max size 5 MB
|
|
roll_gzip true # Whether to compress rolled files
|
|
roll_local_time true # Use localhost time
|
|
roll_keep 2 # Keep at most 2 log files
|
|
roll_keep_days 7 # Keep log files for 7 days
|
|
}
|
|
}
|
|
|
|
tls /var/lib/caddy/ssl/cert.pem /var/lib/caddy/ssl/key.pem {
|
|
protocols tls1.2 tls1.3
|
|
ciphers TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256
|
|
client_auth {
|
|
mode require_and_verify
|
|
trusted_ca_cert_file /var/lib/caddy/cloudflare-mtls.crt
|
|
}
|
|
}
|
|
@http {
|
|
protocol http
|
|
}
|
|
redir @http https://element.technerdonline.com{uri}
|
|
|
|
@static {
|
|
not path /config.*.json
|
|
not path /i18n
|
|
not path /home
|
|
not path /sites
|
|
not path /index.html
|
|
}
|
|
header @static {
|
|
Cache-Control "public, max-age=2592000"
|
|
defer
|
|
}
|
|
|
|
@notstatic {
|
|
path /config.*.json
|
|
path /i18n
|
|
path /home
|
|
path /sites
|
|
path /index.html
|
|
}
|
|
header @notstatic {
|
|
Cache-Control "no-cache, no-store"
|
|
X-Robots-Tag "noindex, noarchive, nofollow"
|
|
Pragma "no-cache"
|
|
}
|
|
|
|
@blocked {
|
|
path /media/customer/* /media/downloadable/* /media/import/* /media/custom_options/* /errors/*
|
|
}
|
|
respond @blocked 403
|
|
|
|
@notfound {
|
|
path_regexp reg_notfound \/\..*$|\/errors\/.*\.xml$|theme_customization\/.*\.xml
|
|
}
|
|
respond @notfound 404
|
|
|
|
header {
|
|
Strict-Transport-Security "max-age=31536000; includeSubDomains"
|
|
X-XSS-Protection "1; mode=block"
|
|
X-Content-Type-Options "nosniff"
|
|
X-Frame-Options "SAMEORIGIN"
|
|
Feature-Policy "accelerometer 'none';ambient-light-sensor 'none'; autoplay 'none';camera 'self';encrypted-media 'self';focus-without-user-activation 'none'; geolocation 'none';gyroscope 'none';magnetometer 'none';microphone 'self';midi 'none';payment 'none';picture-in-picture 'self'; speaker 'self';sync-xhr 'none';usb 'none';vr 'none';"
|
|
Referrer-Policy "no-referrer"
|
|
Content-Security-Policy "upgrade-insecure-requests"
|
|
Expect-CT "max-age=604800"
|
|
-Server
|
|
}
|
|
|
|
handle {
|
|
encode zstd gzip
|
|
root * /usr/share/caddy/element
|
|
try_files {path} {path}/index.html
|
|
file_server
|
|
}
|
|
|
|
handle_errors {
|
|
rewrite * /{http.error.status_code}.html
|
|
file_server
|
|
}
|
|
}
|
|
|