<div dir="ltr">Thank you Stephan,<div><br></div><div>I'm wondering if I can read the track of the status of bug reports? Could you please advice?</div><div>Thanks.</div><div>Mizuki</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sun, Dec 8, 2019 at 6:40 AM Stephan Bosch <<a href="mailto:stephan@rename-it.nl">stephan@rename-it.nl</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><br>
<br>
On 06/12/2019 20:54, Aki Tuomi via dovecot wrote:<br>
> Hi!<br>
><br>
> It seems there is a bug in the oauth2 driver, it loads the cert files wrong way. I'll make an internal bug report of this.<br>
<br>
Tracking as DOP-1590.<br>
<br>
Regards,<br>
<br>
Stephan.<br>
<br>
<br>
>> On 06/12/2019 16:42 mizuki <<a href="mailto:mizuki0621@gmail.com" target="_blank">mizuki0621@gmail.com</a>> wrote:<br>
>><br>
>><br>
>> Hi,<br>
>><br>
>> For troubleshooting purposes, I change the read/write permissions on the certs and confirmed 'dovecot' can read them w/o problem, but still seeing the same errors. :(<br>
>> Mizuki<br>
>><br>
>><br>
>> On Fri, Dec 6, 2019 at 1:35 AM Aki Tuomi <<a href="mailto:aki.tuomi@open-xchange.com" target="_blank">aki.tuomi@open-xchange.com</a>> wrote:<br>
>>>   <br>
>>> Is the key/cert pair readable by dovecot user? auth process does not run as root.<br>
>>>   <br>
>>><br>
>>><br>
>>>   <br>
>>> You can add<br>
>>>   <br>
>>><br>
>>><br>
>>>   <br>
>>> service auth {<br>
>>>   <br>
>>> extra_groups = ssl_cert<br>
>>>   <br>
>>> }<br>
>>>   <br>
>>><br>
>>><br>
>>>   <br>
>>> and chgrp the cert to ssl_cert to allow access to the cert.<br>
>>>   <br>
>>><br>
>>><br>
>>>   <br>
>>> Aki<br>
>>>   <br>
>>>> On 06/12/2019 04:16 mizuki via dovecot <<a href="mailto:dovecot@dovecot.org" target="_blank">dovecot@dovecot.org</a>> wrote:<br>
>>>>   <br>
>>>><br>
>>>><br>
>>>>   <br>
>>>><br>
>>>><br>
>>>>   <br>
>>>> I changed some of the tls options following the document, now config is following:<br>
>>>>   <br>
>>>><br>
>>>><br>
>>>>   <br>
>>>><br>
>>>><br>
>>>>   <br>
>>>> tokeninfo_url = <a href="https://keycloak.com/auth/realms/mail/protocol/openid-connect/token" rel="noreferrer" target="_blank">https://keycloak.com/auth/realms/mail/protocol/openid-connect/token</a><br>
>>>> introspection_url = <a href="https://dovecot:7598e21b-ec34-481f-80d0-059bddae0923@keycloak.com/auth/realms/demo/protocol/openid-connect/token/introspect" rel="noreferrer" target="_blank">https://dovecot:7598e21b-ec34-481f-80d0-059bddae0923@keycloak.com/auth/realms/demo/protocol/openid-connect/token/introspect</a><br>
>>>> introspection_mode = post<br>
>>>> debug = yes<br>
>>>> rawlog_dir = /tmp/oauth2<br>
>>>> #force_introspection = yes<br>
>>>> username_attribute = username<br>
>>>> #active_attribute = active<br>
>>>> #active_value = true<br>
>>>> tls_ca_cert_file = /etc/pki/CA/certs/incommon-rsa-server-ca.crt<br>
>>>> tls_cert_file = /etc/pki/dovecot/certs/dovecot.pem<br>
>>>> tls_key_file = /etc/pki/dovecot/private/dovecot.pem<br>
>>>><br>
>>>>   <br>
>>>> ---------------<br>
>>>>   <br>
>>>><br>
>>>><br>
>>>>   <br>
>>>> The debug log is showing now slightly different msg ex:<br>
>>>>   <br>
>>>> Dec 5 21:09:59 mktst4 dovecot: auth: Error: oauth2(mizuki,10.0.2.1,<29b4iv+YKuuCx5Tr>): oauth2 failed: Couldn't initialize SSL context: Can't load SSL certificate: There is no valid PEM certificate.<br>
>>>>   <br>
>>>><br>
>>>><br>
>>>>   <br>
>>>> Still not able to connect to the keyclaok server. :(<br>
>>>><br>
>>>>   <br>
>>>><br>
>>>><br>
>>>>   <br>
>>>> PS: Dovecot & Keycloak severs are both using the same legit cert/key pair with CA file configured.<br>
>>>>   <br>
>>>><br>
>>>><br>
>>>>   <br>
>>>> Thanks!<br>
>>>>   <br>
>>>> Mizuki<br>
>>>><br>
>>>>   <br>
>>>><br>
>>>><br>
>>>>   <br>
>>>>   <br>
>>>> On Thu, Dec 5, 2019 at 3:06 PM Aki Tuomi < <a href="mailto:aki.tuomi@open-xchange.com" target="_blank">aki.tuomi@open-xchange.com</a>> wrote:<br>
>>>><br>
>>>>   <br>
>>>>> Before declaring it not ready for prime time, did you try setting<br>
>>>>>   <br>
>>>>> tls_ca_cert_file = /etc/ssl/certs/ca-certificates.crt<br>
>>>>>   <br>
>>>>> In the oauth2 configuration file as documented in <a href="https://doc.dovecot.org/configuration_manual/authentication/oauth2" rel="noreferrer" target="_blank">https://doc.dovecot.org/configuration_manual/authentication/oauth2</a> ?<br>
>>>>>   <br>
>>>>> Aki<br>
>>>>>   <br>
>>>>>> On 05/12/2019 21:58 mizuki via dovecot < <a href="mailto:dovecot@dovecot.org" target="_blank">dovecot@dovecot.org</a>> wrote:<br>
>>>>>><br>
>>>>>><br>
>>>>>> Hi all,<br>
>>>>>><br>
>>>>>> We'd like to enable OAuth with Keycloak in Dovecot, after enabling 'OAUTHBEARER XOAUTH2' in Dovecot based on online document, I can confirm Dovecot is ready for OAuth using openssl command, however when the auth request comes in, it failed in establishing a SSL connection with Keycloak server on port 443, shown as following in debug logs. I can confirming using commands 'openssl s_client -connect <keycloak_server>:443' or 'curl -v https://<keycloak_server/' all returns normal and no errors. Altering some of the SSL options in dovecot such as 'ssl_ca = </etc/pki/CA/certs/root_ca.pem' or 'ssl_client_ca_file = </etc/pki/CA/certs/root_ca.pem' does not help either. The certificate are NOT self-signed but signed the legit authorities. So I'm not sure why dovecot could not establish the connections.<br>
>>>>>><br>
<br>
</blockquote></div>