These are some quick n’ dirty instructions so people can get up and running fast.
I wish I had known this was possible sooner.
Instructions:
Check that your VPN supports port forwarding and you have it enabled.
Grab your VPN’s internal IP with ip a
Find the interface for your VPN. For me it’s called tun0.
Open up /etc/nginx/nginx.conf
You can back it up, or comment everything out, or pick what’s necessary. Here’s what my file looks like.
worker_processes 1;
include modules.d/*.conf;
events {
worker_connections 1024;
}
http {
server {
listen [VPN INTERNAL IP]:[VPN FORWARDED PORT];
server_name localhost;
location / {
root '[ABSOLUTE PATH TO YOUR WEBSITE ROOT FOLDER]';
index index.html; # Relative to your website root.
}
}
}
Make sure your permissions are correct. For me, the ‘other’ group needs read permissions to the root folder, including where it’s mounted.
Start nginx with systemctl start nginx
You can visit your website on your host machine in a browser at [VPN INTERNAL IP]:[VPN FORWADED PORT]. For me, using the internal IP is required to view the website on my host machine.
To view the website on other machines, you can use [VPN EXTERNAL IP]:[VPN FORWARDED PORT]. The only thing you need to change is the IP address.
I hope this works for you and you are inspired to selfhost and take back power from those who stole it from us.
I’ll bite.
The risk is training people in bad behaviors, and then having those people do stupid things like type in a password.
There’s no password entry on this site, and what people do on other websites is not OPs responsibility.
Oh yes. Pushing personal responsibility to the end user has always been a very effective security strategy.
Lmao as the operator of a website your personal responsibility ends with your website. It is not OPs responsibility to protect other websites he does not operate, nor is it to take on the end user’s responsibility, or education. Don’t be silly.
Of course it does. You’re only ever responsible for yourself.
And that mentality does not lead to good things.
Of course it does, could you imagine the alternative? Imagine spontaneously taking responsibility for the safety of the entire internet. That would be just nuts.
I can heartily recommend taking responsibility for yourself, and not trying to foist it on others. Especially some dude with a rinky dink little personal blog.
This is a definition problem I think. I don’t use the word “responsible” to mean sole ownership. For example. We are all responsible for the cleanliness of our roads. It is a shared responsibility that we all participate in.
And, I think, we are all responsible for modeling good behaviors for people to emulate.
I don’t think we’re individually responsible for anything anybody else does unless you influenced somebody intentionally into doing it.
If you want to model your idea of good behavior then you set up your sites with https. That does not mean OP is obligated to do the same. Not for a static HTML page with a couple paragraphs of text on it.