Skip to content

Seguridad

CiviCRM es una solución basada en web y, como tal, requiere un servidor web para funcionar. Cuando los servidores web almacenan datos confidenciales y están disponibles públicamente a través de Internet, como está diseñado para ser CiviCRM, la seguridad es un aspecto importante a considerar. La utilización de una VPN (Red Virtual Privada) es recomendada para proteger los datos del CRM y, de esta manera, encapsular los datos transferidos a través de redes públicas en paquetes cifrados. Uno de los métodos más simples para implementar esto, es forzar el uso de túneles encriptados al acceder al servidor a través de varios protocolos de datos (por ejemplo: SSH, SSL y FTPS, que se comentan a continuación); esto protege los datos, de forma que solo pueden abrirlos el navegador web del usuario y el servidor.

Transferencia de datos encriptados

Hay distintos tipos de protocolos (métodos) para transferir datos de un punto a otro.

  • FTPS: Para cargar archivos al servidor fuera de la interfaz CiviCRM (solo administradores), es posible que desee utilizar un cliente FTPS (Protocolo seguro de transferencia de archivos). Si es posible, configure cuentas FTPS con nombres de usuario y contraseñas.
  • SSH: El protocolo SSH (Secure Shell) es un método que se puede utilizar para autenticar a un usuario, mediante contraseña o clave, y que acceda al servidor para ejecutar instrucciones de línea de comandos.
  • SSL: Esto afecta a los usuarios que acceden a CiviCRM a través de un navegador web. SSL (Secure Sockets Layer) cifra los datos enviados en una página por un usuario y los envía al servidor, la única entidad que tiene la 'clave' para descifrar los datos, y viceversa. Es posible que se requiera SSL para el cumplimiento de PCI o simplemente para evitar la interceptación de información confidencial durante el tránsito. De forma predeterminada, CiviCRM no está protegido para el acceso al navegador, lea la sección 'Configuración de SSL' para obtener instrucciones de configuración.

Nota: asegúrese de que las contraseñas utilizadas por una persona en varios protocolos sean diferentes, ya que cada una lleva consigo distintos niveles de control.

¿Debo usar SSL (Secure Sockets Layer)?

Cumplimiento de PCI

“PCI Compliance” (Cumplimiento de PCI) son las siglas de “Payment Card Industry Compliance”, lo que traducido podría ser “Cumplimiento de la industria de tarjetas de pago”, que no es ni más ni menos que una serie de normas que están desarrolladas para proteger los datos de los dueños de tarjetas de crédito durante, y después, de una transacción financiera.

American Express, Discover Financial Services, JCB International, MasterCard Worldwide, y Visa Inc. trabajan juntos para formar estándares para el procesamiento de pagos en línea (consulte https://www.pcisecuritystandards.org/organization_info/index.php).

El alojamiento de sitios web que aceptan pagos mediante CiviContribute y CiviEvent deben cumplir con sus estándares si el complemento que está utilizando no dirige al usuario a páginas externas para el procesamiento de pagos (por ejemplo, PayPal Standard redirige a los usuarios a páginas de PayPal para realizar la transacción antes de regresar a su sitio web y, por lo tanto, debe cumplir con estos estándares). Si la información de la tarjeta de crédito se procesa o almacena en su servidor, hay una serie de Estándares de seguridad de datos de aplicaciones de pago de PCI (PCI PA-DSS) que deben cumplirse, incluida la necesidad de utilizar SSL. Cada instalación de CiviCRM también debe probarse para el cumplimiento de PCI cada 4 a 12 meses. Considere cuidadosamente el método de procesamiento de pagos que desea usar antes de implementarlo, use SSL si está usando un procesador de pago con tarjeta de crédito y busque consultas de seguridad si decide almacenar la información de la tarjeta de crédito en su servidor (lo cual no se recomienda).

Para obtener más información, consulte: https://www.pcisecuritystandards.org/merchants/index.php.

Acceso a datos no autorizado

Aparte de la posible necesidad de cumplir con el cumplimiento de PCI, debe utilizar SSL si desea asegurarse de:

  • Sus datos no pueden ser leídos por usuarios no autorizados (por ejemplo, interceptando datos no cifrados durante el tránsito entre el usuario y el servidor).
  • La sesión de un usuario no es "pirateada" adquiriendo la cookie utilizada para autenticar su acceso. Si esto ocurre, una persona no autorizada podría asumir su identidad y proceder a utilizar el sistema a través de su cuenta.

Configurar SSL

Antes de elegir una empresa de alojamiento o un proveedor de servidor web, compruebe que admiten certificados SSL. Como se explicó anteriormente, SSL cifra los datos transferidos entre el navegador web de un usuario y el servidor, pero esto no está habilitado en la instalación, ya que requiere la compra de un certificado SSL de un proveedor confiable. Para instalar SSL:

  1. Determine cuáles son los requisitos o procedimientos de su servidor para habilitar un certificado SSL. En servidores compartidos, esto puede requerir la compra de una IP estática en su empresa de alojamiento web. Importante: su empresa de alojamiento web debe estar dispuesta a instalar el certificado en su dominio, no en un nivel superior. CiviCRM no admite SSL compartido.
  2. Adquiera un certificado SSL de un proveedor de seguridad.
  3. Instale el certificado SSL en su servidor siguiendo el procedimiento que aprendió en el paso 1.
  4. Habilite la redirección 'HTTPS' en su sitio CiviCRM para que las páginas de inicio de sesión, de contribución en línea, de miembros, de eventos y de administrador utilicen cifrado SSL. CiviCRM tiene una opción en la configuración global para verificar el certificado y habilitar SSL para estas páginas (Administrar > Opciones del sistema > URLs de recursos). Para usar SSL para todas las páginas de CiviCRM, edite el archivo apache .htaccess del servidor para forzar SSL y redirigir las solicitudes HTTP a HTTPS, o habilite la opción en Drupal.

Backups y su seguridad

Todos los sistemas informáticos son propensos a fallas, tanto de hardware como de software. Es recomendable crear copias de seguridad periódicas de todos los datos existentes (y posiblemente del software) para cumplir con dos propósitos importantes: recuperación y retención. En cuanto a la recuperación, la organización puede garantizar que los datos recopilados y almacenados en su base de datos no se pierdan en caso de falla. Las copias de seguridad también pueden ayudar a fortalecer la continuidad del servicio. En algunas situaciones, es esencial que las operaciones de recopilación o análisis de datos no cesen, y la capacidad de crear una herramienta funcional a partir de una copia de seguridad (mientras se resuelve el problema) minimiza el tiempo de inactividad. Por el contrario, la retención es útil cuando la organización necesita verificar el estado de los datos recopilados en un momento dado en el pasado.

Una vez realizadas, las propias copias de seguridad también deben protegerse de desastres naturales, incendios, vandalismo y robo. Es una buena práctica cifrar las copias de seguridad y duplicarlas, manteniendo una copia en las instalaciones y enviando la otra al almacenamiento en otra ubicación externa.

Jurisdicción de almacenamiento de datos

CiviCRM se puede ejecutar en un servidor web administrado por su organización o por un proveedor de alojamiento externo. Al trabajar con temas relacionados con los derechos humanos, o si su organización está recopilando información confidencial sobre el gobierno de un país o sus funcionarios, puede ser importante saber dónde se almacenan sus datos. Considere recopilar información detallada sobre la ubicación física de los servidores y el país en cuya jurisdicción se ubicarán los datos en caso de que una agencia gubernamental solicite información.

Otras preocupaciones de seguridad

Es posible que personas no autorizadas accedan a los datos a través de una variedad de métodos, muchos de los cuales no se relacionan directamente con la seguridad del CRM. Entre otras, las siguientes son áreas que deben examinarse:

  • Acceso físico al servidor: el edificio que contiene los servidores debe estar adecuadamente protegido contra intrusión.

  • Contraseñas: se debe implementar una política organizacional donde las contraseñas sean de una complejidad y longitud suficientes (por ejemplo, un mínimo de 8 caracteres, incluidas letras y números), y no deben compartirse ni divulgarse a través de comunicaciones inseguras como el correo electrónico.