Changes

From Amahi Wiki
Jump to: navigation, search
4,216 bytes added ,  00:50, 20 March 2015
image =Warning.png|
heading =WARNING|
message = This should only be attempted by advanced users.<br>It is still under development.}}<b>DISCLAIMER:</b> This is for Amahi 7 on [[Fedora_19|Fedora 19]] <u>ONLY</u>! Although tested, use at your own risk. I cannot guarantee that it will work for your system or not cause any serious problems.<br />
<br />
{{MessageBox|backgroundcolor = AliceBlue |image =Msgbox-WOPr.png‎|heading =Work In Progress|message = Converting to Fedora 14}}
==== Purpose ====
The primary intent of the [http://www.amahi.org/apps/amahi-mail-system Amahi Mail System ] is to allow you to pull all ISP email into use your Home Digital Assistant ([[Intro|HDA]]) as a mail server. Keep in mind this is still under development.
* It allows you to send/receive mail from your [[Intro|HDA]]. There are some quirks depending on if you have a registered domain with a paid service provider (i.e. [http://www.godaddy.com GoDaddy], [http://www.hostgator.com Host Gator], etc). 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, [http://www.no-ip.org no-ip.org], etc), you will have to [[Masquerade_email_address|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 [[Intro|HDA.'''Note:''' There is now a complete guide to installing the Amahi Mail System with a free ddns and using a gmail account at [http://wiki.amahi.org/index.php/Amahi_Mail_-_The_Free_Way Amahi Mail - The Free Way]].
==== Current Version ====
1.8 05 ([[Fedora_19|Fedora 1419]]) released 16 Apr 11January 1, 2014 ==== Known Issues ====* During the configuration, the ClamAV definitions download sometimes takes too long. It can cause the setup to fail, depending on availability of their server.** The proposed work around is to run the ClamAV virus definition update after setup is complete.** Comment out line 164 (<code>/usr/bin/freshclam -v</code>) in ''mail-setup.sh'' script. ** Run this separately after configuration is complete when you will see the notification ''You have 2 new messages.''
==== Change Log ====
* Upgraded to [[Amahi_7|Amahi 7]] on [[Fedora_19|Fedora 1419]]* Added a Web32-based installerbit binaries* Changed web page background color* Remove quota info from web pages* Enable port 587 for sending mail* Removed custom built mail quota from Postfix (with Quota support) and Maildrop packagesconfiguration* Fixed certificate errors when using spaces* Streamlined uninstall script for better cleanup* Added script to update mail certificate* Included Fedora Postfix and Maildrop packagesInserted additional logging messages ==== Future Enhancements ====* Removed DCC due Expand instructions to include how to instability on installconfigure mail clients* Incorporate a mail backup mechanism* Packed SquirrelMail separatelyStreamline code and validate form fields* Store settings in MySQL database.Move mailbox data files to share (See [[Amahi_Mail_System#Tips|Tips]] below)
==== Script download links: How to Install/Uninstall (Automated) ====32-/64-bit: * Special access must be requested to install [http://dlwww.getdropboxamahi.comorg/u/1380867apps/amahi-mail-serversystem Amahi Mail System].tar* Once granted, install/uninstall via the Applications tab in the Amahi Dashboard.gz<br /> ==== How to Install (Manual) ====
==== How to Install ====
Here's the sequence of events to get the virtual email server up and running:
# Restart your [[Intro|HDA ]] so it's fresh for the install. This is not required, just a recommendation.# Enable Advanced Settings in the Amahi Dashboard (Settings-->Settings)# Create Open terminal [[Open_Terminal_as_root|as '''root''' user]], and create a web app in Amahi named '''mailams'''(Amahi application [https://www.amahi.org/apps/web-apps Web App] provides this capability.).# Open a terminal window, become Navigate to '''root''', and navigate to <u>/var/hda/web-apps/mail</u> ams''''' directory.# Download script file [https://dl.dropboxusercontent.com/u/1380867/mail-server-1.05.zip mail-server-1.05.zip] (pick the correct one for your systemsha1sum 4d5623d5d00a4d66512455deaec688fc49a34782) to this directory and extract it into <u>'''''html<''''' directory of '''''ams''''' (archive [http://dl.getdropbox.com/u> /1380867/FilesList.html file list]).# Ensure you recursively change ownership of the files to apache:users.# Need to make a directory of called '''''elevated''''' in '''''ams'''''. Copy mail-setup.sh and del-maildir.sh to that location.# Ensure mail-setup.sh and del-maildir.sh are executable.# Create the database and insert the data from the mail.sql file located in the '''''config''''' directory.# Navigate to <b><nowiki>http://mail ams</nowiki></b> in your favorite web broswerbrowser and you should see the login page.# Enter credentials (admin/amahi) and choose Login to display the install page (See [[Amahi_Mail_System#Tips|Tips]] for how to change the login info).# Complete all the required info. Ensure you do not uses spaces in any fields (i.e. mycity, my_city, or my.city are acceptable). Once finished, select the click the SUBMIT '''NEXT''' button and the data will be added to the database.# Next, a screen will appear with a '''INSTALL ''' button. Click , click it to begin install. You will also notice a log link that so you can select to watch monitor the install.# Watch Use your favorite mail client, [http://www.amahi.org/apps/roundcube Roundcube], [http://www.amahi.org/apps/atmail AtMail], or [http://www.amahi.org/apps/squirrelmail SquirrelMail] to access your new mail account.# Use the built-in tool to manage Virtual User information in the log for errorsdatabase. This may help narrow down the problem if you cannot log in[http://www.amahi.org/apps/dadabik DadaBIK], [http://www.amahi.org/apps/phpmyadmin phpMyAdmin], or [http://www.amahi.org/apps/adminer Adminer] can also be utilized.
==== How to Uninstall =Example Install Terminal Session =====<pre>su -cd /var/hda/web-apps/amswget https://dl.dropboxusercontent.com/u/1380867/mail-server-1.05.zipmkdir -p elevatedcd htmlunzip ../mail-server-1.05.zipchmod 755 *.shchown -R apache:users * To remove the app, uninstall via the Amahi Dashboard like normal. You can also run the '''./elevatedcp mail-removesetup.sh''' script in the <u>../varelevatedcp del-maildir.sh ../elevatedhda/web-appscreate-db-and-user mailmysql -umail -pmail mail < config/mail.sql</upre> directory but it is not necessary.
==== Mailman How to Uninstall (Manual) ====To uninstall, do the following:# Open terminal [[Open_Terminal_as_root|as '''root''' user]], and navigate to '''''/var/hda/web-apps/ams/html''''' directory.# Remove the database.# Ensure mail-remove.sh is executable.# From the '''''html''''' directory, run the script. This may take a while to complete.# Remove the web app in Amahi named '''ams''' (Amahi application [https://www.amahi.org/apps/web-apps Web App] provides this capability.) and close the terminal window. ===== Example Uninstall Terminal Session =====<pre>su -cd /var/hda/web-apps/ams/htmlhda-create-db-and-user -d mail./mail-remove.sh</pre><br> ==== Add-On Option Ons ====<u>Mailman</u><br>
You can now add the Mailman software to your Amahi Mail System. Follow the instructions at [http://wiki.amahi.org/index.php/Amahi_Mailman Amahi Mailman].
 
<u>FetchYahoo</u>
Add capability to fetch Yahoo mail:
* Download the latest [http://fetchyahoo.twizzler.org/ FetchYahoo]
* Install instructions included
==== Tips ====
* To permanently change your hostname from '''localhost.localdomain''', see this [http://www.labtestproject.com/using_linux/permanently_change_hostname_on_fedora article].
* For https, most certificates are self-signed. You may need to follow the procedures listed [[Web_Browser_Tips|here]] when accessing [http://webmail http://webmail].
* These are the steps needed to add '''NEW''' users to the foo.com domain (does not include any DNS MX records). Use [http://www.amahi.org/apps/phpmyadmin phpMyAdmin] to modify the ''mail'' database and substitute your information accordingly.
** In the '''mail''' mySQL database:
*** In the '''users''' table:
**** Insert a new record with the following information...
***** ''user'': <u>user@foo.com</u>
***** ''password'': choose 'ENCRYPT' for the function and enter the users password. (Alternatively, you can have the user enter their password and click the "Go" button)
***** ''quota'': do NOT edit this field (unless you know what you are doing)
***** Click the "Go" button
*** In the '''forwardings''' table:
**** Insert a new record for each forwarded email addresses to <u>user@foo.com</u> and click the "Go" button
** Run the command line below to set up the /home/vmail/foo.com/user mail files:
{{Code|mailx -s Welcome user@foo.com < /var/hda/web-apps/webmail/html/patch/welcome.txt}}
* These are the steps needed to add an additional mail domain (does not include any DNS MX records). Use [http://www.amahi.org/apps/phpmyadmin phpMyAdmin] to modify the ''mail'' database and substitute your information accordingly.
** Creating a mail domain e.g. :
*** ''domain'' is: <u>bar.com</u>
*** ''server'' is: <u>foo.bar.com</u>
*** ''admin user'' is: <u>me@bar.com</u>
** In the mail mySQL database tables:
*** ''domain'': add <u>bar.com</u>
*** ''transport'': add <u>bar.com</u>
*** ''user'': add <u>me@bar.com</u>
*** ''forward'': add <u>postmaster@bar.com</u>, and <u>abuse@bar.com</u> to <u>me@bar.com</u>
** Run the command line below to set up the /home/vmail/bar.com/me mail files:
{{Code|mailx -s Welcome me@bar.com < /var/hda/web-apps/webmail/html/patch/welcome.txt}}
* For every domain supported, the following either need to be added as users or forwarded. Without them a site MAY end up on various spam block lists:
postmaster@foo.com
abuse@foo.com
* Some ISPs block port 25 for mail. Thus a remote user would be able to retrieve mail, but not send mail. To accommodate this, port 587 is used by email clients for sending mail.
** To enable port 587, edit /etc/postfix/master.cf and uncomment the line starting with "# submission"
** Reload postfix
* Add capability to fetch Yahoo mail:
# Download the latest [http://fetchyahoo.twizzler.org/ FetchYahoo]
# Install instructions included
* You can change the Login Credentials for the integrated database manager/web-based installer by doing the following:** Open the Login-class.php file in the '''''/var/hda/web-apps/ams/html''''' directory** On lines 29 and 32, change to whatever works for you** Save and now you can log in using the new credentials * Change the sender default email address format (i.e. root@hda.amahi.net) by following [[Masquerade_email_address|Masquerade email address]] tutorial. * Update mail certificate** Should you need to update the mail certificates, use the mail-cert-update.sh script.** Prior to executing the script, you will want to update the values for Country, State, City, Organization, Organizational Unit, and Number of Days for the certificate to be valid.** Once complete, you can execute the script to update the mail server certificates. su - cd /var/hda/web-apps/ams/html ./mail-cert-update.sh * Move mailbox data files to share** <u>MUST</u> be accomplished prior to doing the install (Step #12).** Will ensure if you uninstall, mailbox data files will be preserved.** Create a new [[Storage_and_file_sharing#Step_2:_Create_Shares|share]] named <b>ams</b> in Amahi dashboard Shares tab.** Open terminal [[Open_Terminal_as_root|as '''root''' user]] and execute the following commands: cd /var/hda/web-apps/ams sed -i '57s|/home/vmail|/var/hda/files/ams|' html/mail-setup.sh; sed -i '65s|/home/vmail|/var/hda/files/ams|' html/mail-setup.sh; sed -i '74s|/home/vmail|/var/hda/files/ams|' html/users.php; sed -i '12s|/home/vmail|/var/hda/files/ams|' html/config/authmysqlrc; ==== Future Plans Troubleshooting====* Add additional Squirrelmail Should your mail server hang up and stop working, you can most likely fix it with the <b>mail-stop.sh</b> and <b>mail-start.sh</b> scripts included in the app. Open terminal [[httpOpen_Terminal_as_root|as '''root''' user]] and do the following:<pre>cd /var/hda/web-apps/ams/squirrelmailhtml.org/pluginsmail-stop.sh./mail-start.sh</pre> * If you get the message " warning: SASL authentication failure: No worthy mechs found.php plugins" [[Open_Terminal_as_root|open a terminal as '''root''']]and execute the following: yum install cyrus-sasl{,-plain}: Restart Postfix systemctl restart postfix<!--* Add '''NEW''' users to the foo.com domain (does not include any DNS MX records). Modify the '''mail''' database and substitute your information accordingly:* Database front end to manage # In the '''users''' table, insert a new record with the following information...*#* ''user'': <u>user@foo.com</u>*#* ''password'': choose 'ENCRYPT' for the function and enter the userspassword. (Alternatively, you can have the user enter their password)*#* ''quota'': do NOT edit this field (unless you know what you are doing)*# In the '''forwardings''' table, accountsinsert a new record for each forwarded email addresses to <u>user@foo.com</u>*# Run the command line below to set up the '''''/home/vmail/foo.com/user''''' mail files:{{Code|mailx -s Welcome user@foo.com < /var/hda/web-apps/ams/html/config/welcome.txt}}* Add an additional mail domain (does not include any DNS MX records). Modify the ''mail'' database and substitute your information accordingly:*# Scenario - Creating a mail domain e.g. :*#* ''domain'' is: <u>bar.com</u>*#* ''server'' is: <u>foo.bar.com</u>*#* ''admin user'' is: <u>me@bar.com</u>*# In the mail mySQL database tables:*#* ''domain'': add <u>bar.com</u>*#* ''transport'': add <u>bar.com</u>*#* ''user'': add <u>me@bar.com</u>*#* ''forward'': add <u>postmaster@bar.com</u>, etcand <u>abuse@bar.com</u> to <u>me@bar.com</u>* Include interface with fetchmail # Run the command line below to automatically retrieve set up the '''''/home/vmail/bar.com/me''''' mailfiles:{{Code|mailx -s Welcome me@bar.com < /var/hda/web-apps/ams/html/config/welcome.txt}}* Change dependency For every domain supported, the following either need to be added as users or forwarded. Without them a site MAY end up on MYSQL root various spam block lists:{{Text|Text=postmaster@foo.comabuse@foo.com}}--><!--* Some ISPs block port 25 for mail. Thus a remote user would be able to retrieve mail, but not send mail. To accommodate this, port 587 is used by email clients for database creationsending mail.*# To enable port 587, edit '''''/etc/postfix/master.cf''''' and uncomment the line starting with "# submission"*# Reload postfix -->
==== 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 Direct any questions or comments to mention that you can access the mail server from any email client (i[https://forums.eamahi. Thunderbird, MS Outlook, etc) as well within your networkorg the forums]
<b>NOTE:</b> These scripts were adapted from a tutorial authored by Falko Timme at the [http://www.howtoforge.com/virtual-users-and-domains-with-postfix-courier-mysql-and-squirrelmail-fedora-1418-x86_64 Virtual Users And Domains With Postfix, Courier, MySQL And SquirrelMail (Fedora 14 18 x86_64)] tutorial written by [http://twitter.com/falko Falko Timme].
[[Category:Apps]]
12,424

edits