March 21, 2006

 Exim error in install: Undefined Symbol first referenced…

When you get this error on Exim installations with Solaris:

 Undefined                       first referenced
 symbol                             in file
 libiconv                            rfc2047.o

Just specify the path to libiconv.so in your Exim Makefile:

 EXTRALIBS_EXIM=-L/usr/local/lib -liconv

Then, try to build Exim again.


Filed under: Exim — John Contad @ 5:27 am

 

March 15, 2006

 Manually deleting accounts via SQL

Question:I want to integrate @Mail into my billing system, and need a way to manually delete a user-account via an SQL query

Answer:To manually delete a user-account in @Mail via SQL you can use the following.

Note there are various tables within @Mail that start with a prefix, depending on the first character of the username ( if non A-Z, use the prefix _other )

(more...)


Filed under: API — info @ 9:56 am

 

March 14, 2006

 CPanel Install Tips

When installing @Mail Server on CPanel, keep the following in mind:Make sure that your Cpanel-POP3 service is disabled. This, along with CPIMAP, must be disabled from your WHM. The configuration panel for it can be found in the Service Manager portion of your WebHost Panel.

Make sure that you have a separate VirtualHost for the @Mail installation. You can do this by creating a barebones VirtualHost in your Apache configuration (/etc/httpd/conf/httpd.conf):

DocumentRoot /usr/local/atmail/webmail
ServerName yourdomain.com
ServerAlias mail.yourdomain.com

Replace yourdomain.com with your hostname, and
mail.yourdomain.com with your ServerAlias.

Afterwards, restart Apache:

% /etc/init.d/httpd restart

Filed under: Applications — info @ 7:48 am

 

March 13, 2006

 Saving Email Headers

You can choose to save email headers for all emails that pass by your MTA - just do the following:

- open up your /usr/local/atmail/mailserver/configure file, and look for the following line:

sms_delivery:
driver = accept
domains = ${lookup mysql {MYSQL_SMSREPLY}{$value}}
condition = "${if !eq{$h_X-Spam-Flag:}{YES} {1}{0}}"
transport = mysql_sms
unseen

- add the following on top of it:

header_logging:
driver = accept
unseen
transport = header_logging

- look for the following:

mysql_autoreply:
driver = autoreply
to = ${sender_address}
from = ${sender_address}
reply_to = "${local_part}@${domain}"
subject = "AutoReply from ${local_part}@${domain}"
text = ${lookup mysql {MYSQL_AUTOREPLY}{$value}}

- add the following below it:

header_logging:
driver=appendfile
headers_only
directory = /usr/local/atmail/mailserver/headers

- create the /usr/local/atmail/mailserver/headers directory

- restart @mail:

% /etc/init.d/atmailserver restart

This will then save all the headers in the /usr/local/atmail/mailserver/headers directory


Filed under: Exim — John Contad @ 4:45 am

 

March 7, 2006

 Spam-filtering tricks in the ACL

This is a list of ACLs that you can place in the Exim configure file to reduce Spam. You can put these in the /usr/local/atmail/mailserver/configure file, below the following line:

acl_check_content:

These are the ACL statements you can add:

deny condition = ${if !def:h_Message-ID: {1}}
     message = Message ID Missing

This basically blocks any message that doesn't have a Message-ID - since de-facto setups add a Message-ID whereas Spammers and viruses commonly don't.

deny condition = ${if !def:h_To: {1}}
    message = Message Recipient missing

This blocks messages that don't have a defined To:. Again, only Spammers make this mistake.

deny message = MIME broken ($demime_reason)
    log_message = Broken MIME ($mime_reason)
     demime = *
     condition = ${if >{$demime_errorlevel}{2}{1}{0}}

This blocks messages that are broken, MIME-wise. Again, most commonly done by viruses.

After making the changes, restart @Mail:

% /etc/init.d/atmailserver restart

Filed under: Exim — John Contad @ 3:26 am

 

March 6, 2006

 Error “Cant open the message file - its gone”

Question:

I receive the following when installing the server-mode of @Mail:

"Cant open the message file - its gone"

This is when I try to POP/IMAP a message from a local account hosted in @Mail. How do I fix this?

Answer:

This error can occur when the POP3/IMAP server does not have permissions to access the maildir of @Mail. Most likely the UID of the 'atmail' user is not set to UID 3000.

Check: cat /etc/passwd | grep atmail

If the user does not have the correct UID of 3000 the POP3/IMAP server will have incorrect permissions.

As a solution run:

# userdel atmail# adduser -u 3000 atmail

# chown -R atmail /usr/local/atmail/

# /etc/init.d/atmailserver restart

This will correctly set the permissions for @Mail.


Filed under: OS — Ben Duncan @ 2:52 am