Amahi Mail System
DISCLAIMER: Although this has been tested, use at your own risk. I cannot guarantee that it will work for your system or not cause any serious problems.
Purpose
The primary intent of the Amahi Mail System is to allow you to pull all ISP email into your server. Keep in mind this is still under development.
- It allows you to send/receive mail from your HDA. There are some quirks depending on if you have a registered domain with a paid service provider (i.e. GoDaddy, Host Gator). With these services, there is typically what is called a MX record associated with the domain name. This will allow you to send/receive mail as your hostname (i.e. myhda@home.com).
- If you use the free ones (i.e. user.yourhda.com, no-ip.org), you will have to masquerade your email address as your ISP (i.e. myhda@yourisp.com). This will ensure you can receive email replies from those you send from your HDA.
Current Version
1.70 (Fedora 10) released 8 Oct 09
Recent Changes
- Added option for secure (https) or unsecure (http) webmail access.
- Added update to yum.conf file to exclude postfix from updates.
- Updated custom RPMs to latest version for Fedora 10.
- Added automated cronjob removal for uninstall.
- Optimized script code to eliminate redundancy.
- Corrected some minor bugs.
- Added quote exceedence notification.
Script download links:
32-bit: http://dl.getdropbox.com/u/1380867/32bit-virtual-mail-1.70.tar.gz
64-bit: http://dl.getdropbox.com/u/1380867/64bit-virtual-mail-1.70.tar.gz
Install Guidance
Here's the sequence of events to get the virtual email server up and running:
- Restart your HDA so it's fresh for the install. This is not required, just a recommendation.
- Create a web app in Amahi named webmail.
- Open a terminal window, become root, and navigate to /var/hda/web-apps/webmail directory.
- Download script file (pick the correct one for your system) to this directory and extract it into html directory of webmail.
- From the html directory, run the host-update-virtual-mail-1.70.sh script. This will check your hostname. If it is not correct, you will be given an opportunity to change it.
- Answer all the questions. The answers will further customize your install. Note: Mail user name and password must be one word only (i.e. mailuser, mail_user, or mail.user are acceptable)
- Once it completes, run the install-virtual-mail-1.70.sh script. The dependencies will be installed first. Depending on your system, 68 is the typical amount for install on a new system.
- Watch the script for errors. This may help narrow down the problem if you cannot log in.
- Once the script is complete, note the user name and password.
- Navigate to http://webmail and enter your login credentials.
- To uninstall, run the uninstall-virtual-mail-1.70.sh script.
Tips
- To permanently change your hostname from localhost.localdomain, see this article.
- For https, most certificates are self-signed. You may need to follow the procedures listed here.
- These are the steps needed to add NEW users (does not include any DNS MX records). Use phpMyAdmin to modify the mail database and substitute your information accordingly.
- Creating a mail domain e.g. :
- domain is: bar.com
- server is: foo.bar.com
- admin user is: me@bar.com
- In the mail mySQL database tables:
- domain: add bar.com
- transport: add bar.com
- user: add me@bar.com
- forward: add postmaster@bar.com, me@bar.com, and abuse@bar.com
- Run the script to set up the /home/vmail/bar.com/me mail files:
- Creating a mail domain e.g. :
mailx -s Welcome me@bar.com < /var/hda/web-apps/webmail/html/patch/welcome.txt
Future Plans
- Add additional Squirrelmail plugins.
- Database front end to manage users, accounts, etc.
- Include interface with fetchmail to automatically retrieve mail.
Conclusion
You should now be able to log in to your account via webmail. There will be 2 messages, one is a welcome and the other is a SPAM test to show it's working. I forgot to mention that you can access the mail server from any email client as well within your network. Unfortunately, there is currently no front-end for administering accounts, so you will have to modify the database via phpMyAdmin or Adminer.
NOTE: These scripts were adapted from a tutorial authored by Falko Timme at http://howtoforge.net/virtual-users-domains-postfix-courier-mysql-squirrelmail-fedora-10.