Customization

Baruwa Enterprise Edition configuration is done via a configuration management system, this means that manual changes to files are overwritten by the configuration management system.

In some cases end users would like to make local customizations which should not be overwritten. This section provides information on the supported customization mechanisms within Baruwa.

Configuration system customization

From BaruwaOS version 6.7.3, the entire configuration management system can be customized with local changes that are not overwritten when the system is upgraded or baruwa-setup is run.

Configuration system customization is supported by the salt configuration engine not the puppet configuration engine. The salt configuration engine is the default engine in BaruwaOS versions >= 6.7.3.

To customize a configuration module make a copy of the module from /srv/baruwa/salt/base into /srv/baruwa/salt/custom. You can then make changes to the module within the /srv/baruwa/salt/custom directory. This changes will override the default configuration module.

Note

Please note that you will be responsible for syncing any changes made to the upstream module to your own custom module when ever the upstream module is updated.

MTA Customization

The MTA configuration provides a number of hooks to allow the user to merge their own configuration into the running configuration managed by the configuration management system.

The following hooks are available.

Config file name Purpose
/etc/exim/macros.conf.local Redefine the macros in /etc/exim/macros.conf
/etc/exim/custom-lists.post Add lists to lists section
/etc/exim/custom-vars.post Add additional config options
/etc/exim/custom-acl_check_auth.pre Add ACL’s before the acl_check_auth ACL
/etc/exim/custom-acl_check_auth.post Add ACL’s after the acl_check_auth ACL
/etc/exim/custom-acl_check_quit.pre Add ACL’s before the acl_check_quit ACL
/etc/exim/custom-acl_check_quit.post Add ACL’s after the acl_check_quit ACL
/etc/exim/custom-acl_check_notquit.pre Add ACL’s before the acl_check_notquit ACL
/etc/exim/custom-acl_check_notquit.post Add ACL’s after the acl_check_notquit ACL
/etc/exim/custom-acl_check_mail.pre Add ACL’s before the acl_check_mail ACL
/etc/exim/custom-acl_check_mail.post Add ACL’s after the acl_check_mail ACL
/etc/exim/custom-acl_check_rcpt.pre Add ACL’s before the acl_check_rcpt ACL
/etc/exim/custom-acl_check_rcpt-rbls Add RBL ACL’s before the builtin RBL ACL’s in the acl_check_rcpt ACL
/etc/exim/custom-acl_check_rcpt.post Add ACL’s after the acl_check_rcpt ACL
/etc/exim/custom-acl_check_data.pre Add ACL’s before the acl_check_data ACL
/etc/exim/custom-acl_check_data.post Add ACL’s after the acl_check_data ACL
/etc/exim/custom-acl_check_mime.pre Add ACL’s before the acl_check_mime ACL
/etc/exim/custom-acl_check_mime.post Add ACL’s after the acl_check_mime ACL
/etc/exim/custom-acl_check_connect.pre Add ACL’s before the acl_check_connect ACL
/etc/exim/custom-acl_check_connect.post Add ACL’s after the acl_check_connect ACL
/etc/exim/custom-acl_check_helo.pre Add ACL’s before the acl_check_helo ACL
/etc/exim/custom-acl_check_helo.post Add ACL’s after the acl_check_helo ACL
/etc/exim/custom-acl_check_dkim.pre Add ACL’s before the acl_check_dkim ACL
/etc/exim/custom-acl_check_dkim.post Add ACL’s after the acl_check_dkim ACL
/etc/exim/custom-routers.pre Add routers before the default routers
/etc/exim/custom-routers-post-split.pre Add routers before the split router
/etc/exim/custom-routers.post Add routers after the default routers
/etc/exim/custom-transports.pre Add transports before the default transports
/etc/exim/custom-transports.post Add transports after the default transports
/etc/exim/custom-routers-out.pre Add Outbound routers before the default routers
/etc/exim/custom-routers-out.post Add Outbound routers after the default routers
/etc/exim/custom-transports-out.pre Add Outbound transports before the default transports
/etc/exim/custom-transports-out.post Add Outbound transports after the default transports

Scanner Customization

The Mail Scanning system configuration can be overridden by creating .local settings files in /etc/MailScanner/baruwa/rules The following configuration files can be customized using the filename.local system.

Settings Filename Purpose
approved.senders.rules Approved senders ruleset
archives.filename.rules Archives filenames ruleset
archives.filetype.rules Archives filetype ruleset
banned.senders.rules Banned senders ruleset
deletedcontentmessage.rules Deleted content message ruleset
deletedfilenamemessage.rules Deleted filename message ruleset
deletedsizemessage.rules Deleted message size message ruleset
deletedvirusmessage.rules Deleted virus message ruleset
disinfectedreport.rules Disinfected report ruleset
filename.rules Blocked filename ruleset
filetype.rules Blocked filetype ruleset
highspam.actions.rules Definate spam actions ruleset
highspam.score.rules Definate spam score ruleset
html.sigs.rules HTML signature ruleset
inlinespamwarning.rules Inline SPAM warning html message ruleset
inlinewarninghtml.rules Inline SPAM warning text message ruleset
inlinewarningtxt.rules Inline warning text message ruleset
languages.rules Languages ruleset
message.size.rules Message size ruleset
recipientspamreport.rules Spam report ruleset
rejectionreport.rules Rejection report ruleset
sendercontentreport.rules Content protection report ruleset
sendererrorreport.rules Sender Error report ruleset
senderfilenamereport.rules Sender filename report ruleset
sendersizereport.rules Sender message size report ruleset
senderspamrblreport.rules Sender RBL blocked report ruleset
senderspamreport.rules Sender SPAM blocked report ruleset
senderspamsareport.rules Sender SPAM report ruleset
sendervirusreport.rules Sender Virus Blocked report ruleset
sig.imgs.names.rules Signature image names ruleset
sig.imgs.rules Signature images ruleset
sign.clean.msgs.rules Sign clean messages ruleset
spam.actions.rules Possible spam actions ruleset
spam.checks.rules Spam checks ruleset
spam.score.rules Spam score ruleset
storedcontentmessage.rules Stored content message ruleset
storedfilenamemessage.rules Stored filename message ruleset
storedsizemessage.rules Stored size message ruleset
storedvirusmessage.rules Stored virus message ruleset
text.sigs.rules Text signature ruleset
virus.checks.rules Virus checks ruleset