On Thu, 11 Feb 2016 13:42:50 -0300
Alvaro Herrera <alvhe...@2ndquadrant.com> wrote:

> Eduardo Morras escribió:
> 
> > No, puede que no me haya explicado bien, el cliente SI quiere
> > SSL/TLS, pero no la implementacion de OpenSSL. Las aplicaciones
> > usan LibreSSL,
> > modificando /postgresql/src/interfaces/libpq/fe-secure-openssl.c y
> > cambiado de nombre a fe-secure-libressl.c para que compile con
> > libressl (cambios minimos, ya que tiene modo de compatibilidad con
> > openssl)
> > 
> > Las dos opciones que tengo en mente, son:
> > 
> > a) Compilar PostgreSQL con LibreSSL u otra implementacion, como
> > mbedtls/polarssl o nss. 
> > b) Poner en la misma maquina que el servidor pgbouncer, compilado
> > con LibreSSL. Las conexiones de los clientes a pgbouncer son
> > seguras y entre pgbouncer y PostgreSQL no creo que hagan falta al
> > compartir maquina.
> 
> Heikki Linnakangas inició hace un par de años un proyecto para
> permitir que Postgres sea "agnóstico a la implementación SSL", de
> manera que se puedan usar otras bibliotecas como LibreSSL, GnuTLS,
> Schannel (Windows), Mozilla NSS, para la implementación subyacente.
> Lo que está hecho hasta el momento es que la parte de OpenSSL está
> encapsulada en ese archivo be-secure-openssl.c; lo que falta es
> permitir que otras bibliotecas ofrezcan una API similar para poder
> tener be-secure-schannel.c etc.  

Ahh..., entonces tambien hay que modificar el src/backend/libpq? Solo estaba 
modificando el src/interfaces/libpq. Supongo que uno sera para el servidor y el 
otro para clientes.

> La gracia de LibreSSL es que es muy similar a OpenSSL y debería ser
> posible crear un be-secure-libressl.c a partir del -openssl.c sin
> demasiado trabajo.  Si lo haces, quizás podrías considerar la idea de
> transformar eso en un parche para Postgres y enviarlo a pg-hackers.
> En cambio, hacerlo con PolarSSL o alguna de las otras deber ser un
> esfuerzo mucho mayor (y por lo tanto si lo haces, definitivamente
> envía el parche a -hackers).

Son muy similares, en muchos proyectos basta con cambiar el makefile ya que la 
API de LibreSSL tiene un modo de compatibilidad 100%. Esta parte del proyecto 
he conseguido ponerla bajo licencia tipo BSD o similar (Mit,Isc, Postgresql, 
BSD2-clause, x11..) como pago por el uso de Postgresql.

> BTW tengo entendido que SSL incluso en SSLv3 tiene problemas de
> seguridad bastante severos, y sólo TLS v1.2 debería considerarse
> ahora.

De hecho en fe-secure-openssl.c sslv2 y sslv3 estan deshabilitados. Hay 
comentarios en el codigo que explican que no son seguros y que solo se usa TLS.

Muchas gracias

> -- 
> Álvaro Herrera                http://www.2ndQuadrant.com/
> PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
> 


---   ---
Eduardo Morras <emorr...@yahoo.es>

-
Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda@postgresql.org)
Para cambiar tu suscripción:
http://www.postgresql.org/mailpref/pgsql-es-ayuda

Responder a