I have a Samba mount at home (behind NAT, accessible via wireguard VPN), which works very well when accessing my home files when traveling (I travel a lot for work).
The only detail missing from this solution is sharing individual files with friends. I could give them access to my VPN, but that gives them access to everything, not just one thing I want to share. Also not all my friends are that tech savvy to manage connecting to a VPN.
What would be really great is to have a link-generator that punches a hole in the NAT to give them access to specific files. Are there any self-hosted solutions for that?


There are a few implementations of wormhole that might work.
If you’re ok with exposing a server to the internet, I’ve had good luck with sharry. https://eikek.github.io/sharry/
I’ve also had good luck running a Nextcloud instance to share with friends and family. But that is probably overkill here.