Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SASL2 support (XEP-0388) #4112

Closed
mremond opened this issue Oct 27, 2023 · 10 comments
Closed

SASL2 support (XEP-0388) #4112

mremond opened this issue Oct 27, 2023 · 10 comments
Assignees

Comments

@mremond
Copy link
Member

mremond commented Oct 27, 2023

Add support to SASL 2 (https://xmpp.org/extensions/xep-0388.html).

Relates to #4107

@prefiks prefiks self-assigned this Oct 27, 2023
@licaon-kter
Copy link
Contributor

Will include #3972 ?

@prefiks
Copy link
Member

prefiks commented Oct 27, 2023

I added support for that (at least that part that that put that in features as part of tls-export implementation

@Neustradamus
Copy link
Contributor

@mremond: A moment ago, I have done it here :)

@prefiks
Copy link
Member

prefiks commented Nov 16, 2023

Commit efffc31 adds initial support for this. This is not yet fully completed, right now only mod_stream_mgmt recognized inline request, i will also add support for this to mod_carboncopy and mod_client_state.

@mzealey
Copy link
Contributor

mzealey commented Nov 20, 2023

Hi there, we were going to implement this ourselves in a few months precisely for the fast session resumption, but what you have done looks excellent so thank you @prefiks

One issue from our side in the testing: you have required that the connection is SSL terminated to ejabberd which is a reasonable enough assumption. However in our setup we terminate on a proxy layer in front of the ejabberd cluster (with a secure network between). Would it be possible for you to add a config option to force-enable sasl2 even if the connection does not seem encrypted to ejabberd itself?

@prefiks
Copy link
Member

prefiks commented Nov 20, 2023

One issue with that will be that we will not be able to test validity of tls channel binding data, and that would require disabling -PLUS versions of authentication methods, it's something that could be done but it's something that you need to be aware of. But i guess option for that is something that can be added.

@mzealey
Copy link
Contributor

mzealey commented Nov 20, 2023

Yes I mean obviously if we are not terminating TLS on ejabberd then most of those channel binding options are not available. Although as @iNPUTmice has pointed out to me we could probably do the server-end-point one if we copied the tls certs to ejabberd. I don't see there's much functionality loss in just a blanket 'If this flag is specified, channel binding is disabled. Use Ejabberd's TLS implementation if you require channel binding'.

@licaon-kter
Copy link
Contributor

@prefiks what's missing so this can be closed?

@Neustradamus
Copy link
Contributor

@licaon-kter: Yes this ticket can be closed not the original yet.

This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants