Bypassing Wallace

Oli Hills oli at deathbycomputers.co.uk
Fri Nov 16 14:19:53 CET 2012


Hey All,

I have recently installed kolab 3.0 on Centos 6.3 and spent quite a while working out what was causing all my emails to end up in the post queue,  It appearas that Wallace is not functioning as expected and I had to bypass it in the postfix conf.  Due to one area of the install guide http://docs.kolab.org/en-US/Kolab_Groupware/3.0/html/Architecture_and_Design/chap-Architecture_and_Design-Kolab_Content_Filters.html#sect-Architecture_and_Design-The_Wallace_Content_Filter-Security_Enhanced_Linux_Considerations I believe this problem could be caused by selinux (possibly not as I do have it running in passive mode) I'm not a particularly experienced linux user so thought I would post my findings here and hopefully you guys can expand on the problem.


Firstly after the fresh install I was able to login to Kolab and Roundcube and send mail which did not get to it's destination and sat in the postqueue, after checking the maillog I found the below errors:-

Nov 16 13:01:56 mail postfix/smtp[13034]: connect to 127.0.0.1[127.0.0.1]:10026: Connection refused
Nov 16 13:01:56 mail postfix/smtp[13034]: A186716407B8: to=<email at address.com>, relay=none, delay=0.07, delays=0.05/0.02/0/0, dsn=4.4.1, status=deferred (connect to 127.0.0.1[127.0.0.1]:10026: Connection refused)

I eventually found that this is where Wallace should be listening so tried to restart the service to see if it was ok which produced the below:-

[root at mail ~]# service wallace restart
Stopping wallaced:                                         [FAILED]
Starting wallaced: Traceback (most recent call last):
  File "/usr/lib/python2.6/site-packages/wallace/__init__.py", line 350, in run
    self.do_wallace()
  File "/usr/lib/python2.6/site-packages/wallace/__init__.py", line 140, in do_wallace
    self.pool = multiprocessing.Pool(max_threads, worker_process, ())
  File "/usr/lib64/python2.6/multiprocessing/__init__.py", line 227, in Pool
    return Pool(processes, initializer, initargs)
  File "/usr/lib64/python2.6/multiprocessing/pool.py", line 84, in __init__
    self._setup_queues()
  File "/usr/lib64/python2.6/multiprocessing/pool.py", line 131, in _setup_queues
    self._inqueue = SimpleQueue()
  File "/usr/lib64/python2.6/multiprocessing/queues.py", line 328, in __init__
    self._rlock = Lock()
  File "/usr/lib64/python2.6/multiprocessing/synchronize.py", line 117, in __init__
    SemLock.__init__(self, SEMAPHORE, 1, 1)
  File "/usr/lib64/python2.6/multiprocessing/synchronize.py", line 49, in __init__
    sl = self._semlock = _multiprocessing.SemLock(kind, value, maxvalue)
OSError: [Errno 13] Permission denied
Traceback occurred, please report a bug at http://bugzilla.kolabsys.com
                                                           [  OK  ]

>From this I deduced that Wallace was not working as expected I checked to see if it was listening on the expected socket but it is not "netstat -tap |grep 10026" returns nothing.  From here I decided to bodge round this to get my email working and changed the /etc/postfix/master.cf to read:-

# Listener to re-inject email from Amavisd into Postfix
127.0.0.1:10025 inet    n   -   n   -       100 smtpd
    -o content_filter=smtp-wallace:[127.0.0.1]:10027

Which allows email to be sent and received although not ideal as Wallace is not checking emails.




More information about the users mailing list