Enhance ClearOS 6 Password Policy

Background

Our customer using ClearOS 6 (professional edition) to store user password and almost all applications using it as external authentication so user only has to remember one password and Zimbra is one of the application.

Recently the public IP that used as mail outgoing traffic being listed in RBL and by our check in server we found there are some user account has been hijacked so it’s sending spam email to outside domain (gmail.com, outlook.com, etc) then i set suspected status to close in zimbra also reset it’s password randomly  but it’s happen quite frequently.

Then i created simple php script using clearOS API to scan weak password (based on list), surprisingly there are bunch of user using weak password such as “Passwd11”, “Paasword88”, etc. so i conclude the builtin password policy in ClearOS is not good enough to prevent it.

Solution

Based on my experience create and modifying ClearOS module (as it’s just a PHP code) i modified ClearOS user module. to increase password policy by following criteria:

  • Maximum length
  • Minimum length
  • Minimum uppercase
  • Minimum numeric character
  • Minimum punctuation character
  • Forbid user to use username within password
  • Forbid user to use password that listed in weak password list.

Continue reading “Enhance ClearOS 6 Password Policy”

Icinga2 ido-mysql schema issue

I use icinga2 version 2.4 in my testing environment but unfortunately it doesn’t include with several several feature that i need to RnD one of them is InfluxDB Writer. so by just adding icinga2 PPA the latest version has been installed (2.6), but icinga2 cannot running with following error message in log file

critical/IdoMysqlConnection: Schema version ‘1.14.0’ does not match the required version ‘1.14.2’ (or newer
Context:
(0) Reconnecting to MySQL IDO database ‘ido-mysql’
icinga2.service: Main process exited, code=exited, status=1/FAILURE

So the root cause of this issue is different db schema between icinga2 version 2.4 and 2.6 in ido-mysql. then i apply new schema for 2.5 to 2.6 (must be sequentially).

for 2.5
mysql -uroot icinga2 < /usr/share/icinga2-ido-mysql/schema/upgrade/2.5.0.sql

then 2.6
mysql -uroot icinga2 < /usr/share/icinga2-ido-mysql/schema/upgrade/2.6.0.sql

Then restarting icinga2 service
# systemctl restart icinga2

[Zimbra] Sender Restriction to Distribution List

Distribution list in Zimbra is a mail grouping that makes broadcast mail much easier, but in some corporation there is restriction for limiting only for such user that can send mail to distribution list. If you are using zimbra Network Edition you may just using Zimbra Admin Console but CLI still best friend for those who using OSE 🙂 .

Grant user access for account omar@mymail.ok to send to such distribution list

zmprov grr dl distme@mymail.ok usr admin@mymail.ok sendToDistList

Revoking user access.

zmprov rvr dl distme@mymail.ok usr omar@jmymail.ok sendToDistList

Get access list (grants) to distribution list called distme@mymail.ok

zmprov gg -t dl distme@mymail.ok

Note:

  • You must activate Zimbra Milter Service for using this service.
  • i just using grantee-type usr (user) in this example, you may change to another grantee-type if you want to (grp, egp, all, dom, edom, gst, key, pub, email).
  • In every time the rights is changed you must reload mta service by run command zmmtact reload

[Django] Exception AppRegistryNotReady

I Just migrate all projects application into Django version 1.8, all  django apps are migrated smoothly but there is an error in simple my script that using Django ORM (used for background tasks).


...

django.core.exceptions.AppRegistryNotReady: Models aren't loaded yet.


 

After some searching in google this page helped me. so i just add these line of code on top of my django script.


import django
django.setup()

[ClearOS] Increase Content Filter Performance Using E2Guardian

ClearOS 6 using dansguardian version 2.10 as it’s web content filter service, i’ve been faced dansguardian performance issue in large client usage event though Performance Level has been set to Extra Large, then i’d like to upgrade dansguardian version but it’s seem there is no development activities since 2012. My finding resulted another alternative to dansguardian that has almost exactly has same configuration file, that is e2guardian. most knows as dansguardian’s fork.

e2guardian can be installed by compiling from it’s source code and for increasing performance File Descriptor will be increased until 8192 (1024 * 8) due i will pull up e2guardian’s maxchildren.

Continue reading “[ClearOS] Increase Content Filter Performance Using E2Guardian”