Skip to content

Latest commit

 

History

51 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Titan it!

Build Dependencies crates.io

File share server for Titan protocol with Gemini frontend

Note

Project in development!

Install

cargo install titanit

Setup

Generate PKCS (PFX)
openssl genpkey -algorithm RSA -out server.pem -pkeyopt rsa_keygen_bits:2048
openssl req -new -key server.pem -out request.csr
openssl x509 -req -in request.csr -signkey server.pem -out server.crt -days 365
openssl pkcs12 -export -out server.pfx -inkey server.pem -in server.crt

Launch

Arguments

  • --bind, -b required, server host:port to listen incoming connections
  • --identity, -i required, filepath to server identity in PKCS (PFX) format
  • --password, -p optional, unlock encrypted identity by passphrase
  • --chunk, -c optional, buffer chunk size (1024 by default)
  • --size, -s optional, max size limit in bytes (unlimited by default)
  • --mime, -m optional, uploads MIME type whitelist (comma separated, all by default)
  • --directory, -d optional, uploads target directory (public by default)
  • --redirect, -r optional, redirection URL on request handle complete (e.g. gemini://localhost)
  • --welcome, -w optional, filepath to welcome page template (in gemtext format)

Start

titanit --bind 127.0.0.1:1965 \
        --identity path/to/server.pfx

Titan it!

  • gemini://127.0.0.1 - landing page
  • titan://127.0.0.1 - new file upload

About

Titan it! File share server for Titan protocol with Gemini frontend

Topics

Resources

Stars

1 star

Watchers

3 watching

Forks

Releases

Sponsor this project

Packages

Used by

Contributors

Languages