First, add setup checks for most required modules and also detect incompatible modules.
- mod_deflate: Add a server side check for mod_deflate to prevent corrupted files · Issue #4783 · owncloud/core · GitHub
- detect whether important PHP functions are blocked
- detect if all required Webdav verbs are available: Configuration checks for HTTP methods · Issue #16625 · owncloud/core · GitHub
- check that headers are properly going through like X-OC-MTime, Destination, Authorization, and others required for syncing and Webdav
- detect pagespeed on nginx: Detect (unsupported?) ngx_pagespeed on NginX · Issue #14604 · owncloud/core · GitHub
- pagespeed on apache: Troubles with mod_pagespeed · Issue #3912 · owncloud-archive/documentation · GitHub
- LimitRequestBody: Web instalation bug LimitRequestBody · Issue #13065 · owncloud/core · GitHub
- openssl warning for encryption: encryption module not working with fresh installation, no openssl warning · Issue #21319 · owncloud/core · GitHub
- more to find in the core repository…
Additionally, add a hardening checklist with automated checks that tell whether this is done or not: Add hardening checklist in admin section · Issue #26059 · owncloud/core · GitHub