Skip to content

gudchalmers/loopia-proxy

Repository files navigation

Loopia API Proxy

This is a basic proxy for LoopiaAPI to be able to limit which domain the api has access to.

It only has support for the endpoints used in acme.sh to automate DNS verification of certificate creation/renewal.

Requirements

  • Python 3
  • Python Virtualenv (not really required but highly recommended for non docker setups).

Setup

Rename the config/settings-example.json to config/settings.json and edit it as needed:

  • The root of each object is the username used for authenticating to the proxy.
  • password: The password is used to authenticate to the proxy.
    • This will be hashed when the proxy starts.
  • domains: The list of domains to allow this specific username to edit.

Install all the libraries with the following:

pip install -r requirements.txt

Then to run the proxy you just need to run the following:

LOOPIA_USER=username@loopiaapi LOOPIA_PASS=password python main.py

Or use an equivalent way of setting the environment variables first.

Bt default there should now be accessible on http://localhost:8000/RPCSERV

The host and port is controllable with the HOST and PORT environment variables.

Docker

There is an example docker-compose.yml file in this repo that can be used to setup the proxy.

After you have setup the docker container you need to update the settings.json files as described above.

License

MIT