Create your own private internet by simulating closed DNS via /etc/hosts

Gradyn Wursten 2c55fb3ac4 Fixed a spelling error 5 months ago
README.md 0985b1df82 Updated README.md 1 year ago
example.ow 28122919ca Added example.ow 1 year ago
install.sh c89b6c1ca4 Edited install.sh 1 year ago
sync-openweb.template 2c55fb3ac4 Fixed a spelling error 5 months ago

README.md

OpenWeb

OpenWeb is a wrapper around assigning domain names to IP addresses in your /etc/hosts file based on a remote file.

Setting it up

  1. Create an OpenWeb file (it can be any name) using the format shown in example.ow
  2. Put the OpenWeb file on any publicly availiable location with direct links (e.g. a web server)
  3. Anyone who would like to install OpenWeb requires that URL, and install.sh and sync-openweb.template from this repository. You can just ask them to clone the repository.
  4. You're done! Anyone with that OpenWeb file synced can now access the domains you've set in it.

Notes

OpenWeb is not a replacement for Google Domains, GoDaddy, NameCheap, or any other domain providers. OpenWeb will not give you free domains accessible by anyone with a web browser. OpenWeb will allow you to use custom domain names that someone has uploaded as a file.

OpenWeb can not be used in conjunction with Let's Encrypt or any other SSL certificate providers, as they can not recognize the domain name, as it is not a real domain. The OpenWeb domain is merely a line in your /etc/hosts file, which is what the system uses to bind some IP addresses (like 127.0.0.1) to some domain names (like localhost). Only people with the modified /etc/hosts file (as in, anyone who has installed that OpenWeb file) can see the domain.

OpenWeb will only work on Linux, macOS, BSDs, and any other system exposing /etc/hosts. It will not work on Windows. Testing it in the Windows 10 Linux Subsystem has not been done yet.

Windows does have a hosts file, but it is out of the scope of this utility.