Businesses and technical people may want more control over the hosting of their data so we made it easy to self-host your own server.
After installing the command line tools create a folder to store account data, initialize the config file and start the server.
By default the server will listen on all interfaces to port 5053, use the --bind
option to change the bind address.
Configuration
Servers are permissionless which means no sign up is required to create an account therefore you are responsible for protecting access to the server, use the access control configuration to restrict access.
Transport Layer Security
To secure the communication with the server we recommend configuring an SSL certificate in the tls
section:
[tls]
cert = "cert.pem"
key = "key.pem"
Whilst the account data is secured using end-to-end encryption protecting the server communication with SSL helps to prevent MitM and replay attacks.
Access Control
The configuration supports access control with deny
and allow
sections to control which accounts are allowed to connect.
To restrict access to certain account addresses use an allow
list:
[access]
allow = [
"0x3ebe1c7c8e56a1e9b813073e30caf1a0cd8e7634"
]
Only the specific addresses listed are allowed to connect to the server. Alternatively it's possible to explicitly deny
certain account addresses.
[access]
deny = [
"0x7ebe1c7c89e56a1e9b813073e30caf1a0cd8e5541"
]