simple file upload
Find a file
2023-02-13 23:41:22 +02:00
http Minor fix on sakisafe.pl 2023-02-13 23:41:22 +02:00
sakisafecli Updated documentation 2022-11-30 15:04:25 +01:00
.gitignore Rewrote the shit using Mojo 2022-11-20 12:21:31 +01:00
LICENSE I was trolled by the FSF 2022-07-05 15:11:10 +02:00
Makefile Added makefile at the root and updated readme. 2022-06-09 19:21:09 +02:00
README.md Add filename randomizing (#17) 2023-02-13 22:29:06 +01:00
SERVERS.org Added a available servers 2020-10-20 16:12:09 +02:00
TODO.MD Added $LINK_STORE so the user can choose where to store the upload 2020-08-07 19:27:57 +02:00

Sakisafe (formerly lainsafe)

Simple file upload

Features

  • Written in perl
  • Can be used as pastebin
  • Easy installation (just a simple daemon and use a reverse proxy)
  1. install the dependencies using cpan:
cpan -i Mojolicious::Lite Mojolicious::Routes::Pattern Mojolicious::Plugin::RenderFile List::MoreUtils MIME::Types
  1. Clone the repo and start the daemon:
git clone https://git.suragu.net/sosa/sakisafe
cd sakisafe/http
./sakisafe.pl daemon -m production

By default, sakisafe will bind in 127.0.0.1 port 3000. Because that's the default bind Mojolicious uses.

  1. Create a proxy rule in nginx configuration (If you're using another HTTP server, you're on your own.)

server {
	  server_name sakisafe.whatever.tld;
	  listen 443 ssl;

	  # ssl configuration here

	  location / {
	  		   proxy_set_header    Host            $host;
			   proxy_set_header    X-Real-IP       $remote_addr;
			   proxy_set_header    X-Forwarded-for $remote_addr;
			   proxy_pass http://127.0.0.1:3000$request_uri;
	  }
}

And restart nginx. Going to sakisafe.whatever.tld should work.

sakisafecli

sakisafecli is a command line interface for sakisafe servers (and other file upload services). It also supports file uploading via scp (ssh).

Features

  • Written in C so is fast.
  • HTTP and SCP support (FTP support is planned)
  • Highly configurable
  • Lightweight
  • If using OpenBSD, it will run pledge() for security reasons.

Installation

Compilation

Clone the repo and run make (or bmake in linux systems)

Repositories

Contributing

Just create a pull request in GitHub or send a diff file.

Donate

Thanks!

Bitcoin: bc1qghl6f27dpgktynpvkrxte2s3gm9pcv8vlwuzum

Monero: 47QTumjtqJabbo1s9pLDdXeJarLVLfs1AaEcbi1xrEiV852mqcbe5AHLNXTk7tH9MscxcxQDfJQnvH5LpxvfgwSJQZ3zbS6