Hi Friends!
I'm trying to automate the K9 MX parameters reception on 
Debian9/postfix/dovecot email server,
to do this I've try to setup rfc6186 (Use of SRV Records for Locating Email 
Submission/Access Services) with no luck, for Thunderbird works, for K9 no,
so I've try to setup autoconfig and autodiscover subdomains, for 
Thunderbird works, for K9 no,

in particular K9 does not finds the right IMAP incoming server 
(mail.example.org) and in its place set "imap.example.org", then it does 
not finds the right socketType (STARTTLS).

On my setup on "autodiscover" I've set <Encryption>TLS</Encryption> could 
be this related to the fact that it does not detect STARTTLS?
However I don't understand how to communicate the correct incoming server 
parameters to K9, could you give me a tip? :-)


Many many thanks!

Davide



This is my server setup:



--------- autoconfig --------------------

#cat autoconfig.example.com.conf
# Autoconfig (Mozilla clients)
<VirtualHost *:80>
ServerName autoconfig.example.com
ServerAlias autoconfig.example.com:80
ServerAdmin [email protected]
DocumentRoot /usr/vhosts/example.com/temp
LogLevel info
ErrorLog /var/log/provisioning-autoconfig-error.log
CustomLog /var/log/provisioning-autoconfig-access.log combined

<IfModule mod_rewrite.c>
RewriteEngine On
    RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L,R=301]
</IfModule>

# email autoconfig (For Microsoft clients)
<Directory "/usr/vhosts/example.com/temp/">
Options None
AllowOverride None
Require all granted
</Directory>
<Directory "/usr/vhosts/example.com/temp/mail/">
Options None
AllowOverride None
Require all granted
</Directory>
</VirtualHost>

# SSL example for autoconfig (Mozilla clients)
<VirtualHost *:443>
ServerName autoconfig.example.com:443
ServerAlias autoconfig.example.com:443
ServerAdmin [email protected]
DocumentRoot /usr/vhosts/example.com/temp
LogLevel info
ErrorLog /var/log/provisioning-autoconfig-error.log
CustomLog /var/log/provisioning-autoconfig-access.log combined

<Directory "/usr/vhosts/example.com/temp">
Options None
SSLRequireSSL
AllowOverride None
Require all granted
</Directory>

SSLEngine on
SSLCertificateFile "/usr/local/etc/ssl/acme/example.com/fullchain.crt"
SSLCertificateKeyFile
"/usr/local/etc/ssl/acme/example.com/privssl/server-ec256.key"
SSLCACertificateFile "/usr/local/etc/ssl/acme/example.com/cacert.crt"

# email autoconfig (For Microsoft clients)
<Directory "/usr/vhosts/example.com/temp/mail/">
Options None
SSLRequireSSL
AllowOverride None
Require all granted
</Directory>
</VirtualHost>


--------- autodiscover --------------------

#cat autodiscover.example.com.conf
# Autodiscover (Microsoft clients)
<VirtualHost *:80>
ServerName autodiscover.example.com
ServerAdmin [email protected]
DocumentRoot /usr/vhosts/example.com/temp
LogLevel info
ErrorLog /var/log/provisioning-autodiscover-error.log
CustomLog /var/log/provisioning-autodiscover-access.log combined

<IfModule mod_rewrite.c>
RewriteEngine On
    RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L,R=301]
</IfModule>
</VirtualHost>

# SSL example for autodiscover (Microsoft clients)
<VirtualHost *:443>
ServerName autodiscover.example.com:443
ServerAlias autodiscover.example.com:443
ServerAdmin [email protected]
DocumentRoot /usr/vhosts/example.com/temp
LogLevel info
ErrorLog /var/log/provisioning-autodiscover-error.log
CustomLog /var/log/provisioning-autodiscover-access.log combined

<Directory "/usr/vhosts/example.com/temp">
Options None
SSLRequireSSL
AllowOverride None
Require all granted
</Directory>

SSLEngine on
SSLCertificateFile "/usr/local/etc/ssl/acme/example.com/fullchain.crt"
SSLCertificateKeyFile
"/usr/local/etc/ssl/acme/example.com/privssl/server-ec256.key"
SSLCACertificateFile "/usr/local/etc/ssl/acme/example.com/cacert.crt"

<Directory "/usr/vhosts/example.com/temp/autodiscover/">
Options +FollowSymLinks
SSLRequireSSL
AllowOverride All
Require all granted
</Directory>
</VirtualHost>

#cd /usr/vhosts/example.com/temp
#ls
autodiscover/   mail/
#cd mail
#ls
config-v1.1.xml
#cat config-v1.1.xml
<?xml version="1.0"?>
 <clientConfig version="1.1">
   <emailProvider id="example.com">
     <domain>example.com</domain>
     <displayName>example.com</displayName>
     <displayShortName>example</displayShortName>
     <incomingServer type="imap">
       <hostname>mail.example.com</hostname>
       <port>143</port>
       <socketType>STARTTLS</socketType>
       <authentication>password-cleartext</authentication>
       <username>%EMAILADDRESS%</username>
     </incomingServer>
     <outgoingServer type="smtp">
       <hostname>smtp.example.com</hostname>
       <port>587</port>
       <socketType>STARTTLS</socketType>
       <authentication>password-cleartext</authentication>
       <username>%EMAILADDRESS%</username>
 <addThisServer>true</addThisServer>
       <useGlobalPreferredServer>false</useGlobalPreferredServer>
     </outgoingServer>
   </emailProvider>
 </clientConfig>

#cd ..
#cd autodiscover/
#ls
.htaccess               autodiscover.php
#cat .htaccess
<IfModule mod_rewrite.c>
 RewriteEngine On
 RewriteRule autodiscover.xml autodiscover.php [L]
 </IfModule>
#cat autodiscover.php
<?php
//get raw POST data so we can extract the email address
$data = file_get_contents("php://input");
preg_match("/\<EMailAddress\>(.*?)\<\/EMailAddress\>/", $data, $matches);
 //set Content-Type
header("Content-Type: application/xml");
?>
<?xml version="1.0" encoding="utf-8" ?>
<Autodiscover xmlns=
"http://schemas.microsoft.com/exchange/autodiscover/responseschema/2006";>
<Response xmlns=
"http://schemas.microsoft.com/exchange/autodiscover/outlook/responseschema/2006a";
>
<Account>
<AccountType>email</AccountType>
<Action>settings</Action>
<Protocol>
<Type>IMAP</Type>
<Server>mail.example.com</Server>
<Port>993</Port>
<SPA>off</SPA>
<SSL>on</SSL>
<LoginName><?php echo $matches[1]; ?></LoginName>
<AuthRequired>on</AuthRequired>
</Protocol>
<Protocol>
<Type>SMTP</Type>
<Server>smtp.example.com</Server>
<Port>587</Port>
<Encryption>TLS</Encryption>
<LoginName><?php echo $matches[1]; ?></LoginName>
<AuthRequired>on</AuthRequired>
</Protocol>
</Account>
</Response>
</Autodiscover>



-- 
You received this message because you are subscribed to the Google Groups "K-9 
Mail" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to