Changes

From Amahi Wiki
Jump to: navigation, search
3,379 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}}
 
[[Category:Apps]]
<b>DISCLAIMER:</b> 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 [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.75 05 ([[Fedora_19|Fedora 1219]]) released 9 Feb 10January 1, 2014
[http://wiki==== 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.amahi** The proposed work around is to run the ClamAV virus definition update after setup is complete.org** Comment out line 164 (<code>/imagesusr/1bin/1cfreshclam -v</Amahicode>) in ''mail-Mail-Systemsetup.sh'' script. ** Run this separately after configuration is complete when you will see the notification ''You have 2 new messages.PNG Login Screen Shot]''
==== Change Log ====
* Working upgrade Upgraded to [[Amahi_7|Amahi 7]] on [[Fedora_19|Fedora 19]]* Added 32-bit binaries* Changed web page background color* Remove quota info from web pages* Enable port 587 for Fedora 14sending mail* Removed mail quota from Postfix configuration* Fixed certificate errors when using spaces* Streamlined uninstall script for better cleanup* Added script to update mail certificate* Inserted additional logging messages ==== Future Enhancements ====* Expand instructions to include how to configure mail clients* Incorporate a mail backup mechanism* Streamline code and validate form fields* Move mailbox data files to share (See [[Amahi_Mail_System#Tips|Tips]] below) ==== How to Install/Uninstall (Automated) ====* Special access must be requested to install [http://www.amahi.org/apps/amahi-mail-system Amahi Mail System].* Once granted, install/uninstall via the Applications tab in the Amahi Dashboard. ==== How to Install (Manual) ====
==== Script download linksHere's the sequence of events to get the virtual email server up and running: ====32# Restart your [[Intro|HDA]] so it's fresh for the install. This is not required, just a recommendation.# Open terminal [[Open_Terminal_as_root|as '''root''' user]], and create a web app in Amahi named '''ams''' (Amahi application [https://www.amahi.org/apps/web-apps Web App] provides this capability.).# Navigate to '''''/var/hda/web-bit: httpapps/ams''''' directory.# Download [https://dl.getdropboxdropboxusercontent.com/u/1380867/32bitmail-virtualserver-1.05.zip mail-server-1.7505.tar.gz<br />64-bit: zip] (sha1sum 4d5623d5d00a4d66512455deaec688fc49a34782) to this directory and extract it into '''''html''''' directory of '''''ams''''' (archive [http://dl.getdropbox.com/u/1380867/64bitFilesList.html file list]).# Ensure you recursively change ownership of the files to apache:users.# Need to make a directory called '''''elevated''''' in '''''ams'''''. Copy mail-virtualsetup.sh and del-maildir.sh to that location.# Ensure mail-1setup.75sh and del-maildir.tarsh are executable.gz# Create the database and insert the data from the mail.sql file located in the '''''config''''' directory. # Navigate to <b><nowiki>http://ams<br /nowiki></b> in your favorite web browser 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. Once finished, select the click the '''NEXT''' button and the data will be added to the database.# Next, a screen will appear with a '''INSTALL''' button, click it to begin. You will also notice a log link so you can monitor the install.# 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 database. [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.
==== Updated RPMs (20 Nov 10) = Example Install Terminal Session =====32<pre>su -cd /var/hda/web-bit: httpapps/amswget https://dl.dropboxdropboxusercontent.com/u/1380867/32mail-bitserver-1.05.zipmkdir -rpmp elevatedcd htmlunzip .tar.gz<br />mail-server-1.05.zipchmod 755 *.sh64chown -bit: httpR apache:users * ../elevatedcp mail-setup.sh ../dlelevatedcp del-maildir.sh .dropbox.com/u/1380867/64elevatedhda-create-db-and-user mailmysql -bitumail -rpmspmail mail < config/mail.tar.gzsql</pre>
==== 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.
'''NOTE:''' These have not been added to the the download above or the install scripts yet===== Example Uninstall Terminal Session =====<pre>su -cd /var/hda/web-apps/ams/htmlhda-create-db-and-user -d mail. Also, ''maildrop'' is now part of the Fedora repo and no longer needs to be custom built/mail-remove.sh</pre><br>
==== How to Install Add-Ons ====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.# Enable Advanced Settings in the Amahi Dashboard (Settings-->Settings)# Create a web app in Amahi named '''webmail'''.# Open a terminal window, become '''root''', and navigate to <u>/var/hda/web-apps/webmailMailman</u> directory.# Download script file (pick the correct one for your system) to this directory and extract it into <u>html</ubr> directory of webmail.# From You can now add the <u>html</u> directory, run the '''host-update-virtual-mail-1.75.sh''' script. This will check your hostname. If it is not correct, you will be given an opportunity Mailman software to change it (See '''NOTE''' below for unusual host names).# Answer all the questions. The answers will further customize your install. '''Note:''' Amahi 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.75.sh''' script. The dependencies will be installed firstSystem. Depending on your system, 68 is Follow the typical amount for install on a new systeminstructions at [http://wiki.# Watch the script for errorsamahi. This may help narrow down the problem if you cannot log inorg/index.# Once the script is complete, note the user name and passwordphp/Amahi_Mailman Amahi Mailman].# Run the following, selecting #2 so that postfix is used to send mail:{{Code|/usr/sbin/alternatives --config mta}}
'''NOTE:''' Within a network it is possible to have a hostname that consists of xxx.xxx.xxx.xxx which this script can not recognize. Instead modify line 13 domnm=your.domain.name then run the script, all should be good (it is very rare to have a 4 level domain).* Navigate to <u>http://webmailFetchYahoo</u> and enter your login credentials.Add capability to fetch Yahoo mail:* To uninstall, run Download the '''uninstall-virtual-mail-1latest [http://fetchyahoo.75.sh''' scripttwizzler.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]
==== Mailman addon option ====You can now add the Mailman software to your Amahi Mail System. <b>NOTE:</b> Follow These scripts were adapted from the instructions at [http://wikiwww.amahihowtoforge.orgcom/virtual-users-and-domains-with-postfix-courier-mysql-and-squirrelmail-fedora-18-x86_64 Virtual Users And Domains With Postfix, Courier, MySQL And SquirrelMail (Fedora 18 x86_64)] tutorial written by [http://indextwitter.phpcom/Amahi_Mailman Amahi Mailmanfalko Falko Timme].
<b>NOTE:</b> These scripts were adapted from a tutorial authored by Falko Timme at [http[Category://www.howtoforge.com/virtual-users-domains-postfix-courier-mysql-squirrelmail-fedora-12-x86_64 http://www.howtoforge.com/virtual-users-domains-postfix-courier-mysql-squirrelmail-fedora-12-x86_64Apps]].
12,424

edits