linux_privatebin

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
linux_privatebin [2022/04/28 18:08] – [Configuration d'Apache] nekanlinux_privatebin [2022/05/02 07:41] (Version actuelle) – [Prérequis] nekan
Ligne 2: Ligne 2:
 <label type="info">Création</label>  --- //[[nekan@shyrkasystem.com|Nicolas THOREZ]] 2022/04/28 14:12// <label type="info">Création</label>  --- //[[nekan@shyrkasystem.com|Nicolas THOREZ]] 2022/04/28 14:12//
  
 +<callout type="info" title="Réalisation" icon="true">Cette procédure a été réalisée et testée sur un VM de 2 cœurs (CPU Atom) et 2Mo de RAM, hébergée sur un ''Proxmox'' et dont le système d'exploitation est une Debian 11.</callout>
 +
 +<callout type="danger" title="Droits" icon="true">Certaines manipulations nécessitent des droits ''root''. Attention donc.</callout>
 ===== Présentation ===== ===== Présentation =====
  
Ligne 23: Ligne 26:
 a2enmod ssl a2enmod ssl
 a2enmod rewrite a2enmod rewrite
 +a2enmod headers
 service apache2 restart</sxh> service apache2 restart</sxh>
  
Ligne 50: Ligne 54:
   * Le contenu de ce fichier de configuration :   * Le contenu de ce fichier de configuration :
 <file><VirtualHost *:80> <file><VirtualHost *:80>
-        ServerName 10.30.1.128+        ServerName mon.privatebin.com
         DocumentRoot /var/www/privatebin/         DocumentRoot /var/www/privatebin/
  
 +        # Redirection vers HTTPS
         RewriteEngine On         RewriteEngine On
-        RewriteCond %{HTTPS} off +        RewriteRule ^(.*)$ https://mon.privatebin.com/$1 [R=301,L]
-        RewriteRule ^(.*)$ https://10.30.1.128/$1 [L,R=301] +
 </VirtualHost> </VirtualHost>
  
  
 <VirtualHost *:443> <VirtualHost *:443>
-        ServerName 10.30.1.128+        ServerName mon.privatebin.com
         DocumentRoot /var/www/privatebin/         DocumentRoot /var/www/privatebin/
 +        Protocols h2 http/1.1
 +        
 +        # Log
         ErrorLog ${APACHE_LOG_DIR}/privatebin-error.log         ErrorLog ${APACHE_LOG_DIR}/privatebin-error.log
         CustomLog ${APACHE_LOG_DIR}/privatebin-access.log combined         CustomLog ${APACHE_LOG_DIR}/privatebin-access.log combined
 +        
         <Directory /var/www/privatebin>         <Directory /var/www/privatebin>
                 AllowOverride All                 AllowOverride All
         </Directory>         </Directory>
 +        
 +        # HSTS (mod_headers is required) (15768000 seconds = 6 months)
 +        Header  always set Strict-Transport-Security "max-age=15768000"
 +        Header set X-Frame-Options SAMEORIGIN
 +        Header set X-XSS-Protection "1; mode=block"
 +        Header set X-Content-Type-Options nosniff
 +        Header always set Referrer-Policy "same-origin"
 +        Header always set Feature-Policy "microphone 'none'; payment 'none'; sync-xhr 'self' https://mon.privatebin.com"
  
 +        # SSL
         SSLEngine On         SSLEngine On
         SSLCertificateFile      /etc/ssl/certs/ssl-cert-snakeoil.pem         SSLCertificateFile      /etc/ssl/certs/ssl-cert-snakeoil.pem
Ligne 95: Ligne 111:
     * **password** : Active ou désactive le verrouillage par mot de passe.     * **password** : Active ou désactive le verrouillage par mot de passe.
     * **fileupload** : Active ou désactive la possibilité d'ajouter une pièce jointe.     * **fileupload** : Active ou désactive la possibilité d'ajouter une pièce jointe.
 +    * **sizelimit** : Spécifie la taille maximale du partage.
 +    * **template** : Spécifie le modèle d'affichage à utiliser. Par défaut, il s'agit de ''bootstrap''. En mettant ''bootstrap-black'', on active le mode sombre.
     * **languageselection** : Active ou désactive le choix de la langue d'affichage.     * **languageselection** : Active ou désactive le choix de la langue d'affichage.
     * **languagedefault** : Fixe la langue d'affichage par défaut.     * **languagedefault** : Fixe la langue d'affichage par défaut.
     * **qrcode** : Active ou désactive l'émission et l'accès au partage via un QR Code.     * **qrcode** : Active ou désactive l'émission et l'accès au partage via un QR Code.
  
 +<callout type="info" title="sizelimit" icon="true">La taille maximale du partage est souvent confondu avec la taille maximale de la pièce jointe. Hors cette taille correspond à la taille du message chiffré au total, soit le message, la pièce jointe et le surplus de chiffrement. Il est préférable de compter 10% d'espace (estimation à la louche de ma part) pour le message et son chiffrement, le reste pour la pièce jointe. Ainsi pour une limite à 10Mo, le pièce de 9Mo passe mais pas celle de 9.1Mo.
 +
 +La limite par défaut est à 10Mo. J'ai testé un limite à 20Mo sur une VM à 2 cœurs propulsé par un CPU Atom et ça passe malgré quelques secondes d'attente pour le chiffrement et le déchiffrement. Par contre, sur cette configuration, une pièce de 60Mo n'a pas aboutit.
 +
 +A ajuster donc selon la puissance de votre machine. </callout>
 ==== Modification des icônes et images ==== ==== Modification des icônes et images ====
  
Ligne 109: Ligne 132:
   * On peut aussi modifier le ficher de template, situé dans le dossier ''/var/www/privatebin/tpl''.   * On peut aussi modifier le ficher de template, situé dans le dossier ''/var/www/privatebin/tpl''.
  
-{{ :underconstruction-copy-300x150.jpg |}}+===== Résultat final ===== 
 + 
 +Voici le résultat pour mon propre ''PrivateBin'', disponible à l'adresse [[https://share.shyrkasystem.com/|Shyrka System Secure Share]] 
 +<image shape="thumbnail">{{ :linux:privatebin:privatebin_001.png |}}</image> 
  
 ~~DISCUSSION~~ ~~DISCUSSION~~
  
  
  • linux_privatebin.1651169323.txt.gz
  • Dernière modification : 2022/04/28 18:08
  • de nekan