Table of contents:
For a general description of security, we recommend Computer security on Wikipedia.
eZ publish is very secure! The U.S Department of Defense uses eZ publish!
eZ Publish Security Advisories ( http://share.ez.no/community-project/security-advisories ) - keeping your eZ Publish installation up-to-date with the latest release and security patches is a good way to ensure the underlying code base is stable & secure.
"Also in productive environments the extension directory should not be any longer writeable to apache cause of security." -- [email protected]
[FileSettings] StorageFilePermissions=664 StorageDirPermissions=775 LogFilePermissions=660
Web server user/group should only be on var/, unless making template/ini changes via admin interface.
There are several module views are available to anonymous users by default which can expose information about your software and website:
There are several ways to disable these module views for anonymous users - both are by changing settings in site.ini:
You can reset the site.ini:[RoleSettings] PolicyOmitList array with a settings override to exclude the module entirely thus preventing it's use and index from other external sources (engines, bots, etc)
Here is an example from a settings/override/site.ini.append.php file:
[RoleSettings] PolicyOmitList[] PolicyOmitList[]=user/login PolicyOmitList[]=user/logout PolicyOmitList[]=user/register PolicyOmitList[]=user/activate PolicyOmitList[]=user/success PolicyOmitList[]=user/forgotpassword PolicyOmitList[]=layout PolicyOmitList[]=manual # PolicyOmitList[]=ezinfo PolicyOmitList[]=paypal/notify_url PolicyOmitList[]=switchlanguage
You might choose for example to leave this enabled in development settings while disabled directly in production settings.
You could also add a new user group and coresponding new role for that group called say 'Developers' and within the role add a policy for ezinfo module and the read function. Save and clear caches. Now all developer group users can use ezinfo and everyone else gets access denied errors instead.
If you want to completely disable a module view so no-one can use it, you can reset the site.ini:[SiteAccessRules] Rules array with a settings override, e.g:
[SiteAccessRules] Rules[] Rules[]=access;enable Rules[]=module;all Rules[]=access;disable Rules[]=module;ezinfo/about Rules[]=module;content/browse
eZ Publish adds an HTTP header "X-Powered-By: eZ Publish" - you can override this.
In eZ Publish 4.7 you can change a setting in config.php:
/*** Enable usage of "X-Powered-By" headers. * Optional. Defaults to true. */ define( 'CLUSTER_HEADER_X_POWERED_BY', false );
In eZ Publish 4.6 & below, in your settings/override/site.ini.append.php file by adding the following (and while we're at it, let's turn off the webserver identifier):
[HTTPHeaderSettings] # Enable/disable custom HTTP header data. CustomHeader=enabled # Only apply custom headers for anonymous users OnlyForAnonymous=enabled # Header list. Contains all HTTP which should override standard ones. HeaderList[] HeaderList[]=X-Powered-By HeaderList[]=Server X-Powered-By[] X-Powered-By[/]= Server[] Server[/]=
Article provided by eZpedia
All text is available under the terms of the GNU Free Documentation License
Powered by eZ Publish 6.0.2stable
Hosted by USA eZ Publish Community Partner : Brookins Consulting