From bd0551b22076b82a6d49e9f7a2b2e0c90a1b2326 Mon Sep 17 00:00:00 2001 From: Aleksander Machniak <alec@alec.pl> Date: Fri, 05 Feb 2016 07:25:27 -0500 Subject: [PATCH] Secure also downloads of addressbook exports, managesieve script exports and Enigma keys exports --- .htaccess | 58 ++++++++++++++++++++++++++++++++++------------------------ 1 files changed, 34 insertions(+), 24 deletions(-) diff --git a/.htaccess b/.htaccess index 2bc9f95..59e5dca 100644 --- a/.htaccess +++ b/.htaccess @@ -1,37 +1,42 @@ -# AddDefaultCharset UTF-8 +# AddDefaultCharset UTF-8 AddType text/x-component .htc <IfModule mod_php5.c> -php_flag display_errors Off -php_flag log_errors On -# php_value error_log logs/errors +php_flag display_errors Off +php_flag log_errors On +# php_value error_log logs/errors -php_value upload_max_filesize 5M -php_value post_max_size 6M -php_value memory_limit 64M +php_value upload_max_filesize 5M +php_value post_max_size 6M +php_value memory_limit 64M -php_flag zlib.output_compression Off -php_flag magic_quotes_gpc Off -php_flag magic_quotes_runtime Off -php_flag zend.ze1_compatibility_mode Off -php_flag suhosin.session.encrypt Off +php_flag register_globals Off +php_flag zlib.output_compression Off +php_flag magic_quotes_gpc Off +php_flag magic_quotes_runtime Off +php_flag suhosin.session.encrypt Off -#php_value session.cookie_path / -php_value session.auto_start 0 -php_value session.gc_maxlifetime 21600 -php_value session.gc_divisor 500 -php_value session.gc_probability 1 - -# http://bugs.php.net/bug.php?id=30766 -php_value mbstring.func_overload 0 +#php_value session.cookie_path / +#php_value session.hash_function sha256 +php_flag session.auto_start Off +php_value session.gc_maxlifetime 21600 +php_value session.gc_divisor 500 +php_value session.gc_probability 1 </IfModule> <IfModule mod_rewrite.c> +Options +FollowSymLinks RewriteEngine On -RewriteRule ^favicon.ico$ skins/default/images/favicon.ico -# security rules -RewriteRule .svn/ - [F] -RewriteRule ^README|INSTALL|LICENSE|SQL|bin|CHANGELOG$ - [F] +RewriteRule ^favicon\.ico$ skins/larry/images/favicon.ico + +# security rules: +# - deny access to files not containing a dot or starting with a dot +# in all locations except installer directory +RewriteRule ^(?!installer|\.well-known\/|[a-zA-Z0-9]{16})(\.?[^\.]+)$ - [F] +# - deny access to some locations +RewriteRule ^/?(\.git|\.tx|SQL|bin|config|logs|temp|tests|program\/(include|lib|localization|steps)) - [F] +# - deny access to some documentation files +RewriteRule /?(README\.md|composer\.json-dist|composer\.json|package\.xml|Dockerfile)$ - [F] </IfModule> <IfModule mod_deflate.c> @@ -41,6 +46,8 @@ <IfModule mod_headers.c> # replace 'append' with 'merge' for Apache version 2.2.9 and later #Header append Cache-Control public env=!NO_CACHE +# for better privacy/security ask browsers to not set the Referer +#Header set Content-Security-Policy "referrer no-referrer" </IfModule> <IfModule mod_expires.c> @@ -49,4 +56,7 @@ </IfModule> FileETag MTime Size + +<IfModule mod_autoindex.c> Options -Indexes +</ifModule> -- Gitblit v1.9.1