Saljut - your gate to the scuttleweb
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Vincent Truchseß 6f9d9b5807 corrected error in README 11 months ago
doc initial commit 11 months ago
src/saljut Implemented saljut-proxy prototype 11 months ago
test/saljut_publish initial commit 11 months ago
.gitignore initial commit 11 months ago
CHANGELOG.md initial commit 11 months ago
LICENSE updated readme and LICENSE 11 months ago
README.md corrected error in README 11 months ago
project.clj Implemented saljut-proxy prototype 11 months ago

README.md

Saljut

A web-ssb-proxy. Saljut is a web-proxy that let's you acess websites hosted on SSB as well as a publishing-tool to publish websites to SSB.

Installation

Dependencies

To build saljut, you first need a working leningen installation. As well as a recent version of OpenJDK.

To integrate well in a linux-environment you'll need to install

  • nginx
  • dnsmasq

Building Saljut

First, clone the git-repository and build the jar.

git clone ssb://%4ZjCXSI6Q86smKrR88zaVxqrAICuJmkZXfezTCAkszA=.sha256 saljut
cd saljut
lein uberjar

The jar-file should noe be located in target/uberjar.

Integrating Saljut into your environment

First copy the jar to some unsuspicious place (e.g. /local/opt/saljut) and place a small start-script

#! /bin/sh

java -jar [the path to the jar-file] "$@"

somewhere in your $PATH (e.g. /local/bin/saljut) and make it executable

chmod +x [the path to your start-script].

Now place the following config-snippet into the http-section

server {
  listen 3030;
  server_name *.ssb;

  location / {
    proxy_set_header Host $host;
    proxy_pass http://localhost:9876;
  }
}

server {
  listen 3030;
  server_name ~.* ;

  location / {
    resolver 127.0.0.1;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_pass $scheme://$host;
  }
}

of /etc/nginx/nginx.conf and start/enable the nginx-service

systemctl enable --now nginx

Last but not least, nginx needs a dns-resolver running in this setup, so you should start/enable dnsmasq as well

systemctl enable --now dnsmasq

Browser setup

In firefox, open the settings-page, scroll down to “Network-Settings” and configure the web-proxy as shown here: firefox_settings.png

Usage

Start the saljut-proxy

saljut start

Publish a website

saljut publish <path to folder> <subdomain>

It will now be accessible under subdomain.your-base32-pubkey.b32.ssb.

Get the base32-key to a SSB-id

saljut convert b32 <ssb-id>

Get the base64 SSB-id from a base32-key

saljut convert b64 <basae32-key>

More Information / Support

The SSB-Info-Thread is found here %rr5HHGlQ+GNk7xwRD7wpofzl3nv/KKzo0Yhjfg+L0yI=.sha256.

Contributors

Vincent Truchseß - redtux@posteo.net

License

Copyright - see contributors. This code is published under the GNU General Public License, version 2. You should have recieved a copy of this license here. You can also find a copy of this license under [](https://www.gnu.org/licenses/old-licenses/gpl-2.0.html).