Update README.md
This commit is contained in:
157
README.md
157
README.md
@@ -32,65 +32,172 @@ ls -la | nc localhost 9999
|
||||
```
|
||||
|
||||
```
|
||||
cat file.txt | nc someserverrunningfiche.net 1234
|
||||
cat file.txt | nc solusipse.net 9999
|
||||
```
|
||||
|
||||
```
|
||||
echo just testing! | nc code.solusipse.net 9999
|
||||
```
|
||||
|
||||
If you already haven't set up your server on localhost, try third line! My server is providing terminal
|
||||
pastebin server powered by fiche - ```code.solusipse.net``` on port ```9999```.
|
||||
If you haven't already set up your server on localhost, try second or third command. My personal server is
|
||||
providing fiche-based service all the time on this address `solusipse.net` and this port `9999`.
|
||||
|
||||
- To upload text you need to have netcat installed (to check if netcat is installed, simply type ```nc``` in terminal).
|
||||
|
||||
## Server-side usage ##
|
||||
|
||||
```
|
||||
usage: fiche [-bdpqs].
|
||||
[-d host_domain.com] [-p port] [-s slug_size]
|
||||
[-o output_directory] [-b buffer_size] [-q queue_size]
|
||||
usage: fiche [-pbsdolBuw].
|
||||
[-d domain] [-p port] [-s slug size]
|
||||
[-o output directory] [-B buffer size] [-u user name]
|
||||
[-l log file] [-b banlist] [-w whitelist]
|
||||
```
|
||||
|
||||
These are command line arguments. You don't have to provide any, but doing that is recommended. Without them, program
|
||||
These are command line arguments. You don't have to provide any, but providing basic is recommended. Without them, program
|
||||
will use these default settings:
|
||||
|
||||
```C
|
||||
```
|
||||
domain = "http://localhost/";
|
||||
basedir= "~/code/";
|
||||
port = 9999;
|
||||
slug_size = 4;
|
||||
buffer_size = 8192;
|
||||
queue_size = 100;
|
||||
```
|
||||
|
||||
Examples:
|
||||
### Arguments ###
|
||||
|
||||
Most important is providing **basedir** and **domain**.
|
||||
|
||||
-----------------
|
||||
|
||||
#### Basedir ####
|
||||
|
||||
Basedir should be **absolute** path to directory where you would like to store text files.
|
||||
|
||||
|
||||
```
|
||||
fiche -b /absolute/path/to/directory/
|
||||
```
|
||||
|
||||
```
|
||||
fiche -b /home/www/code/
|
||||
```
|
||||
|
||||
-----------------
|
||||
|
||||
#### Domain ####
|
||||
|
||||
Domain should be provided in such format ```domain.com```.
|
||||
|
||||
```
|
||||
fiche -d domain.com
|
||||
```
|
||||
|
||||
```
|
||||
fiche -s 6 -p 6666
|
||||
fiche -d subdomain.domain.com
|
||||
```
|
||||
|
||||
### Basic arguments ###
|
||||
-----------------
|
||||
|
||||
Most important is providing **basedir** and **domain**.
|
||||
#### Slug size ####
|
||||
|
||||
Basedir should be **absolute** path to directory where you would like to store text files.
|
||||
This will force fiche to create random slugs with given length, example:
|
||||
|
||||
Domain should be provided in such format ```domain.com```.
|
||||
```
|
||||
fiche -s 6
|
||||
```
|
||||
|
||||
Slug size: ```domain.com/SLUG_OF_CHOSEN_LENGTH/```.
|
||||
```
|
||||
http://domain.com/abcdef/
|
||||
```
|
||||
|
||||
-----------------
|
||||
|
||||
#### User name ####
|
||||
|
||||
If you use fiche as service (see details below) you may want to save files as other user, to do that use `-u` option,
|
||||
there's example:
|
||||
|
||||
```
|
||||
fiche -u http
|
||||
```
|
||||
|
||||
-----------------
|
||||
|
||||
#### Buffersize ####
|
||||
|
||||
This parameter defines max file size uploaded by user, by default it is set to `32768`.
|
||||
Use `-B` parameter to change it:
|
||||
|
||||
```
|
||||
fiche -B 2048
|
||||
```
|
||||
|
||||
-----------------
|
||||
|
||||
#### Log file ###
|
||||
|
||||
Path to file where all logs will be stored:
|
||||
|
||||
```
|
||||
fiche -l /home/www/fiche-log.txt
|
||||
```
|
||||
|
||||
-----------------
|
||||
|
||||
#### Ban list ###
|
||||
|
||||
Path to file where you provided all banned IP adresses:
|
||||
|
||||
```
|
||||
fiche -b /home/www/fiche-bans.txt
|
||||
```
|
||||
|
||||
-----------------
|
||||
|
||||
#### White list ####
|
||||
|
||||
If whitelist mode is enabled, only addresses from list will be able to upload files. There's example:
|
||||
|
||||
```
|
||||
fiche -w /home/www/fiche-whitelist.txt
|
||||
```
|
||||
|
||||
-----------------
|
||||
|
||||
#### Whitelist and banlist syntax ####
|
||||
|
||||
There is no specific syntax, there files may contain not only addresses.
|
||||
|
||||
-----------------
|
||||
|
||||
#### Examples ####
|
||||
|
||||
Logging connections with banlist:
|
||||
|
||||
```
|
||||
fiche -d domain.com -l /home/www/log.txt -b /home/www/bans.txt
|
||||
```
|
||||
|
||||
-----------------
|
||||
|
||||
Only for personal use with whitelist
|
||||
|
||||
```
|
||||
fiche -d domain.com -w /home/www/whitelist.txt
|
||||
```
|
||||
|
||||
-----------------
|
||||
|
||||
Custom output directory, bigger slug size, reduced buffer, custom port:
|
||||
|
||||
```
|
||||
fiche -d domain.com -o /media/disk/fiche/ -s 8 -B 2048 -p 6666
|
||||
```
|
||||
|
||||
### Parameters for advanced users ###
|
||||
|
||||
- Buffer size
|
||||
- Queue size
|
||||
|
||||
## Running as service ##
|
||||
e
|
||||
You can run fiche as service, there is simple systemd example:
|
||||
|
||||
```
|
||||
@@ -98,13 +205,13 @@ You can run fiche as service, there is simple systemd example:
|
||||
Description=FICHE-SERVER
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/local/bin/fiche -d code.solusipse.net -o /home/www/code/
|
||||
ExecStart=/usr/local/bin/fiche -d code.solusipse.net -o /home/www/code/ -l /home/www/log.txt
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
```
|
||||
|
||||
In service mode you have to set output directory with ```-d``` parameter, there's example:
|
||||
In service mode you have to set output directory with `-o` parameter, there's example:
|
||||
|
||||
```
|
||||
fiche -o /home/www/code/
|
||||
@@ -113,7 +220,7 @@ fiche -o /home/www/code/
|
||||
## Webserver ##
|
||||
|
||||
To make files available for users, you need to host them somehow. Http server is easiest option. Just set root
|
||||
directory to ```BASEDIR```. **Remember that you have to distribute these files as plain text for safety measures!**
|
||||
directory to ```BASEDIR```.
|
||||
|
||||
There is sample configuration for nginx:
|
||||
|
||||
@@ -121,11 +228,11 @@ There is sample configuration for nginx:
|
||||
server {
|
||||
listen 80;
|
||||
server_name mysite.com www.mysite.com;
|
||||
add_header Content-Type text/plain;
|
||||
charset utf-8;
|
||||
|
||||
location / {
|
||||
root /home/www/code/;
|
||||
index index.html;
|
||||
index index.txt index.html;
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user