Foros del Web » Creando para Internet » Diseño web »

Trabajar con PHP, SSL, Phyton...

Estas en el tema de Trabajar con PHP, SSL, Phyton... en el foro de Diseño web en Foros del Web. Hola FWD! Me han pedido hacer un sistema de autenificacion con bastantes capas de seguridad, todo desarrollado en php, hasta ahi todo bien, el sistema ...
  #1 (permalink)  
Antiguo 02/07/2011, 12:24
Avatar de danneg  
Fecha de Ingreso: agosto-2009
Ubicación: Todo un mundo de posibilidades
Mensajes: 856
Antigüedad: 7 años, 7 meses
Puntos: 48
Información Trabajar con PHP, SSL, Phyton...

Hola FWD!

Me han pedido hacer un sistema de autenificacion con bastantes capas de seguridad, todo desarrollado en php, hasta ahi todo bien, el sistema esta terminado, el unico incombeniente es que no trabajo con certificados

Me piden que utilice un archivo .py que sea la llave de mi sistema para poder acceder a cualquier parte del sistema del servidor, el cual lo trabaja con certificados, a 256bits

Me comento que antes de ejecutar mi aplicacion debo de llamar esta llve para poder correr mi aplicacion

El problema es que no tengo ni idea de como generar esa llave

Me comento que la puedo hacer en c o en phyton la llave, pero me recomendo phyton por que es mas sencillo trabajar con el

Bien, entonces aqui la ayuda seria...

¿Conocen algo sobre este mundo?

Me serviria bastante que me proporcionaran toda clase de manuales, videotutoriales, snipets ( solo para tomar de ejemplo y ver como es la estructura ), todo material de apoyo se le es agredecido, puede ser en ingles o español, aunque me gustaria mas en español XD

De antemano gracias!! y un saludo!
__________________
- Daniel García (@dannegm)
- [follow me | fork me on github...]
  #2 (permalink)  
Antiguo 02/07/2011, 14:20
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 8 años, 7 meses
Puntos: 1530
Respuesta: Trabajar con PHP, SSL, Phyton...

SSL para nada tiene que ver ni con phyton ni PHP, debes de configurar OpenSSL en Apache y al usar https en tu sitio apache se encarga del cifrado.

PD: OpenSSL puede usar certificados comprados, pero el nivel de cifrado que necesite lo desconozco.
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #3 (permalink)  
Antiguo 04/07/2011, 12:27
Avatar de danneg  
Fecha de Ingreso: agosto-2009
Ubicación: Todo un mundo de posibilidades
Mensajes: 856
Antigüedad: 7 años, 7 meses
Puntos: 48
Respuesta: Trabajar con PHP, SSL, Phyton...

Jaja osea si...

OpenSSL segun yo se es la herramienta que que se usa para SSL.. a lo que yo me refiero, como mando al navergador, o a OpenSSL, o a apache toda esa informacion encriptada, la informacion de el dominio, de quien lo registro, y el tamaño de la codificacion y demas, al menos no estoy seguro que eso se configure con OpenSSL

Sobre los certificados comprados, es eso a lo que yo me refiero, como puedo yo desarrollar un certificado, me interesa saber, no importa cuan dificil sea, si ya fue hecho por un humano, por que no otro humano podria hacerlo?

Repito, cualquier curso, manual, tutorial, libro, etc, me interesa, nececito empaparme de informacion...

Y muchas gracias por la respuesta!
__________________
- Daniel García (@dannegm)
- [follow me | fork me on github...]
  #4 (permalink)  
Antiguo 04/07/2011, 16:04
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 8 años, 7 meses
Puntos: 1530
Respuesta: Trabajar con PHP, SSL, Phyton...

SSL lo hace todo, solo necesitas acceder al sitio por HTTPS, el certificado lo generas en el servidor, openSSL te lo hace
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #5 (permalink)  
Antiguo 06/07/2011, 12:42
Avatar de danneg  
Fecha de Ingreso: agosto-2009
Ubicación: Todo un mundo de posibilidades
Mensajes: 856
Antigüedad: 7 años, 7 meses
Puntos: 48
Respuesta: Trabajar con PHP, SSL, Phyton...

Bien... ahora, tengo otro par de dudas....

OpenSSL tambien te da la inforacion del servidor, como la direccion y demas? Por que he visto por ejemplo en twitter que te aparece esa informacion

Cita:
La identidad de Twitter Inc. en San Francisco, California US, ha sido verificada por VeriSign. Class 3 Extended Validation SSL CA.
En gmail igual, y en bastantes sitios con https.

La siguiente duda, me han pedido que use solo codigo mio, hasta lo que yo entendi OpenSSL no es para soportar el encriptado, si no que es lo que desarrolla el encriptado, abra alguna manera de yo desarrollar por mi mismo so?... he visto el codigo fuente de OpenSSL y veo qu esta hecho en C++ ... Ahora, a mi me gustaria hacerlo en phyton, y que trabaje obvio sobre una plataforma unix, paquetes devian claro!! (Ubuntu Rules /../, )

De cualquier forma yo igual me la paso investigando, y gracias de nuevo por tus respuestas :D
__________________
- Daniel García (@dannegm)
- [follow me | fork me on github...]
  #6 (permalink)  
Antiguo 06/07/2011, 21:15
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 8 años, 7 meses
Puntos: 1530
Respuesta: Trabajar con PHP, SSL, Phyton...

esa información te la pide al generar el certificado , lo único es que para que sea considerado como "certificado de confianza" debes de comprar un certificado, empresas como VerySign lo hacen
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #7 (permalink)  
Antiguo 06/07/2011, 22:34
Avatar de danneg  
Fecha de Ingreso: agosto-2009
Ubicación: Todo un mundo de posibilidades
Mensajes: 856
Antigüedad: 7 años, 7 meses
Puntos: 48
Respuesta: Trabajar con PHP, SSL, Phyton...

Tsss.. eso s lo que yo decia!!.. como genero un certificado?... VeringSing tiene su forma de generar un certificado, no creo que lo hagan con magia, me interesa genrar un certificado, no me importa que tenga que escribirlo en un lenguaje extraño o de bajo nivel, o si solo son 1s y 0s...

Alguna informacion sobre como hacer uno?.. he buscado en internet pero son puros fake >.<
__________________
- Daniel García (@dannegm)
- [follow me | fork me on github...]
  #8 (permalink)  
Antiguo 07/07/2011, 06:13
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 8 años, 7 meses
Puntos: 1530
Respuesta: Trabajar con PHP, SSL, Phyton...

¿acaso no leíste lo que postee?. OpenSSL Genera el certificado, lo único es que el certificado que genera es Genérico, si te brinda toda la seguridad que deseas, pero al no estar registrado por servidores de autenticación de confianza el navegador lo trata como "certificado no confiable", eso solo lo puedes gestionar comparando un certificado a empresas de ese tipo, por el resto si lo que quieres es usar SSL sin pagar, solo te queda el certificado genérico que ofrece OpenSSL
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #9 (permalink)  
Antiguo 09/07/2011, 19:36
Avatar de danneg  
Fecha de Ingreso: agosto-2009
Ubicación: Todo un mundo de posibilidades
Mensajes: 856
Antigüedad: 7 años, 7 meses
Puntos: 48
Respuesta: Trabajar con PHP, SSL, Phyton...

Disculpe usted

he buscado y buscado y buscado en internet acerca de esto, al parecer es un tema poco conocido, en fin

Encontre informacion sobre como generar el certificado con openssl, lo genere y demas, me dieron como resultado un archivo .key donde creo se utiliza para validar la contraseña y demas, un .csr y un .ctr ...

Hasta ahi todo bien, copie los archivos .key en la carpta /etc/ssl/private y el archivo .ctr en la carpeta /etc/ssl/certs y reinicie el servidor

Cueando reinicie el servidor me mostro un mensaje que dice que no se pudo obtener el nombre de dominio para 127.0.1.1

En fin, omiti esta alerta y me diriji al servidor, cuando trato de ingresar a https://localhost me dice que hay un error en el certificado

Me menciono un colega mio que eso es por que es un certificado autofirmado, y le pregunte que si no podia hacer que tan solo mi navegador tomara como el certiificado de confianza, al menos internamente, pero ya no pude resolver nada

Bien, ahora, disculpandome de nuevo, tengo una nueva pregunta, como puedo hacer para que mi navegador omita que esta autofirmado?

Utilizo Chrome para todo, pero para hacer la prueba podria sacrificarme y utilizar otro navegador

Y de nuevo gracias y una disculpa por mi necedad! :D
__________________
- Daniel García (@dannegm)
- [follow me | fork me on github...]
  #10 (permalink)  
Antiguo 10/07/2011, 08:39
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 8 años, 7 meses
Puntos: 1530
Respuesta: Trabajar con PHP, SSL, Phyton...

no puedes hacer que tu navegador tome el certificado como de confianza, porque para eso el mismo debe se ser firmado por un servidor de autenticación, en cuyo caso debes de comprar el certificado.

eso no le quita poder de cifrado, pero imagínate que cualquiera pueda generar un certificado de confianza gratis y de forma fácil, entonces cualquier malintencionado podría hacer fishing a sus anchas y sería más convincente si el navegador del usuario le dice: pagina segura y con conexión de confianza!!!!; es por ello el de los servidores de autenticación
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #11 (permalink)  
Antiguo 10/07/2011, 11:45
Avatar de NUCKLEAR
Moderador radioactivo
 
Fecha de Ingreso: octubre-2005
Ubicación: Cordoba-Argentina
Mensajes: 5.688
Antigüedad: 11 años, 4 meses
Puntos: 890
Respuesta: Trabajar con PHP, SSL, Phyton...

Una pregunta @maycolalvarez, el yo cuando quiero usar un certiicado SSL lo compro en mi hosting, me lo instalan y lodejan funcionando, lo mismo que mi VPS. Alguna que otra vez me pidieron que generara mi clave desde cpanel, pero mas que eso nada.

No es mas fácil asi, o me estoy prediendo de algo.

Saludos ;)
__________________
Drupal Argentina
  #12 (permalink)  
Antiguo 10/07/2011, 11:57
 
Fecha de Ingreso: abril-2006
Mensajes: 1.128
Antigüedad: 10 años, 11 meses
Puntos: 33
Respuesta: Trabajar con PHP, SSL, Phyton...

NUCKLEAR:
Yo uso windows y Apache 2.2.19, este ultimo viene
con un archivo que se llama openssl.exe que esta en
el directorio bin del servidor.
Te mueves hacia ese directorio y escribes
openssl.exe y despues help y te saldra
algo asi ->
Standard commands
asn1parse ca ciphers crl crl2pkcs7
dgst dh dhparam dsa dsaparam
ec ecparam enc engine errstr
gendh gendsa genrsa nseq ocsp
passwd, ETC, ETC,.....

Haces esto ->

Primero :

openssl.exe y sale lo de abajo.
OpenSSL>
Ahora creas tu archivo CSR, en mi caso se llamara franco.csr
OpenSSL> req -config c:\Apache\conf\openssl.cnf -new -out franco.csr
Aqui el .exe te responde pidiendote una serie de informacion
como contraseña, pais, nombre completo, etc, etc.
vas poco a poco respondiendo!.
Alterminar ya tendras la primera etapa del desarrollo de tu
certificado personal.
Observa que en el directorio conf de apache hay un archivo
que se llama openssl.cnf, que es un archivo que debe ser
adecuadamente configurado antes de obtener o mejor dicho
terminar este primer paso.
Ya has generado un archvivo que se llama privkey.pem
que debera estar en el mismo directorio donde esta franco.csr;
este ultimo es el segundo archvo generado!.

Segundo :

Convertimos el archivo privkey.pem en franco.pem asi->
C:\Apache\bin>openssl
OpenSSL> rsa -in privkey.pem -out franco.pem
Enter pass phrase for privkey.pem:(Te pide contraseña!!!)
writing RSA key
Observa que aqui te pedira la contraseña que ingresastes
anteriormente.
Ahora ya tienes dos archivos indispensables para terminar;
franco.pem y franco.csr.

Tercero y final :

Elaboramos el certificado final asi y lo elaboramos para una
vigencia de 365 dias.
C:\Apache\bin>openssl
OpenSSL> version
OpenSSL 0.9.8r 8 Feb 2011
OpenSSL> x509 -in franco.csr -out franco.crt -req -signkey franco.pem -days 365
Loading 'screen' into random state - done
Signature ok
subject=/C=ni/ST=ma/L=cr/O=franco7777-net/OU=net/CN=Tu nombre!!!!/e
[email protected]
Getting Private key

El certificado final se llama: franco.crt
y cualquier navegador lo procesa pero advierte de los
riezgos; asimismo, da toda la informacion necesaria
referente quien elaboro ese certificado.

Certificados elaborados con empresas como verisign tienen
mas aceptacion en general. Existen estandares que
puedes averiguar para ello.

Saludos
Y espero te ayude
Franco
  #13 (permalink)  
Antiguo 10/07/2011, 12:12
Avatar de NUCKLEAR
Moderador radioactivo
 
Fecha de Ingreso: octubre-2005
Ubicación: Cordoba-Argentina
Mensajes: 5.688
Antigüedad: 11 años, 4 meses
Puntos: 890
Respuesta: Trabajar con PHP, SSL, Phyton...

@franco190453 gracias por la sugerencia, pero supongo que ese certificado no valdria de nada en una web real en producción, seria algo así como un certificado personal que te asegura de la información viaja asegurada, pero sin el respaldo de una empresa no creo que tenga mucho sentido.

Alguna vez lo hice en Linux, pero como dije solo sirvió para aprender. Lo mas fácil es comprar el certificado y listo, creo.

Saludos.
__________________
Drupal Argentina
  #14 (permalink)  
Antiguo 10/07/2011, 15:49
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 8 años, 7 meses
Puntos: 1530
Respuesta: Trabajar con PHP, SSL, Phyton...

Cita:
Iniciado por NUCKLEAR Ver Mensaje
Una pregunta @maycolalvarez, el yo cuando quiero usar un certiicado SSL lo compro en mi hosting, me lo instalan y lodejan funcionando, lo mismo que mi VPS. Alguna que otra vez me pidieron que generara mi clave desde cpanel, pero mas que eso nada.

No es mas fácil asi, o me estoy prediendo de algo.

Saludos ;)
me imagino que si, porque estaría entre los servicios que un hosting profesional debe de ofrecer, hasta ahora solo he usado certificados OpenSSL generados por el mismo servidor en mis redes locales para mejorar la seguridad, es solo cuestión de informar a los usuarios que acepten el certificado en sus navegadores, claro está que si en algún momento quiero extender una web al internet necesitaría comprar un certificado de forma que cualquier cliente navegador lo tome como "confiable".

además OpenSSL no es el único, cada hosting utilizaría algún otro tipo como RSA profesional, etc. y si ofrecen el servicio de SSL ha de configurarte y prepararte todo
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #15 (permalink)  
Antiguo 10/07/2011, 18:06
Avatar de NUCKLEAR
Moderador radioactivo
 
Fecha de Ingreso: octubre-2005
Ubicación: Cordoba-Argentina
Mensajes: 5.688
Antigüedad: 11 años, 4 meses
Puntos: 890
Respuesta: Trabajar con PHP, SSL, Phyton...

Ok, Algo asi me imaginaba.
Gracias.

Saludos.
__________________
Drupal Argentina
  #16 (permalink)  
Antiguo 10/07/2011, 18:12
Avatar de danneg  
Fecha de Ingreso: agosto-2009
Ubicación: Todo un mundo de posibilidades
Mensajes: 856
Antigüedad: 7 años, 7 meses
Puntos: 48
Respuesta: Trabajar con PHP, SSL, Phyton...

puff.. ya se extendio y me perdi...

bien, leyendo todo y la razon por la que me disculpe es que entendi la funcion de VeriSign y demas probedores de certificados, ya que son gente de confianza pue el navegador lo acepta, yo comentaba que si habia una forma de configurar manualmnte chrome o demas, el MIO para yo hacer pruebas, para saber como funciona mas en fondo

Posteriormente ya contemplar en adiquierin algun ceritificado para mi proyecto, pero pienso que antes de gastar dinero a lo menso, pues deberia de saber como funciona

Pero creo que eso hasta ahora seria imposible, nececito por fuerza un certificado de confianza

En fin, por ahora sigo experimentando con openssl y ubuntu

Aun asi gracias por sus respuestas y participacion en este grupo!! un saludo!!
__________________
- Daniel García (@dannegm)
- [follow me | fork me on github...]
  #17 (permalink)  
Antiguo 10/07/2011, 20:42
 
Fecha de Ingreso: abril-2006
Mensajes: 1.128
Antigüedad: 10 años, 11 meses
Puntos: 33
Respuesta: Trabajar con PHP, SSL, Phyton...

NUCKLEAR:
Coincido con vos de que NO SIRVE para una web en produccion.
Sin embargo, aprender como se hace da una idea de lo simple que es y su validez
es algo que depende de los grandes consorcios internacionales.
Es algo con lo que NO simpatiso.
Tambien, sirve para preguntarle al que te venda el certificado de los standares
que utiliza y quien tiene la ultima palabra en todo esto.

maycolalvarez:
Muy interesante tu comentario y recuerda que tambien sirve para espantar
a los hackers o individuos mal intencionados ya que al ver en el navegador todo lo que sale es suficiente como para asustarse.

Saludos
Franco

Estos dos enlaces son interesantes:
Conocimiento
http://es.wikipedia.org/wiki/X.509
Algo novedoso sobre certificados gratis
http://es.wikipedia.org/wiki/CAcert.org

Etiquetas: php, ssl, trabajo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 02:10.