# Stashbox Simple and secure application to host files directly from a filesystem. I recommend setting up a ZFS fileserver and backups to complete a secure, reliable cloud storage system. Designed for IPv6 but includes an extra haproxy config to handle single-stream legacy IP traffic. You will likely need legacy IP if you are using Plex. Configuration includes references to route some traffic to `app.stashbox`, which is defined as a docker-compose app in the companion repo `stashbox-app`. ## Components #### Taskfile.yml - Operations and deployment script library. #### System Configs Example FreeBSD system configs to support this service. `hosts.dist` `rc.conf.dist` `envvars.dist` #### HTTPd - Serve filesystem using file index module with custom interface and Letsencrypt. `httpd.conf.dist` - Configuration to listen on web.stashbox https. - Domain names must be explicitly set here for Letsencrypt. `htaccess` - Custom root .htaccess based on apaxy to enhance Apache file index module. `theme` - Style and pages for the Apache file index based. #### Nginx - Forward http traffic on plex.stashbox interface to plexmediaserver backend. #### HAproxy - Listen on legacy IP interface and forward traffic to appropriate system. - Useful to handle traffic from a port-forwarded legacy route with a single external IP. #### DNS Terraform - DNS record management using Namecheap provider. ## References full breakdown of the mod_autoindex module: - http://apache.org/docs/2.4/mod/mod_autoindex.html official media types list from IANA - https://www.iana.org/assignments/media-types/media-types.xhtml media types included in apache - https://svn.apache.org/repos/asf/httpd/httpd/trunk/docs/conf/mime.types