Guía de tecnologías

OTRS: instalación y configuración básica en CentOS 7

8 min read Soporte técnico Actualizado 19 Oct 2025
Instalación OTRS en CentOS 7 — Guía paso a paso
Instalación OTRS en CentOS 7 — Guía paso a paso

Esta guía explica cómo instalar OTRS 5 en una máquina CentOS 7 (Minimal) paso a paso: preparación del sistema, MariaDB, Apache con SSL, módulos PERL necesarios, verificación y tareas postinstalación. Incluye listas de verificación por rol, notas de seguridad y consejos de migración.

Introducción

OTRS (Open Ticket Request System) es un sistema open source avanzado para gestionar incidencias y atención al cliente. Está escrito en Perl y proporciona funcionalidades claves como portal de clientes, gestión de colas, prioridades, SLA, plantillas de correo, adjuntos, estadísticas y reportes (CSV/PDF).

Definición breve: OTRS es una plataforma de gestión de tickets para soporte y centros de ayuda que centraliza comunicaciones por email, portal y teléfono.

Importante: esta guía cubre OTRS 5 en CentOS 7 y está destinada a entornos de laboratorio o producción controlada. No inventa estadísticas ni asume escenarios empresariales específicos.

Variantes de búsqueda y propósito

Intención principal: instalar OTRS en CentOS 7 Variantes relacionadas: configurar OTRS, OTRS y MariaDB, OTRS con SSL en Apache, módulos Perl para OTRS, guía OTRS 5

Entorno de prueba usado

  • VirtualBox VM con CentOS 7 Minimal
  • 2 GB de RAM
  • 8 GB disco
  • 2 interfaces de red: Host-only y NAT

Nota: adapte recursos según carga esperada en producción.

Preparación del sistema

Asumiendo una instalación fresca de CentOS 7 Minimal, actualice el sistema e instale paquetes adicionales:

yum update

En la salida del comando se muestra un resumen transaccional: seleccione “y” para confirmar.

Instale un editor (usamos vim en esta guía):

yum install vim

Instale wget para descargas:

yum install wget

Para configurar la red use la herramienta TUI del NetworkManager:

nmtui

Pantalla de configuración de red en CentOS 7 (NMTUI)

Después de aplicar cambios en la red y el nombre de host, aplíquelos reiniciando las redes:

service networks restart

Verifique la configuración de red con:

ip addr

Ejemplo de salida del comando ip addr:

1: lo:  mtu 65536 qdisc noqueue state UNKNOWN qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: enp0s3:  mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 08:00:27:67:bc:73 brd ff:ff:ff:ff:ff:ff
    inet 10.0.2.15/24 brd 10.0.2.255 scope global dynamic enp0s3
       valid_lft 84631sec preferred_lft 84631sec
    inet6 fe80::9e25:c982:1091:90eb/64 scope link 
       valid_lft forever preferred_lft forever
3: enp0s8:  mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 08:00:27:68:88:f3 brd ff:ff:ff:ff:ff:ff
    inet 192.168.56.101/24 brd 192.168.56.255 scope global dynamic enp0s8
       valid_lft 1044sec preferred_lft 1044sec
    inet6 fe80::a00:27ff:fe68:88f3/64 scope link 
       valid_lft forever preferred_lft forever 

Desactivar SELinux (opcional para simplificar)

Edite el archivo de configuración:

vim /etc/selinux/config

Contenido de ejemplo:

"/etc/selinux/config" 14L, 547C# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=enforcing
# SELINUXTYPE= can take one of three two values:
#     targeted - Targeted processes are protected,
#     minimum - Modification of targeted policy. Only selected processes are prootected. 
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted  

Cambie SELINUX=enforcing a SELINUX=disabled, guarde y reinicie el servidor.

Verifique el estado con:

getenforce

Salida esperada:

Disabled

Nota: desactivar SELinux reduce la superficie de errores en laboratorio, pero en producción es preferible configurarlo correctamente.

Instalación de MariaDB en CentOS 7

Instale MariaDB:

yum -y install mariadb-server

Cree un archivo de configuración personalizado para ajustar parámetros de MySQL/MariaDB:

vim /etc/my.cnf.d/zotrs.cnf

Contenido sugerido:

max_allowed_packet = 20M
query_cache_size = 32M
innodb_log_file_size = 256M

Inicie MariaDB:

systemctl start mariadb

Aumente la seguridad y defina contraseña root:

/usr/bin/mysql_secure_installation

Siga las indicaciones interactivas; un ejemplo de la primera parte:

NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!

In order to log into MariaDB to secure it, we'll need the current
password for the root user.  If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.

Enter current password for root (enter for none):

Acepte establecer una nueva contraseña root y responda “Y” a las preguntas recomendadas como eliminar usuarios anónimos, quitar la base de datos de prueba y recargar tablas de privilegios.

Habilite MariaDB para inicio automático:

systemctl enable mariadb.service

Descargar OTRS

Descargue el paquete RPM de OTRS 5 (ajuste la URL si hay versión distinta):

wget http://ftp.otrs.org/pub/otrs/RPMS/rhel/7/otrs-5.0.15-01.n oarch.rpm

Nota: verifique la URL oficial si la versión cambia.

Instalar EPEL

Algunos paquetes requieren EPEL. Instale el metapaquete EPEL:

[root@centos7 ~]# yum -y http://mirror.globo.com/epel/7/x86_64/e/epel-r release-7-9.noarch.rpm

Ajuste la URL del mirror según su región.

Instalación de OTRS

Instale el RPM de OTRS (sin comprobación GPG si lo desea):

yum install -nogpgcheck otrs-5.0.15-01.noarch.rpm

Confirme la instalación respondiendo “y” cuando se muestren los paquetes dependientes.

Inicie Apache (httpd):

systemctl start httpd.service

Habilite Apache para el arranque automático:

systemctl enable httpd.service

Configurar SSL en Apache (certificado autofirmado)

Instale el módulo mod_ssl:

yum -y install mod_ssl

Genere una clave y un certificado autofirmado. Vaya al directorio de certificados:

cd /etc/pki/tls/certs/

Genere la clave (en el ejemplo se usa centos7.key):

make centos7.key

Salida ejemplo al generar la clave:

umask 77 ; \ /usr/bin/openssl genrsa -aes128 2048 > centos7.key Generating RSA private key, 2048 bit long modulus .+++ .........................................................................................+++ e is 65537 (0x10001) Enter pass phrase: 

Elimine la frase de paso de la clave si lo desea:

openssl rsa -in centos7.key -out centos7.key

Cree la CSR (centos7.csr):

make centos7.csr

Complete los datos solicitados (país, estado, localidad, organización, CN que será el hostname o FQDN).

Genere el certificado autofirmado:

openssl x509 -in centos7.csr -out centos7.crt -req -signkey centos7.key

Ejemplo de salida:

Signature ok subject=/C=BR/ST=SP/L=Campinas/O=Centos7/OU=Centos7/CN=centos7.local Getting Private key

Editar configuración SSL de Apache

Cree una copia de seguridad del archivo ssl.conf y edítelo:

cp /etc/httpd/conf.d/ssl.conf /etc/httpd/conf.d/ssl.conf.old
vim /etc/httpd/conf.d/ssl.conf

Asegúrese de que las directivas apunten a su clave y certificado:

SSLCertificateKeyFile /etc/pki/tls/certs/centos7.key
SSLCertificateFile /etc/pki/tls/certs/centos7.csr
SSLProtocol -All +TLSv1 +TLSv1.1 +TLSv1.2
ServerName centos7.local:443

Reinicie Apache:

systemctl restart httpd

Forzar HTTPS para OTRS

En httpd.conf asegúrese de incluir los archivos de conf:

vim /etc/httpd/conf/httpd.conf

Al final del archivo descomente:

IncludeOptional conf.d/*.conf

Edite la configuración de OTRS (zzz_otrs.conf):

vim /etc/httpd/conf.d/zzz_otrs.conf

Añada las reglas de redirección HTTPS antes del módulo mod_version:

RewriteEngine On  
RewriteCond %{HTTPS} off  
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

Reinicie Apache:

systemctl restart httpd

Módulos PERL y verificación de requisitos

Instale módulos Perl necesarios para funcionalidades extendidas:

yum -y install "perl(Text::CSV_XS)" "perl(Crypt::Eksblowfish::Bcrypt)" "perl(YAML::XS)" "perl(JSON::XS)" "perl(Encode::HanExtra)" "perl(Mail::IMAPClient)" "perl(ModPerl::Util)"

OTRS incluye una herramienta para verificar módulos Perl. Ejecute:

cd /opt/otrs/bin
./otrs.CheckModules.pl

Salida de ejemplo (resumida):

o Apache::DBI......................ok (v1.12)
o Apache2::Reload..................ok (v0.13)
o Archive::Tar.....................ok (v1.92)
... (lista de módulos con su estado) ...

Resuelva los módulos no instalados según las recomendaciones de la herramienta.

Iniciar demonio OTRS y configurar cron

Inicie el demonio OTRS con el usuario otrs:

su -c "/opt/otrs/bin/otrs.Daemon.pl start" -s /bin/bash otrs

Para desactivar el firewall temporalmente (en laboratorio):

systemctl stop firewalld
systemctl disable firewalld.service

Inicie el cron de OTRS:

su -c "/opt/otrs/bin/otrs.Daemon.pl start" -s /bin/bash otrsCron.sh

Salida esperada:

/opt/otrs/bin Cron.sh - start/stop OTRS cronjobs Copyright (C) 2001-2012 OTRS AG, http://otrs.org/ (using /opt/otrs) done

Verifique el estado del cron:

su -c "/opt/otrs/bin/otrs.Daemon.pl status" -s /bin/bash otrsCron.sh

Cambie al usuario otrs para editar el crontab:

su otrs
crontab -e

Ejemplo de crontab mínimo recomendado:

# --
# Copyright (C) 2001-2016 OTRS AG, http://otrs.com/
# --
# Who gets the cron emails?
MAILTO="root@localhost"
# check OTRS daemon status
*/5 * * * *    $HOME/bin/otrs.Daemon.pl start >> /dev/null

Configurar OTRS vía web

Abra un navegador y vaya a:

https://centos7.local/otrs/installer.pl

Sustituya centos7.local por su hostname o IP.

Pantalla del instalador de OTRS mostrando pasos

  • Acepte la licencia para continuar.

Pantalla para aceptar la licencia de OTRS

  • Seleccione MySQL y elija crear una nueva base de datos para OTRS.

  • Introduzca usuario, contraseña y host de MariaDB y pruebe la conexión.

Insertar credenciales de base de datos para OTRS

El instalador creará la base de datos en MariaDB.

Creación de la base de datos OTRS en MariaDB

Una vez creada, continúe configurando los parámetros del sistema con sus datos.

Base de datos OTRS creada con éxito

Rellene las configuraciones personales del sistema y las opciones de correo entrante/saliente. Ejemplo: SMTP con STARTTLS puerto 587 para salida, POP3 para entrada si su proveedor lo permite.

Configurar correo electrónico en OTRS

Apunte el instalador las credenciales del usuario admin; anótelas y cámbielas tras el primer acceso.

Usuario y contraseña iniciales de OTRS

URL de acceso a la interfaz: https://centos7.local/otrs/index.pl? (reemplazar por su host/IP).

Pantalla de login administrativo de OTRS

OTRS estará instalado y listo para adaptar a sus flujos de soporte.

Mejores prácticas de configuración inicial

  • Cambie inmediatamente las credenciales por defecto del admin.
  • Configure copias de seguridad regulares de la base de datos y del directorio /opt/otrs.
  • Habilite un certificado válido (no autofirmado) en producción.
  • Active TLS 1.2+ y deshabilite protocolos inseguros cuando sea posible.
  • Mantenga SELinux en modo enforcing con políticas ajustadas si el entorno lo permite.

Lista de verificación por rol

Administrador de sistema

  • Actualizar y parchear el servidor.
  • Configurar firewall (abrir solo puertos necesarios 80/443, puertos de management restringidos).
  • Habilitar copias de seguridad automáticas de MariaDB.
  • Configurar certificados válidos (Let’s Encrypt o CA corporativa).

Administrador de OTRS

  • Cambiar contraseñas por defecto.
  • Configurar colas, tipos de ticket y plantillas de correo.
  • Crear roles y permisos según el equipo.
  • Configurar SLA y alertas por prioridad.

Equipo de soporte

  • Probar flujo de tickets (recepción, asignación, escalado).
  • Verificar plantillas y respuestas automáticas.
  • Confirmar acceso al portal de clientes.

Mini-metodología de despliegue (pasos clave)

  1. Preparar VM y actualizar sistema.
  2. Instalar MariaDB y asegurarla.
  3. Instalar Apache y configurar SSL.
  4. Instalar dependencias Perl y verificar con otrs.CheckModules.pl.
  5. Instalar OTRS y completar instalación web.
  6. Cambiar credenciales, configurar cron y backups.
  7. Validar flujos de soporte y realizar pruebas de carga y seguridad.

Cuándo OTRS puede no ser la mejor opción

  • Requisitos de alta disponibilidad y multi-datacenter sin experiencia previa: OTRS 5 puede requerir personalización significativa.
  • Si necesita una solución SaaS o muy management-free, considere alternativas cloud.
  • Para flujos de trabajo muy personalizados puede requerir desarrollo adicional en Perl.

Alternativas y enfoques alternativos

  • Soluciones comerciales (Freshdesk, Zendesk) para equipo sin administración de infra.
  • Herramientas open source modernas (Zammad, Request Tracker) según preferencias de lenguaje, comunidad y características.

Seguridad y privacidad

  • Use certificados emitidos por CA para producción.
  • Aplique cifrado en tránsito (TLS) y en reposo donde corresponda.
  • Revise el acceso a la base de datos y restrinja conexiones remotas si no son necesarias.
  • Cumplimiento GDPR: documente qué datos personales se guardan en tickets y establezca retención y procesos de eliminación.

Importante: no guarde información sensible en texto plano dentro de tickets sin la debida protección.

Mapa de compatibilidades y recomendaciones de migración

  • OTRS 5 funciona con MariaDB/MySQL; para PostgreSQL o Oracle se requieren módulos/ajustes adicionales.
  • Para migraciones desde versiones anteriores, revise la documentación oficial y realice pruebas en entorno de staging.

Criterios de aceptación

  • OTRS responde en HTTPS con certificado válido.
  • Servicio web de OTRS accesible y login administrativo funcional.
  • Demonios y cron de OTRS activos y sin errores.
  • Módulos Perl requeridos reportados como “ok” por otrs.CheckModules.pl.
  • Copias de seguridad y restauración probadas.

Glosario breve

  • OTRS: sistema de gestión de tickets de código abierto.
  • CRON: planificador de tareas Unix.
  • CSR: Certificate Signing Request (solicitud de certificado).
  • SELinux: mecanismo de control de acceso obligatorio en Linux.

Problemas comunes y cómo resolverlos

  • Error de conexión a la base de datos: verifique credenciales, host y que MariaDB esté en escucha.
  • Módulos Perl faltantes: instale paquetes RPM o CPAN indicados por otrs.CheckModules.pl.
  • Errores HTTPS: ruta de certificado/clave incorrecta o permisos insuficientes.
  • Permisos de archivos OTRS: asegúrese de que /opt/otrs pertenezca al usuario otrs donde proceda.

Resumen final

OTRS 5 puede desplegarse en CentOS 7 siguiendo los pasos de esta guía: preparar sistema, instalar MariaDB, configurar Apache con SSL, instalar dependencias Perl, ejecutar el instalador web y aplicar buenas prácticas de seguridad. Use las listas de verificación por rol antes de mover a producción y documente procedimientos de respaldo y recuperación.

Notas finales:

  • Pruebe los cambios en un entorno de staging antes de aplicarlos en producción.
  • Mantenga un control de versiones de configuraciones críticas (/etc/httpd, /etc/my.cnf.d, /opt/otrs).
Autor
Edición

Materiales similares

Cómo solicitar reembolso en Microsoft Store
Soporte

Cómo solicitar reembolso en Microsoft Store

Actualizar a VMware Workstation 17 Player con TPM
Virtualización

Actualizar a VMware Workstation 17 Player con TPM

Solucionar error 126 en Windows 11 y 10
Soporte técnico

Solucionar error 126 en Windows 11 y 10

Reservar cita en centro Xiaomi en India
Soporte técnico

Reservar cita en centro Xiaomi en India

Keyloggers: qué son, riesgos y cómo defenderse
Ciberseguridad

Keyloggers: qué son, riesgos y cómo defenderse

Corregir 'Parámetro incorrecto' en disco externo Windows 11
Soporte técnico

Corregir 'Parámetro incorrecto' en disco externo Windows 11