The problem with libsasl2 was regarding license. Also, I am unsure if
libsasl2 will give me an ability to perform some sort of certificate based
authentication.
One more question I had was, would the use of stunnel need any code change
with memached codebase?

Thanks and Regards,
Om Kale


On Mon, May 7, 2018 at 12:40 PM, dormando <dorma...@rydia.net> wrote:

> Hey,
>
> Just to be clear: I'm completely positive you can make this work with just
> the libsasl2 that comes with openwrt, you don't need to rebuild it. the
> problem is you can't use sasl over an untrusted network: SASL is supposed
> to be used underneath TLS or a trusted network.
>
> Either way, try stunnel. that might just make your life easier in both
> directions, it's fairly simple.
>
> On Mon, 7 May 2018, Om Kale wrote:
>
> > Hi Dormando and Trond,I think I will first try Dormando's suggestion of
> stunnel before delving into changing the memcached code itself. I haven't
> read
> > much about stunnel, so will need to look into it in some detail.
> > Again, thanks a lot for the support. It would have been very good if I
> could have used sasl (using libsasl2) directly but because of the GPLV3
> license
> > requirements that is a problem.
> > I will keep you updated with my progress.
> >
> >
> > Thanks and Regards,Om Kale
> >
> > On Sat, May 5, 2018 at 4:53 PM, dormando <dorma...@rydia.net> wrote:
> >       > On Fri, May 4, 2018 at 10:46 PM dormando <dorma...@rydia.net>
> wrote:
> >       >
> >       >       The closest would be SCRAM-SHA-256/512 mechanism, but the
> RFC for that states "in combination with TLS" up front, and I'd be wary of
> >       using it
> >       >       over the internet as well.
> >       >
> >       >
> >       > If we ignore TLS for a second and just look at SCRAM it is
> fairly easy to implement a minimalistic support for those mechanisms within
> >       SASL. There is
> >       > however one huge problem by using them in memcached without
> doing major refactoring in the SASL support in memcached. By design SCRAM
> use a
> >       hashing
> >       > function with an iteration count, which should be set high
> enough to burn enough CPU on both the client and the server to make brute
> force
> >       attacks
> >       > "impossible" (the RFC states that for SCRAM-SHA1 it should be
> _at least 4096_). Given that the memcached runs the SASL operations in the
> >       _front end
> >       > threads_, it would block all the clients bound to that thread
> every time someone tries to authenticate. If there is clients connecting all
> >       the time one
> >       > could end up with all worker threads running PBKDF2 hashing and
> all other operations timing out ;)
> >       >
> >       > In order to add support for SCRAM you would have to move the
> hashing over to a separate thread, and there is not an infrastructure for
> such
> >       thing in the
> >       > current memcached implementation so it would be a lot of work ;)
> >       >
> >
> >       There are actually mechanisms for passing connections to other
> threads in
> >       the code now :) It's used in a few places. It's not incredibly
> fast but
> >       connection rates typically aren't high enough to bother it. You'd
> still
> >       burn out your CPU though...
> >
> >       but, it's moot. if you don't trust your network you can't just use
> SASL.
> >       :/
> >
> >       > Dormandos suggestion with stunnel (or ipsec) sounds like the
> least amount of work, but if you _really_ don't want that (or you for some
> >       reason really
> >       > want to implement something yourself) you could look into
> changing memcached to use libevents bufferevents instead of the "basic"
> form it
> >       use today, and
> >       > then add support for using the SSL level on top of bufferevents.
> I haven't tested this so I have no idea of the overhead of this and how it
> >       would affect
> >       > the overall performance. Unless all your clients want to use SSL
> you probably want a dedicated port and thread pool serving these
> >       connections. It all
> >       > depends on the performance requirements you've got...
> >
> >       I'm more concerned about the poor person ending up stuck with a
> fork after
> >       weeks of work.. it's not exactly a straightforward change. I do
> intend to
> >       add TLS support this year. Would help if someone sponsored the
> work though
> >       :P
> >
> >       --
> >
> >       ---
> >       You received this message because you are subscribed to the Google
> Groups "memcached" group.
> >       To unsubscribe from this group and stop receiving emails from it,
> send an email to memcached+unsubscr...@googlegroups.com.
> >       For more options, visit https://groups.google.com/d/optout.
> >
> >
> > --
> >
> > ---
> > You received this message because you are subscribed to the Google
> Groups "memcached" group.
> > To unsubscribe from this group and stop receiving emails from it, send
> an email to memcached+unsubscr...@googlegroups.com.
> > For more options, visit https://groups.google.com/d/optout.
> >
> >
>
> --
>
> ---
> You received this message because you are subscribed to the Google Groups
> "memcached" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to memcached+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>

-- 

--- 
You received this message because you are subscribed to the Google Groups 
"memcached" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to memcached+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to