To avoid any point of centralization, I'll refuse to build or give visibility to any directory of rooms.
However, one good practice to find (or announce) new rooms is to share it on various social media platforms under the hashtag #ssbroom
. This is decentralized, but still easy and convenient for discovery of rooms.
- #ssbroom on Twitter
- #ssbroom on Facebook
- #ssbroom on Instagram
- #ssbroom on Mastodon Social
- #ssbroom on LinkedIn
- #ssbroom on Minds
- #ssbroom on Tumblr
- #ssbroom on Pinterest
- #ssbroom on GitHub
- ssb rooms on Google
- ssb rooms on DuckDuckGo
- ssb rooms on Bing
It is technically possible that the person(s) operating a room server might access or track the following information from each client:
- SSB ID
- IP address
The room server cannot know anything else about your account, none of your feed messages, none of your profile pictures. We advise to only connect to rooms operated by trusted people if you're not comfortable sharing the 2 pieces of information listed above with strangers. Granted, SSB rooms leak significantly less personal information than SSB pubs do.
In the rare situation that the source code for the room server was modified (deviating from the Docker image this repo provides), then it is possible that the room server acts like a pub server, and as such it could fetch your public feed data, profile picture, etc.
Rooms utilize a fork of ssb-tunnel to create a p2p link tunneled through a server with a public IP address. The fork of ssb-tunnel in SSB Room is backwards compatible with ssb-tunnel, and we should consider merging the features back upstream in the future.
A tunnel is an onion encrypted connection between two room clients, using secret-handshake. Between the room and the room client, there is a secret-handshake (encrypted and mutually authenticated) channel, as well as another secret-handshake channel between two connected room clients. This means the room server itself cannot learn about the contents of a tunnel between two of its clients, even though it acts as an intermediary between them.
In case you want to have a custom domain address for that page, such as room.scuttlebutt.nz
instead of a raw IP address, you need to (1) own a domain (there are many providers for this), and (2) setup DNS to add an A
record pointing to the IP address you got from DigitalOcean.
Because it the only one I found that had an easy installer available. I also considered Vultr because you can upload an ISO with the web app preconfigured, but this meant that I would have to figure out how to build an ISO for this web app. I considered Heroku too (because it has easy installers), but Heroku is not a VPS provider, and doesn't allow us to have TCP sockets open all the time, which is a prerequisite SSB Room. If you want to add more easy installers for other cloud providers, be my guest and open a pull request.
Read here on how to setup a room manually, using Docker containers on your preferred server provider.
Read here on how to use this project as an SSB Node.js plugin.