Title: Seguridad y Uso de Certificados Digitales en GRID
1Seguridad y Uso de Certificados Digitales en GRID
2Todos conocemos los Certificados Digitales
3Certificados Digitales por qué? para qué?
- Los Certificados Digitales facilitan
- Autentificación (como un documento de identidad)
- Firma Digital
- Comunicación segura. Encriptación
- Software OpenSSL
- openssl ltcagt ltreqgt ltx509gt ltcrlgt ltverifygt
- Acceso a Web, LDAP, seguros
- Grid Security Infrastructure (GSI)
4PKI y CERTIFICADOS. Descripción General
- Generación de par de claves Clave Pública
Clave Privada - La Clave Pública es accesible por todo el mundo
- La Clave Privada sólo es accesible por su
propietario - Claves simétricas lo que se encripta con una
sólo se puede desencriptar usando la otra - La clave pública
- permite comprobar que un mensaje ha sido
encriptado usando la clave privada asociada, a la
cual sólo tiene acceso su propietario - si la conocemos de forma fiable, permite
comprobar la identidad (autentificación) - esto funciona bien entre conocidos que
intercambian claves - pero no puede escalar a miles de usuarios que
además no se conocen personalmente - Autoridad de Certificación
- Se crea un par de claves públicaprivada
centrales - Todos disponemos de esta clave pública, y
confiamos en su buen uso - Para garantizar la autenticidad de las claves
públicas de los usuarios/ , éstas son firmadas
usando la clave central, obteniendo lo que se
suele llamar un Certificado Digital asociado a
la clave privada, en el que se incluye una
etiqueta que identifica el certificado y mas
informacion extra como la fecha de caducidad, - Certificado Digital Public Key Information
about the principal CA signature (x509 format) - Luego si confiamos en una CA
- podemos confiar en el certificado de un usuario
(su clave pública firmada por la CA) - y usar ésta para autentificar al propietario de
la clave privada asociada.
5Autoridades de Certificación
- CAs comerciales
- CAs académicas
- CAs con valor
- legal en España
6Autoridades de Certificación
- Jerarquía de Certificación
- CAs Raíz (Root CAs) (self signed)
- CAs encadenadas (Chainned CAs)
- Estructura escalable
- Problema técnico. Globus.
- CRL Lista de certificados revocados
- Creación de una CA
- Sencillo desde el punto de vista técnico
- Políticas de Certificación. Seguridad
- Coordinación para el desarrollo de CAs
- CAs dedicadas a GRID
- euGridPMA http//www.eugridpma.org
- 1 CA por país, múltiples RAs
- Recomendaciones
- Requerimientos Minimos
- /CES/ODATAGRID-ES/CNDATAGRID-ES CA
- http//grid.ifca.unican.es/ca/datagrid-es
Root CA
CAs Level 1
CAs Level2
Final Certificates
7Ejemplo Práctico Creación de una Autoridad de
Certificación
- Instalación y configuración de openssl
- rpm ihv openssl-.rpm
- vi /usr/share/ssl/openssl.cnf
- Subject CES, OCSIC, OIFCA, OUCURSO GRID,
CNCurso Postgrado GRID CA - Crear una CA
- usage CA -newcert-newreq-newca-sign-verify
- vi /usr/share/ssl/misc/CA
- DAYS"-days 1460"
- REQ new x509 -newkey rsa2048
- /usr/share/ssl/misc/CA -newca
- openssl x509 -in demoCA/cacert.pem text
- Crear una Clave Privada Solicitud de
Certificado - openssl req new out request_pepe.pem keyout
key_pepe.pem - openssl req -in request_pepe.pem text
- cp a request_pepe.pem newreq.pem
- Firma de Certificado
8Servidor Web seguro basado en Certificados
Digitales
- Instalación de Servidor Web Apache y modulo SSL
- rpm ihv apache-.rpm
- rpm ihv mod_ssl-.rpm
- Editar fichero de configuración http.conf
- SSLEngine on
- SSLCertificateFile /etc/httpd/conf/ssl.crt/server.
crt - SSLCertificateKeyFile /etc/httpd/conf/ssl.key/serv
er.key - SSLCACertificatePath /etc/httpd/conf/ssl.crt
- SSLCARevocationPath /etc/httpd/conf/ssl.crl
- Crear e Instalar certificados
- openssl req nodes new out request_server.pem
keyout key_server.pem - cp a request_pepe.pem newreq.pem
- /usr/share/ssl/misc/CA sign
- cp demoCA/newcerts/02.pem newcert_server.pem
- cp demo/cacert.pem /etc/httpd/conf/ssl.crt/server.
crt - cp key_server.pem /etc/httpd/conf/ssl.key/server.k
ey - cp demo/cacert.pem /etc/httpd/conf/ssl.crt/csic_cu
rso_postgrado.pem - cp crl.pem /etc/httpd/conf/ssl.crl
- Importar CA y Certificado Personal en el Web
Browser
9Uso de Certificados en GRID
- Certificados de
- Usuario DN/CES/ODATAGRID-ES/OIFCA/CNRafael
Marco de Lucas - Host DN/CES/ODATAGRID-ES/OIFCA/CNhost/grid0
01.ifca.unican.es - Service DN/CES/ODATAGRID-ES/OIFCA/CNldap/gri
d01.ifca.unican.es - Acceso a un User Interface (UI)
- ssh ltusergt_at_gtbcg03.ifca.unican.es
- Obtención de Certificado
- CA Nacional aceptada internacionalmente
- /CES/ODATAGRID-ES/DATAGRID-ES CA
- Generación de la solicitud del certificado
- grid-cert-request cn Common Name
- openssl req in .globus/request_usercert.pem
text - Autoridades de Registro (RAs)
- Enviar solicitudaprobación firmada a
datagrid-es-ca - Instalación de Certificados
- .globus/userkey.pem (ur,go-rwx)
- .globus/usercert.pem (ur,gor)
- /etc/grid-security/certificates/hostkey.pem
- /etc/grid-security/certificates/hostcert.pem
10Uso de Certificados en GRID
- Globus Grid Security Infraestructure es el
estándar de facto para Grid Middleware - Basado en PKI
- No es necesario introducir el password cada vez
- Delegation a service can act on behalf of a
person - Mutual authentication both sides must
authenticate to the other - Uso de Credenciales
- Introduce el uso de proxy certificates
- Certificados de corta vida que incluyen su clave
privada y estan firmados por el certificado del
usuario - Los proxy-certificates se pueden mover por la red
- Limited and Full proxys
- grid-proxy-init , grid-proxy-info ,
grid-proxy-destroy
11Seguridad Control de acceso
- Control de acceso grid-mapfile
- Organizaciones Virtuales
- Generación automatica del grid-mapfile
- Cada centro decide que VOs acepta
- Virtual Organization Membership Service VOMS
- Extends the proxy info with VO membership, group,
role and capabilities - Local Centre Authorization Service (LCAS)
- Comprueba si el usuario esta autorizado (usando
el grid-mapfile) - Comprueba si el usuario esta prohibido en el site
- Comprueba si en ese momento el site acepta jobs
- Local Credential Mapping Service (LCASMAPS)
- Asocia credenciales grid con credenciales locales
(unix uid/gid, AFS tokens,) - Actualmente usa grid-mapfile
- En un futuro próximo asociara tambien VOMS group
and roles - Ataques y acceso de intrusos uso, sobreuso y
abuso
12Uso de Certificados y proxys
- Obtener información de un certificado
- grid-cert-info
- Uso de proxy certificates
- Crear grid-proxy-init
- Destruir grid-proxy-destroy
- Ontener información grid-proxy-info
- Long Term proxy
- myproxy server
- Create and store myproxy-init s lthostnamegt
- Obtener informacion myproxy-info
- Obtener un nuevo proxy myproxy-get-delegation
- Destruir el proxy myproxy-destroy
13GSI APIs
- GSS-API , C/C
- Java GSS-API
- Java Comodity Grid (CoG) API
- C/C Web Services
14Obtención de Certificados
- IMPORTANTE
- Puedes localizar la web de tu CA nacional para
Grid desde www.eugridpma.org pero generalmente el
administrador de grid de tu centro te podrá
ayudar a agilizar este trámite - Las solicitudes deben ser generadas por el
propietario del certificado. - La clave privada debe estar encriptada a través
de un password. - Guardar copias de seguridad de la clave privada
- NO OLVIDAR EL PASSWORD
- No compartir los Certificados personales.
Limitación de uso. - Si la seguridad de tu certificado se ve
comprometida debes avisar urgentemente a la RA y
a la CA. - PRACTICO
- Obtened una cuenta en un User Interface
- Solicitad vuestros Certificados Personales
15Conclusiones
- El uso de certificados permite establecer una
infraestructura de comunicación segura entre las
partes del grid - El uso de proxy certificates en GSI hace mas
fácil y flexible su uso - Seguridad
- Authentication Certificados
- Autorization Organizaciones Virtuales
- Ejercicios