]> git.p6c8.net - jirafeau.git/blobdiff - README.md
Centralize decryption in `jirafeau_decrypt_file()`
[jirafeau.git] / README.md
index 37fdfc7593ab784bc0b3556503631f6317700593..ddedec6726860f6d81e4b9d3d86a4aa5f2d5a606 100644 (file)
--- a/README.md
+++ b/README.md
@@ -1,18 +1,18 @@
 # Jirafeau
 
 # Jirafeau
 
+![Build Status](https://img.shields.io/gitlab/pipeline/mojo42/Jirafeau/master.svg)
+![Made With](https://img.shields.io/badge/made_with-php-blue.svg)
+![License](https://img.shields.io/badge/license-agpl--3.0-blue.svg)
+![Contribution](https://img.shields.io/badge/contributions_welcome-brightgreen.svg?labelColor=brightgreen)
+
 Welcome to the official Jirafeau project, an [Open-Source software](https://en.wikipedia.org/wiki/Open-source_software).
 
 Welcome to the official Jirafeau project, an [Open-Source software](https://en.wikipedia.org/wiki/Open-source_software).
 
-Jirafeau allows your to "one-click-filesharing". It makes possible to upload a file in a simple way and give an unique link to it.
+Jirafeau is a "one-click-filesharing": Select your file, upload, share a link. That's it.
 
 
-A demonstration of the latest version is available on [jirafeau.net](https://jirafeau.net/).
+See [jirafeau.net](https://jirafeau.net/) for a demo.
 
 ![Screenshot1](http://i.imgur.com/TPjh48P.png)
 
 
 ![Screenshot1](http://i.imgur.com/TPjh48P.png)
 
-Latest CI Status:
-Master [![Build Status Master](https://gitlab.com/mojo42/Jirafeau/badges/master/build.svg)](https://gitlab.com/mojo42/Jirafeau/commits/master)
-Next Release [![Build Status Next Release](https://gitlab.com/mojo42/Jirafeau/badges/test/build.svg)](https://gitlab.com/mojo42/Jirafeau/commits/master)
-[All Branch Builds](https://gitlab.com/mojo42/Jirafeau/pipelines?scope=branches)
-
 ## Main features
 
 - One upload → One download link & one delete link
 ## Main features
 
 - One upload → One download link & one delete link
@@ -20,6 +20,7 @@ Next Release [![Build Status Next Release](https://gitlab.com/mojo42/Jirafeau/ba
 - Shows progression: speed, percentage and remaining upload time
 - Preview content in browser (if possible)
 - Optional password protection (for uploading or downloading)
 - Shows progression: speed, percentage and remaining upload time
 - Preview content in browser (if possible)
 - Optional password protection (for uploading or downloading)
+- option to require, check or generate file download passwords
 - Set expiration time for downloads
 - Option to self-destruct after first download
 - Shortened URLs using base 64 encoding
 - Set expiration time for downloads
 - Option to self-destruct after first download
 - Shortened URLs using base 64 encoding
@@ -74,12 +75,17 @@ Installation steps:
 - B) Setup without the installation wizard (cli):
   - Just copy ```lib/config.original.php``` to ```lib/config.local.php``` and customize it
 
 - B) Setup without the installation wizard (cli):
   - Just copy ```lib/config.original.php``` to ```lib/config.local.php``` and customize it
 
+💡 Hint: How to
+[install & configure Jirafeau](https://www.howtoforge.com/how-to-setup-a-file-sharing-website-with-jirafeau-on-debian-10/)
+on Debian 10 from scratch, with Nginx and PHP-FPM.
+
 ### Troubleshooting
 
 If you have some troubles, consider the following cases
 
 - Check your ```/lib/config.local.php``` file and compare it with ```/lib/config.original.php```, the configuration syntax or a parameter may have changed
 - Check owner & permissions of your files
 ### Troubleshooting
 
 If you have some troubles, consider the following cases
 
 - Check your ```/lib/config.local.php``` file and compare it with ```/lib/config.original.php```, the configuration syntax or a parameter may have changed
 - Check owner & permissions of your files
+- set `debug` option to `true` to check any warning or error
 
 ## Security
 
 
 ## Security
 
@@ -117,13 +123,13 @@ An other obvious basic security is to let access users to the site by HTTPS (mak
 
 Data encryption can be activated in options. This feature makes the server encrypt data and send the decryt key to the user (inside download URL).
 The decrypt key is not stored on the server so if you loose an url, you won't be able to retrieve file content.
 
 Data encryption can be activated in options. This feature makes the server encrypt data and send the decryt key to the user (inside download URL).
 The decrypt key is not stored on the server so if you loose an url, you won't be able to retrieve file content.
-Encryption is configured to use AES256 in OFB mode.
+Encryption is configured to use [XChaCha20-Poly1305](https://en.wikipedia.org/wiki/ChaCha20-Poly1305).
 In case of security troubles on the server, attacker won't be able to access files.
 
 By activating this feature, you have to be aware of few things:
 -  Data encryption has a cost (cpu) and it takes more time for downloads to complete once file sent.
 -  During the download, the server will decrypt on the fly (and use resource).
 In case of security troubles on the server, attacker won't be able to access files.
 
 By activating this feature, you have to be aware of few things:
 -  Data encryption has a cost (cpu) and it takes more time for downloads to complete once file sent.
 -  During the download, the server will decrypt on the fly (and use resource).
--  This feature needs to have the mcrypt php module.
+-  This feature needs to have the Sodium php module.
 -  File de-duplication will stop to work (as we can't compare two encrypted files).
 -  Be sure your server do not log client's requests.
 -  Don't forget to enable https.
 -  File de-duplication will stop to work (as we can't compare two encrypted files).
 -  Be sure your server do not log client's requests.
 -  Don't forget to enable https.
@@ -205,6 +211,8 @@ Hint: To create a custom theme just copy the »courgette« folder and name your
 ### I found a bug, what should I do?
 
 Feel free to open a bug in the [GitLab's issues](https://gitlab.com/mojo42/Jirafeau/issues).
 ### I found a bug, what should I do?
 
 Feel free to open a bug in the [GitLab's issues](https://gitlab.com/mojo42/Jirafeau/issues).
+If you can, please copy-paste informations related to bug opening provided in admin interface.
+Admin interface can be reached by accessing `/admin.php`.
 
 ### How to set maximum file size?
 
 
 ### How to set maximum file size?
 
@@ -266,7 +274,7 @@ Check [issues](https://gitlab.com/mojo42/Jirafeau/issues) to check open bugs and
 
 ### What about this file deduplication thing?
 
 
 ### What about this file deduplication thing?
 
-Jirafeau uses a very simple file level deduplication for storage optimization.
+Jirafeau can use a very simple file level deduplication for storage optimization.
 
 This mean that if some people upload several times the same file, this will only store one time the file and increment a counter.
 
 
 This mean that if some people upload several times the same file, this will only store one time the file and increment a counter.
 
@@ -276,9 +284,11 @@ When the counter falls to zero, the file is destroyed.
 
 In order to know if a newly uploaded file already exist, Jirafeau will hash the file using md5 by default but other methods are available (see `file_hash` documentation in `lib/config.original.php`).
 
 
 In order to know if a newly uploaded file already exist, Jirafeau will hash the file using md5 by default but other methods are available (see `file_hash` documentation in `lib/config.original.php`).
 
+This feature is disabled by default and can be enabled through the `file_hash` option.
+
 ### What is the difference between "delete link" and "delete file and links" in admin interface?
 
 ### What is the difference between "delete link" and "delete file and links" in admin interface?
 
-As explained in the previous question, files with the same hash are not duplicated and a reference counter stores the number of links pointing to a single file.
+When file deduplication feature is enabled, files with the same hash are not duplicated and a reference counter stores the number of links pointing to a single file.
 So:
 - The button "delete link" will delete the reference to the file but might not destroy the file.
 - The button "delete file and links" will delete all references pointing to the file and will destroy the file.
 So:
 - The button "delete link" will delete the reference to the file but might not destroy the file.
 - The button "delete file and links" will delete all references pointing to the file and will destroy the file.
@@ -286,3 +296,9 @@ So:
 ### How to contact someone from Jirafeau?
 
 Feel free to create an issue if you found a bug.
 ### How to contact someone from Jirafeau?
 
 Feel free to create an issue if you found a bug.
+
+Also, you can come have a chat on [libera.chat](https://web.libera.chat/) in `#jirafeau` channel.
+
+### Can I buy you a coffee?
+
+You can [drop few bucks](https://www.paypal.com/paypalme/jeromejutteau) to help the [demo web site](https://jirafeau.net) to stay alive.

patrick-canterino.de