memcached in not so friendly environment
Brian Moon
brianm at dealnews.com
Thu Feb 8 21:05:33 UTC 2007
Hmm, a nice feature of the PECL client might to be allow for a host(s)
and port to be configured in php.ini/apache conf. That way, you could
set the host(s) and port per VirtualHost in the Apache conf. You can do
this with mysql user/pass/server etc. But, I think that just sets the
default and the user could override it. This would be useful for
locking a VirtualHost into a given memcached pool.
Reinis Rozitis wrote:
> Use sockets (only limitation is that memcache must reside on the same
> host/box as the php).
> Launch multiple memcaches processes and give each user read/write acces to
> only one particular socket, that way they can't connect to another MC
> instance. By doing this you can also limit how much memory each user can
> use.
>
> If you add some auth layer inbetween in my opinion the whole idea of
> ultra-fast data reading probably will be lost..
>
> rr
>
>
> ----- Original Message ----- From: Milos Prodanovic
> To: memcached at lists.danga.com
> Sent: Thursday, February 08, 2007 12:37 PM
> Subject: memcached in not so friendly environment
>
>
> Hello,
>
>
> I'm planning to use memcached in mass hosting environment. In general that
> would say that any php user can access data
> that is stored in memcached, even if this memcached data is only for
> hosting
> platform use. Common usage of memcached is in friendly
> environment, where you hold strings, application, network and other
> resources, and there is no user application allowed.
> I need to protect access to memcached. Firewall is not an option, hidden
> interfaces and private networks can be scanned, and other obscurity ways
> are
> not option.
>
> I've read memcached list discussion on authentication. There are few
> possibilities that I can think of:
> a) Restrict memcached to accept conections from TCP port that is less than
> 1024, that would be quite fast solution, and it's based on fact that you
> are
> the only one with root account on client side.
> b) crypt and sign data (content) stored on memcache, so even if users get
> access to memcached they can't poison data but they can exhaust memory :(
> c) implement authenticaiton (exact way should be discussed)
> d) secure transport (includes authentication - already suggeste on list and
> done)
> e) put some kind of tcp wrapper in front of memcached,and let tcp wrapper
> handle authentication
>
> Maybe someone has already nice working solution ?
>
> I've understood that authentication was proposed more than once, and it was
> rejected protecting memcached performance.
> One sent url with encrypted memcached (TLS). It's easy to implement
> authentication as private patch, but there is no sense
> if it's not accepted as patch in main memcached code.
>
> If using memcached in not so friendly environment is not so frequent,
> then
> private patch is the best scenario.
> If this is not so rare case of memcached usage, let's discuss
> authentication
> once again.
>
> What do you think ?
>
>
> Kind Regards
>
> Milos
>
>
--
Brian Moon
-------------
http://dealnews.com/
It's good to be cheap =)
More information about the memcached
mailing list