From 7c6b7776639c72a42167824e954a0fa2a0263cf6 Mon Sep 17 00:00:00 2001 From: Carla Schroder Date: Wed, 27 Aug 2014 21:20:19 -0700 Subject: [PATCH 1/8] Add SMTP Config Wizard, Editable Email Templates --- .../configuration/configuration_mail.rst | 309 +++++++++++------- 1 file changed, 196 insertions(+), 113 deletions(-) diff --git a/admin_manual/configuration/configuration_mail.rst b/admin_manual/configuration/configuration_mail.rst index 23b17624d..96c69bba9 100644 --- a/admin_manual/configuration/configuration_mail.rst +++ b/admin_manual/configuration/configuration_mail.rst @@ -1,21 +1,139 @@ Mail Configuration ================== -ownCloud does not contain a full email program but contains some parameters to -allow to send e.g. password reset email to the users. This function relies on -the `PHPMailer library `_. To -take advantage of this function it needs to be configured properly. +ownCloud is capable of sending password reset emails, notifying users of new +file shares, changes in files, and activity notifications. Your users configure +which notifications they want to receive on their Personal pages. + +ownCloud does not contain a full email server, but rather connects to your +existing mail server. You must have a functioning mail server for ownCloud to be +able to send emails. You may have a mail server on the same machine as ownCloud, +or it may be a remote server. + +ownCloud 7 introduces a new feature, the graphical SMTP Configuration Wizard. + +.. figure:: ../images/smtp-config-wizard.png + +With the new wizard, connecting ownCloud to your mail server is fast and easy. +The wizard fills in the values in ``config/config.php``, so you may use either +or both as you prefer. + +The ownCloud SMTP wizard supports three types of mail server connections: SMTP, +PHP, and Sendmail. Use the SMTP configurator for a remote server, and PHP or +Sendmail when your mail server is on the same machine as ownCloud. + +.. note:: The Sendmail option refers to the Sendmail SMTP server, and any +drop-in Sendmail replacement such as Postfix, Exim, or Courier. All of these +include a ``sendmail`` binary, and are freely-interchangeable. + +Configuring an SMTP Server +------------------------- + +You need the following information from your mailserver administrator to +connect ownCloud to a remote SMTP server: + +* Encryption type: None, SSL, or TLS + +* The From address you want your outgoing ownCloud mails to use + +* Whether authentication is required + +* Authentication method: None, Login, Plain, or NT LAN Manager + +* The server's IP address or fully-qualified domain name + +* Login credentials, if required + +.. figure:: ../images/smtp-config-smtp.png + +Your changes are saved immediately, and you can click the Send Email button to +test your configuration. This sends a test message to the email address you +configured on your Personal page. The test message says:: + + If you received this email, the settings seem to be correct. + + -- + ownCloud + web services under your control + +Configuring PHP and Sendmail +------------------------- + +Configuring PHP or Sendmail requires only that you select one of them, and then +enter your desired return address. + +.. figure:: ../images/smtp-config-php-sendmail.png + +How do you decide which one to use? PHP mode uses your local ``sendmail`` +binary. Use this if you want to use ``php.ini`` to control some of your mail +server functions, such as setting paths, headers, or passing extra command +options to the ``sendmail`` binary. These vary according to which server you +are using, so consult your server's documentation to see what your options are. + +In most cases the ``smtp`` option is best, because it removes the extra step of +passing through PHP, and you can control all of your mail server options in one +place, in your mail server configuration. -Requirements ------------- -Different requirements need to be matched, depending on the environment which -you are using and the way how you want to send email. You can choose between -**SMTP**, **PHP mail**, **Sendmail** and **qmail**. +Using Email Templates +--------------------- -Parameters +Another useful new feature is editable email templates. Now you can edit +ownCloud's email templates on your Admin page. These are your available +templates: + +* Sharing email (http) -- HTML version of emails notifying users of new file + shares + +* Sharing email -- Plain text email notifying users of new file shares + +* Lost password mail -- Password reset email for users who lose their passwords. + +* Activity notification mail -- Notification of activities that users have + enabled in the Notifications section of their Personal pages. + +In addition to providing the email templates, this feature enables you to apply +any preconfigured themes to the email. + +To modify an email template to users: + +1. Access the Admin page. + +2. Scroll to the Mail templates section. + +3. Select a template from the drop-down menu. + +4. Make any desired modifications to the template. + +The templates are written in PHP and HTML, and are already loaded with the +relevant variables such as username, share links, and filenames. You can, if you +are careful, edit these even without knowing PHP or HTML; don't touch any of the +code, but you can edit the text portions of the messages. For example, this the +lost password mail template: + +.. code-block:: php + + t('Use the following link to + reset your password: {link}')); + +You could change the text portion of the template, ``Use the following link to +reset your password:`` to say something else, such as ``Click the following link +to reset your password. If you did not ask for a password reset, ignore this +message.`` + +Again, be very careful to change nothing but the message text, because the +tiniest coding error will break the template. + +.. note:: You can edit the templates directly in the template text box, or you +can copy and paste them to a text editor for modification and then copy and +paste them back to the template text box for use when you are done. + +Setting Mail Server Parameters in config.php ---------- -All parameters need to be set in :file:`config/config.php` +If you prefer, you may set your mail server parameters in ``config/config.php''. +The following examples are for SMTP, PHP, Sendmail, and Qmail. SMTP ~~~~ @@ -23,8 +141,8 @@ If you want to send email using a local or remote SMTP server it is necessary to enter the name or IP address of the server, optionally followed by a colon separated port number, e.g. **:425**. If this value is not given the default port 25/tcp will be used unless you will change that by modifying the -**mail_smtpport** parameter. Multiple server can be entered separated by -semicolon: +**mail_smtpport** parameter. Multiple servers can be entered, separated by +semicolons: .. code-block:: php @@ -90,7 +208,7 @@ uses the default port 25/tcp: "mail_smtpsecure" => 'tls', And finally it is necessary to configure if the SMTP server requires -authentication, if not, the default values can be taken as it. +authentication, if not, the default values can be taken as is. .. code-block:: php @@ -185,49 +303,29 @@ To test your email configuration, save your email address in your personal settings and then use the **Send email** button in *Email Server* section of the Admin settings page. -Using Email Templates ---------------------- - -As an added convenience to administrators, ownCloud provides several Email templates that you can use for sending messages to users. - -#.. figure:: ../images/remote_shares.png - -Found on the Admin page, you can choose from the following templates: - -* Sharing email (http) -- You can use this template to send emails to users about sharing links. - -* Sharing email -- You can use this template to send emails to users about sharing files. - -* Lost password mail -- When managing users, you can use this template to send emails to users about lost password recovery. - -* Activity notification mail -- You can use this template to send emails to users detailing their ownCloud activity. - -In addition to providing the Email templates, this feature enables you to apply any preconfigured themes to the email. - -To modify an email template to users: - -1. Access the Admin page. - -2. Scroll to the Mail templates section. - -3. Select a template from the drop-down menu. - -4. Make any desired modifications to the template. - - .. note:: You can edit the templates directly in the template text box or you can copy and paste them to a text editor for modification and then copy and paste them back to the template text box for use when you are done. - -5. Click ``Save`` to the file modifications. - - Once complete, the files are sent to users who choose to receive notifications through email. - - .. note:: ownCloud populates the variables with usernames and filenames prior to sending the email. Troubleshooting ----------------- +--------------- + +If you are unable to send email, try turning on debugging. Do this by enabling +the ``mail_smtpdebug parameter`` in ``config/config.php``. + +.. code-block:: php + + true; + +.. note:: Immediately after pressing the **Send email** button, as described +before, several **SMTP -> get_lines(): ...** messages appear on the screen. +This is expected behavior and can be ignored. **Question**: Why is my web domain different from my mail domain? -**Answer**: The default domain name used for the sender address is the hostname where your ownCloud installation is served. If you have a different mail domain name you can override this behavior by setting the following configuration parameter: +**Answer**: The default domain name used for the sender address is the hostname +where your ownCloud installation is served. If you have a different mail domain +name you can override this behavior by setting the following configuration +parameter: .. code-block:: php @@ -235,7 +333,8 @@ Troubleshooting "mail_domain" => "example.com", -This setting results in every email sent by ownCloud (for example, the password reset email) having the domain part of the sender address appear as follows:: +This setting results in every email sent by ownCloud (for example, the password +reset email) having the domain part of the sender address appear as follows:: no-reply@example.com @@ -248,31 +347,56 @@ This setting results in every email sent by ownCloud (for example, the password :: PING smtp.server.dom (ip-address) 56(84) bytes of data. - 64 bytes from your-server.local.lan (192.168.1.10): icmp_req=1 ttl=64 time=3.64 ms - 64 bytes from your-server.local.lan (192.168.1.10): icmp_req=2 ttl=64 time=0.055 ms - 64 bytes from your-server.local.lan (192.168.1.10): icmp_req=3 ttl=64 time=0.062 ms + 64 bytes from your-server.local.lan (192.168.1.10): icmp_req=1 ttl=64 + time=3.64ms -**Question**: How can I find out if the SMTP server is listening on a specific TCP port? -**Answer**: SMTP servers usually listen on port **25/tcp** (smtp). In -rare circumstances the SMTP server also listens on the outdated port **465/tcp** (smtps). You can use the ``telnet`` command to determining if a port is available:: +**Question**: How can I find out if the SMTP server is listening on a specific +TCP port? - telnet smtp.domain.dom 25 +**Answer**: The best way to get mail server information is to ask your mail +server admin. If you are the mail server admin, or need information in a +hurry, you can use the ``netstat`` command. This example shows all active +servers on your system, and the ports they are listening on. The SMTP server is +listening on localhost port 25: :: - Trying 192.168.1.10... - Connected to smtp.domain.dom. - Escape character is '^]'. - 220 smtp.domain.dom ESMTP Exim 4.80.1 Tue, 22 Jan 2013 22:28:14 +0100 +# netstat -pant -**Question**: How can I determine if the SMTP server supports the outdated SMTPS protocol? +:: -**Answer**: A good indication that the SMTP server supports the SMTPS protocol is that it is listening on port **465/tcp**. See the previous answer to use the ``telnet`` command for checking the port availability. +Active Internet connections (servers and established) +Proto Recv-Q Send-Q Local Address Foreign Address State ID/Program name +tcp 0 0 0.0.0.0:631 0.0.0.0:* LISTEN 4418/cupsd +tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 2245/exim4 +tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 1524/mysqld -**Question**: How can I determine if the SMTP server supports the TLS protocol? +* 25/tcp is unencrypted smtp -**Answer**: SMTP servers usually announce the availability of STARTTLS immediately after a connection has been established. You can easily check this using the ``telnet`` command. +* 110/tcp/udp is unencrypted pop3 + +* 143/tcp/udp is unencrypted imap4 + +* 465/tcp is encrypted ssmtp + +* 993/tcp/udp is encrypted imaps + +* 995/tcp/udp is encrypted pop3s + + +**Question**: How can I determine if the SMTP server supports the outdated SMTPS +protocol? + +**Answer**: A good indication that the SMTP server supports the SMTPS protocol +is that it is listening on port **465**. + +**Question**: How can I determine what authorization and encryption protocols +the mail server supports? + +**Answer**: SMTP servers usually announce the availability of STARTTLS +immediately after a connection has been established. You can easily check this +using the ``telnet`` command. .. note:: You must enter the marked lines to obtain the information displayed. @@ -286,56 +410,15 @@ rare circumstances the SMTP server also listens on the outdated port **465/tcp** Connected to smtp.domain.dom. Escape character is '^]'. 220 smtp.domain.dom ESMTP Exim 4.80.1 Tue, 22 Jan 2013 22:39:55 +0100 - EHLO your-server.local.lan # <<< enter this command + EHLO your-server.local.lan # <<< enter this command 250-smtp.domain.dom Hello your-server.local.lan [ip-address] 250-SIZE 52428800 250-8BITMIME 250-PIPELINING - 250-AUTH PLAIN LOGIN CRAM-MD5 - 250-STARTTLS # <<< STARTTLS is supported! + 250-AUTH PLAIN LOGIN CRAM-MD5 # <<< Supported auth protocols + 250-STARTTLS # <<< Encryption is supported 250 HELP - QUIT # <<< enter this command + QUIT # <<< enter this command 221 smtp.domain.dom closing connection Connection closed by foreign host. -**Question**: How can I determine which authentication types or methods the SMTP server supports? - -**Answer**: SMTP servers usually announce the available authentication types or methods immediately following the establishment of a connection. You can easily check this using the telnet command. - -.. note:: You must enter the marked lines to obtrain the information displayed. - -:: - - telnet smtp.domain.dom 25 - -:: - - Trying 192.168.1.10... - Connected to smtp.domain.dom. - Escape character is '^]'. - 220 smtp.domain.dom ESMTP Exim 4.80.1 Tue, 22 Jan 2013 22:39:55 +0100 - EHLO your-server.local.lan # <<< enter this command - 250-smtp.domain.dom Hello your-server.local.lan [ip-address] - 250-SIZE 52428800 - 250-8BITMIME - 250-PIPELINING - 250-AUTH PLAIN LOGIN CRAM-MD5 # <<< available Authentication types - 250-STARTTLS - 250 HELP - QUIT # <<< enter this command - 221 smtp.domain.dom closing connection - Connection closed by foreign host. - -Enabling Debug Mode -------------------- - -If you are unable to send email, it might be useful to activate further debug messages by enabling the mail_smtpdebug parameter:: - -.. code-block:: php - - true; - -.. note:: Immediately after pressing the **Send email** button, as described before, several **SMTP -> get_lines(): ...** messages appear on the screen. This is expected behavior and can be ignored. - From 6d39af64954bb4989796066a2e6dec0eb258c5f2 Mon Sep 17 00:00:00 2001 From: Carla Schroder Date: Wed, 27 Aug 2014 21:30:25 -0700 Subject: [PATCH 2/8] Add screenshots --- .../configuration/configuration_mail.rst | 1 + .../images/smtp-config-php-sendmail.png | Bin 0 -> 13106 bytes admin_manual/images/smtp-config-smtp.png | Bin 0 -> 23999 bytes admin_manual/images/smtp-config-wizard.png | Bin 0 -> 23571 bytes 4 files changed, 1 insertion(+) create mode 100644 admin_manual/images/smtp-config-php-sendmail.png create mode 100644 admin_manual/images/smtp-config-smtp.png create mode 100644 admin_manual/images/smtp-config-wizard.png diff --git a/admin_manual/configuration/configuration_mail.rst b/admin_manual/configuration/configuration_mail.rst index 96c69bba9..073fd5729 100644 --- a/admin_manual/configuration/configuration_mail.rst +++ b/admin_manual/configuration/configuration_mail.rst @@ -1,5 +1,6 @@ Mail Configuration ================== + ownCloud is capable of sending password reset emails, notifying users of new file shares, changes in files, and activity notifications. Your users configure which notifications they want to receive on their Personal pages. diff --git a/admin_manual/images/smtp-config-php-sendmail.png b/admin_manual/images/smtp-config-php-sendmail.png new file mode 100644 index 0000000000000000000000000000000000000000..45925516ff2f932b2e40d6c3d8de112c13fb6fb5 GIT binary patch literal 13106 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 R8Gea)AgwG_fPC`ee*i-`y-WZA literal 0 HcmV?d00001 diff --git a/admin_manual/images/smtp-config-smtp.png b/admin_manual/images/smtp-config-smtp.png new file mode 100644 index 0000000000000000000000000000000000000000..9146c9ed05b1cb860ced054160b68d57d01bbbb1 GIT binary patch literal 23999 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 literal 0 HcmV?d00001 From 704bf9e6004357d31abaa2f4d4585deb53e0b187 Mon Sep 17 00:00:00 2001 From: Carla Schroder Date: Wed, 27 Aug 2014 21:34:05 -0700 Subject: [PATCH 3/8] Fix code markup --- admin_manual/configuration/configuration_mail.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/admin_manual/configuration/configuration_mail.rst b/admin_manual/configuration/configuration_mail.rst index 073fd5729..b8b124e14 100644 --- a/admin_manual/configuration/configuration_mail.rst +++ b/admin_manual/configuration/configuration_mail.rst @@ -361,11 +361,11 @@ hurry, you can use the ``netstat`` command. This example shows all active servers on your system, and the ports they are listening on. The SMTP server is listening on localhost port 25: -:: +.. code-block:: # netstat -pant -:: +.. code-block:: Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State ID/Program name From d2981b46f5bba08e2bb02a578140a9a8eb1b3fcb Mon Sep 17 00:00:00 2001 From: Carla Schroder Date: Wed, 27 Aug 2014 21:38:44 -0700 Subject: [PATCH 4/8] More markup fixes. --- admin_manual/configuration/configuration_mail.rst | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/admin_manual/configuration/configuration_mail.rst b/admin_manual/configuration/configuration_mail.rst index b8b124e14..87d1f59ce 100644 --- a/admin_manual/configuration/configuration_mail.rst +++ b/admin_manual/configuration/configuration_mail.rst @@ -359,13 +359,13 @@ TCP port? server admin. If you are the mail server admin, or need information in a hurry, you can use the ``netstat`` command. This example shows all active servers on your system, and the ports they are listening on. The SMTP server is -listening on localhost port 25: +listening on localhost port 25. -.. code-block:: +:: # netstat -pant -.. code-block:: +:: Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State ID/Program name From 7986c4eb50f87f0a4fd4db27ee81bda07c0d1f3c Mon Sep 17 00:00:00 2001 From: Carla Schroder Date: Wed, 27 Aug 2014 21:40:29 -0700 Subject: [PATCH 5/8] Markup making me crazy. --- admin_manual/configuration/configuration_mail.rst | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/admin_manual/configuration/configuration_mail.rst b/admin_manual/configuration/configuration_mail.rst index 87d1f59ce..587797fb1 100644 --- a/admin_manual/configuration/configuration_mail.rst +++ b/admin_manual/configuration/configuration_mail.rst @@ -367,11 +367,11 @@ listening on localhost port 25. :: -Active Internet connections (servers and established) -Proto Recv-Q Send-Q Local Address Foreign Address State ID/Program name -tcp 0 0 0.0.0.0:631 0.0.0.0:* LISTEN 4418/cupsd -tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 2245/exim4 -tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 1524/mysqld + Active Internet connections (servers and established) + Proto Recv-Q Send-Q Local Address Foreign Address State ID/Program name + tcp 0 0 0.0.0.0:631 0.0.0.0:* LISTEN 4418/cupsd + tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 2245/exim4 + tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 1524/mysqld * 25/tcp is unencrypted smtp From 967ea85be85f68ff58928742caaf5dc04037fb87 Mon Sep 17 00:00:00 2001 From: Carla Schroder Date: Wed, 27 Aug 2014 21:44:08 -0700 Subject: [PATCH 6/8] Update configuration_mail.rst --- admin_manual/configuration/configuration_mail.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/admin_manual/configuration/configuration_mail.rst b/admin_manual/configuration/configuration_mail.rst index 587797fb1..e14de566a 100644 --- a/admin_manual/configuration/configuration_mail.rst +++ b/admin_manual/configuration/configuration_mail.rst @@ -133,7 +133,7 @@ paste them back to the template text box for use when you are done. Setting Mail Server Parameters in config.php ---------- -If you prefer, you may set your mail server parameters in ``config/config.php''. +If you prefer, you may set your mail server parameters in ``config/config.php``. The following examples are for SMTP, PHP, Sendmail, and Qmail. SMTP From e7d4dbfabf05327d899b4f66f436db77f376c5c1 Mon Sep 17 00:00:00 2001 From: Carla Schroder Date: Tue, 2 Sep 2014 09:03:01 -0700 Subject: [PATCH 7/8] Fix typos --- admin_manual/configuration/configuration_mail.rst | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/admin_manual/configuration/configuration_mail.rst b/admin_manual/configuration/configuration_mail.rst index 44664b0d1..b77a9c44e 100644 --- a/admin_manual/configuration/configuration_mail.rst +++ b/admin_manual/configuration/configuration_mail.rst @@ -23,8 +23,8 @@ PHP, and Sendmail. Use the SMTP configurator for a remote server, and PHP or Sendmail when your mail server is on the same machine as ownCloud. .. note:: The Sendmail option refers to the Sendmail SMTP server, and any -drop-in Sendmail replacement such as Postfix, Exim, or Courier. All of these -include a ``sendmail`` binary, and are freely-interchangeable. + drop-in Sendmail replacement such as Postfix, Exim, or Courier. All of these + include a ``sendmail`` binary, and are freely-interchangeable. Configuring an SMTP Server ------------------------- @@ -127,8 +127,8 @@ Again, be very careful to change nothing but the message text, because the tiniest coding error will break the template. .. note:: You can edit the templates directly in the template text box, or you -can copy and paste them to a text editor for modification and then copy and -paste them back to the template text box for use when you are done. + can copy and paste them to a text editor for modification and then copy and + paste them back to the template text box for use when you are done. Setting Mail Server Parameters in config.php ---------- @@ -318,8 +318,8 @@ the ``mail_smtpdebug parameter`` in ``config/config.php``. "mail_smtpdebug" => true; .. note:: Immediately after pressing the **Send email** button, as described -before, several **SMTP -> get_lines(): ...** messages appear on the screen. -This is expected behavior and can be ignored. + before, several **SMTP -> get_lines(): ...** messages appear on the screen. + This is expected behavior and can be ignored. **Question**: Why is my web domain different from my mail domain? @@ -438,5 +438,4 @@ messages by enabling the mail_smtpdebug parameter: .. note:: Immediately after pressing the **Send email** button, as described before, several **SMTP -> get_lines(): ...** messages appear on the screen. - This is expected behavior and can be ignored. - + This is expected behavior and can be ignored. \ No newline at end of file From e2f46587dbe76f78bd9ff302338f3b266a9b9def Mon Sep 17 00:00:00 2001 From: Carla Schroder Date: Fri, 5 Sep 2014 09:26:59 -0700 Subject: [PATCH 8/8] markup corrections in configuration_mail.rst --- admin_manual/configuration/configuration_mail.rst | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/admin_manual/configuration/configuration_mail.rst b/admin_manual/configuration/configuration_mail.rst index b77a9c44e..4de9c2b37 100644 --- a/admin_manual/configuration/configuration_mail.rst +++ b/admin_manual/configuration/configuration_mail.rst @@ -27,7 +27,7 @@ Sendmail when your mail server is on the same machine as ownCloud. include a ``sendmail`` binary, and are freely-interchangeable. Configuring an SMTP Server -------------------------- +-------------------------- You need the following information from your mailserver administrator to connect ownCloud to a remote SMTP server: @@ -57,7 +57,7 @@ configured on your Personal page. The test message says:: web services under your control Configuring PHP and Sendmail -------------------------- +---------------------------- Configuring PHP or Sendmail requires only that you select one of them, and then enter your desired return address. @@ -131,7 +131,7 @@ tiniest coding error will break the template. paste them back to the template text box for use when you are done. Setting Mail Server Parameters in config.php ----------- +-------------------------------------------- If you prefer, you may set your mail server parameters in ``config/config.php``. The following examples are for SMTP, PHP, Sendmail, and Qmail. @@ -423,7 +423,6 @@ using the ``telnet`` command. 221 smtp.domain.dom closing connection Connection closed by foreign host. -======= Enabling Debug Mode -------------------