Instalar Request Tracker 4.4.2 CentOS7
El argumento podría hacerse Request Tracker es el estándar de facto cuando se trata de emitir sistemas de seguimiento. Quizás el único inconveniente de RT es la ligera curva de aprendizaje requerida para desplegarlo. Mi objetivo para este post es proporcionar una solución de muestra que alivie esto.
Los componentes principales necesarios para la instalación:
1. Sistema operativo
Nuestra solución utilizará la imagen CentOS-6.4-x86_64-minimal.iso . El objetivo de esta imagen es instalar un sistema CentOS 6.4 muy básico, con el número mínimo de paquetes necesarios para tener un sistema funcional. Esta publicación no documentará el proceso de instalación de CentOS 6 considerando que cada organización tiene requisitos diferentes. Las etapas básicas de la instalación del SO consisten en lenguaje, almacenamiento, nombre de host, red, zona horaria y configuración de la contraseña de root.
Nota : Todos los comandos se ejecutan dentro del contexto de lacuenta de usuario raíz , a menos que se especifique lo contrario.
# 1.1 Actualizaciones y paquetes básicos
Asegúrese de actualizar el sistema antes de empezar.
Permite también instalar los siguientes paquetes que no se incluyen de forma predeterminada.
# 1.2 hosts file
Se recomienda agregar una entrada de hostname (FQDN y short), del equipo local, al archivo hosts . Puede actualizar la entrada manualmente (a través del editor de texto) o ejecutar el siguiente conjunto de comandos.
Verifique la entrada.
# 1.3 SELinux
Mi caso de uso no requiere que SELinux esté activo, así que lo desactivaré en mi configuración. Si tiene un requisito particular de que se habilite SELinux, es posible que sea necesario realizar más modificaciones y pruebas (además de este tutorial) para obtener una solución satisfactoria. La página de SELinux de la página Wiki del buscador de pedidos debe indicarle la dirección correcta.
Reinicie el equipo para que el cambio surta efecto. Después de iniciar sesión después del reinicio, compruebe que SELinux está deshabilitado.
# 1.4 Protocolo de tiempo de red (NTP) La
sincronización de tiempo es un paso de configuración a menudo pasada por alto, pero muy esencial, para nuevas implementaciones de servidores. En mi configuración, tendré mi sincronización de servidor de seguimiento de solicitud con un controlador de dominio de Active Directory (que tiene el papel de FSMO de emulador de PDC ) en mi red privada. Necesitaremos modificar el archivo ntp.conf con un editor de texto e iniciar el daemon NTP (y también configurarlo para autostart en el momento del arranque). Tenga en cuenta que "comentar" los servidores públicos de clúster públicos pool.ntp.org predeterminados . Es posible que desee dejar activadas estas opciones si no tiene una fuente de tiempo específica con la que sincronizar.
Inicie el daemon NTP.
Establezca el daemon NTP para autostart en el arranque y verifique.
Podemos verificar el estado del NTP ejecutando los siguientes comandos:
# 1.5 Firewall
Necesitamos agregar reglas de cortafuegos para abrir tanto los puertos de Protocolo de Transferencia de Hipertexto (HTTP) como los de Protocolo Seguro de Transferencia de Hipertexto (HTTPS) para la comunicación entre nuestro servidor y los usuarios externos. Tome nota de que el puerto HTTP sólo servirá como una redirección a HTTPS.
Reinicie el servicio de firewall para que el cambio surta efecto.
# 1.6 Paquetes adicionales para Enterprise Linux (EPEL)
Nuestra solución requerirá la inclusión del repositorio EPEL YUM para el paquete mod_fcgid . Visite el sitio de EPEL para comprobar que tiene la última versión del archivo de paquete RPM de epel-release . En la fecha de esta publicación, el siguiente comando descargará e instalará el paquete RPM:
Permite verificar que el repositorio EPEL esté habilitado.
Si el repositorio no está habilitado, puede ejecutar el siguiente comando para habilitarlo:
2. Base de datos
Nuestra solución utilizará PostgreSql para el almacén de datos RT. MariaDB es un reemplazo mejorado para MySQL. Visite elsitio deMariaDB para obtener más información.
3. Servidor Web
Vamos a utilizar el probado y verdadero servidor HTTP Apache como el componente del servidor web para nuestra solución.
# 3.1 Descargar e instalar
Descargue e instale httpd y otros paquetes de dependencia de RT.
# 3.2 httpd daemon
Inicie el daemon httpd.
Establezca el daemon httpd para autostart al arrancar.
4. Request Tracker (RT)
Ahora estamos en la etapa del proceso para obtener Request Tracker instalado con una configuración de base.
# 4.1 Usuarios y grupo
Cree elusuario de la cuenta del sistema rt y el grupo privado de usuarios (UPG).
Agregue el usuario de apache al grupo rt .
# 4.2 Entorno de compilación RT de la etapa
Descargue el último tarball comprimido RT 4, descomprima y navegue en el directorio.
# 4.3 RT Configurar script
Vamos a ejecutar el script de configuración con un número de opciones predeterminadas y explícitas. Dado que no lo hemos definido de otra manera, nuestra ubicación de ruta de instalación predeterminada será / opt / rt4 .
# 4.4 Perl CPAN.pm
La instalación de RT requiere entrar en el shell Perl CPAN.pm antes de ejecutar el verificador de dependencia de RT. Dentro del shell, permite configurar la configuración para automatizar la mayoría de las instalaciones del módulo.
# 4.5 RT Perl dependencias
Para las pocas veces que se le puede pedir una instalación, seleccione la opción predeterminada. Iterar la marca fixdeps comando hasta llegar a la instrucción de salida se han encontrado todas las dependencias.
Verificar.
# 4.6 Instalar RT e inicializar la base de datos de RT
Después de haber verificado las dependencias de Perl para RT se han cumplido, podemos iniciar la instalación.
Permite ahora ejecutar el siguiente comando para crear la base de datos RT y el usuario. No hemos establecido la contraseña de root deMySQL todavía, por lo que estará "en blanco" de forma predeterminada.
# 4.7 Configurar Apache para RT
Establecer HTTP a HTTPS redireccionar todas las solicitudes HTTP entrantes.
La instalación del módulo mod_ssl creó un archivo de configuración predeterminado (ssl.conf). Estaremos aprovechando este archivo para nuestra configuración RT.
Verifique la configuración de Apache.
# 4.8 RT_SiteConfig.pm archivo
Request Tracker es muy personalizable , pero la siguiente configuración de base de configuración debe empezar.
Reinicie el daemon httpd.
# 4.9 Momento de la verdad
Abra un navegador web e ingrese http://rt.corp.example.com (o https://rt.corp.example.com ) en el campo de la dirección web, luego presione la tecla enter para establecer una conexión segura al servidor RT. Si todo se ha instalado y configurado correctamente, se le debe presentar la página RT Login.
Las credenciales administrativas predeterminadas son:
5. Después de la instalación
En este punto, deberíamos tener un servidor RT básico en funcionamiento, pero necesitamos realizar algunas tareas posteriores a la instalación para Request Tracker y sus componentes, en las áreas de seguridad y funcionalidad.
# 5.1 MariaDB
Puede recordar que de los pasos anteriores nunca establecimos una contraseña para la cuenta de usuario raíz predeterminada de MySQL. Elcomando mysql_secure_installation realizará esta tarea además de otras tareas relacionadas con la seguridad de MySQL.
También necesitamos establecer una contraseña para el usuario de la base de datos RT ( rt_user ). La tarea requiere que añadamos la contraseña a la configuración RT y también la establecemos en MySQL.
Agregue la clave $ DatabasePassword y el valor correspondiente en el archivo RT_SiteConfig.pm .
Y ahora en MySQL.
También recomiendo aumentar los valores máximos para los siguientes parámetros de MySQL.
Reinicie el daemon de MySQL.
Reinicie el daemon httpd.
# 5.2 mod_fcgid
Según la documentación de RT :
ADVERTENCIA : Antes de mod_fcgid 2.3.6, el tamaño máximo de la solicitud era de 1 GB. A partir de 2.3.6, ahora es 128Kb. Es poco probable que sea lo suficientemente grande para cualquier instalación de RT que maneje los archivos adjuntos.
Reinicie el daemon httpd.
Los componentes principales necesarios para la instalación:
- CentOS (o si prefieres la versión de Ubuntu / Debian de este tutorial)
- MariaDB
- Servidor Apache HTTP
- Solicitar Seguimiento
1. Sistema operativo
Nuestra solución utilizará la imagen CentOS-6.4-x86_64-minimal.iso . El objetivo de esta imagen es instalar un sistema CentOS 6.4 muy básico, con el número mínimo de paquetes necesarios para tener un sistema funcional. Esta publicación no documentará el proceso de instalación de CentOS 6 considerando que cada organización tiene requisitos diferentes. Las etapas básicas de la instalación del SO consisten en lenguaje, almacenamiento, nombre de host, red, zona horaria y configuración de la contraseña de root.
Nota : Todos los comandos se ejecutan dentro del contexto de lacuenta de usuario raíz , a menos que se especifique lo contrario.
# 1.1 Actualizaciones y paquetes básicos
Asegúrese de actualizar el sistema antes de empezar.
# yum update
Permite también instalar los siguientes paquetes que no se incluyen de forma predeterminada.
# yum install file ntp vim-enhanced man man-pages wget yum-utils
# 1.2 hosts file
Se recomienda agregar una entrada de hostname (FQDN y short), del equipo local, al archivo hosts . Puede actualizar la entrada manualmente (a través del editor de texto) o ejecutar el siguiente conjunto de comandos.
# ipv4addr = $ (ip -f inet addr mostrar dev eth0 | sed -n 's / ^ * inet * \ ([. 0-9] * \). * / \ 1 / p') # printf "$ ipv4addr \ t $ (hostname -f) \ t $ (hostname -s) \ n ">> / etc / hosts # unset -v ipv4addr
Verifique la entrada.
# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 :: 1 localhost localhost.localdomain localhost6 localhost6.localdomain6 ip del servidor dominio o nombre del servidor 161.196.140.41 rt.cantv.com.ve
# 1.3 SELinux
Mi caso de uso no requiere que SELinux esté activo, así que lo desactivaré en mi configuración. Si tiene un requisito particular de que se habilite SELinux, es posible que sea necesario realizar más modificaciones y pruebas (además de este tutorial) para obtener una solución satisfactoria. La página de SELinux de la página Wiki del buscador de pedidos debe indicarle la dirección correcta.
# vim /etc/sysconfig/selinux
# 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=disabled
# SELINUXTYPE= can take one of these two values:
# targeted - Targeted processes are protected,
# mls - Multi Level Security protection.
SELINUXTYPE=targeted
Reinicie el equipo para que el cambio surta efecto. Después de iniciar sesión después del reinicio, compruebe que SELinux está deshabilitado.
# sestatus Estado de SELinux: deshabilitado
# 1.4 Protocolo de tiempo de red (NTP) La
sincronización de tiempo es un paso de configuración a menudo pasada por alto, pero muy esencial, para nuevas implementaciones de servidores. En mi configuración, tendré mi sincronización de servidor de seguimiento de solicitud con un controlador de dominio de Active Directory (que tiene el papel de FSMO de emulador de PDC ) en mi red privada. Necesitaremos modificar el archivo ntp.conf con un editor de texto e iniciar el daemon NTP (y también configurarlo para autostart en el momento del arranque). Tenga en cuenta que "comentar" los servidores públicos de clúster públicos pool.ntp.org predeterminados . Es posible que desee dejar activadas estas opciones si no tiene una fuente de tiempo específica con la que sincronizar.
# vim /etc/ntp.conf
...
# Permitir todo el acceso a través de la interfaz de bucle invertido. Esto podría
# ser apretado también, pero al hacerlo afectaría a algunos de
# las funciones administrativas.
Restringir 127.0.0.1
Restringir -6 :: 1
# Los hosts en la red local son menos restringidos.
#restrict 192.168.1.0 máscara 255.255.255.0 nomodify notrap
# Utilizar servidores públicos del proyecto pool.ntp.org.
# Considere unirse a la piscina (http://www.pool.ntp.org/join.html).
#server 0.centos.pool.ntp.org
#server 1.centos.pool.ntp.org
#server 2.centos.pool.ntp.org
# Utilizar el servidor NTP interno (AD / DC01)
server 10.1.206.11 iburst
#broadcast 192.168.1.255 autokey # servidor de difusión
#broadcastclient # broadcast client
#broadcast 224.0.1.1 autokey # servidor de multidifusión
#multicastclient 224.0.1.1 # multicast client
#manycastserver 239.255.254.254 # manycast server
#manycastclient 239.255.254.254 autokey # manycast client
...
Inicie el daemon NTP.
# service ntpd start Inicio de ntpd: [Aceptar]
Establezca el daemon NTP para autostart en el arranque y verifique.
# chkconfig ntpd on; chkconfig --list ntpd ntpd 0: desactivado 1: desactivado 2: activado 3: activado 4: activado 5: activado 6: desactivado
Podemos verificar el estado del NTP ejecutando los siguientes comandos:
# ntpq -pn remote refid st t cuando el sondeo alcance retardo fluctuación offset ============================================================================== * 10.1.206.11 50.23.135.154 3 en 50 64 37 0.892 11.750 3.961
# ntpstat sincronizado con el servidor NTP (10.1.206.11) en el estrato 4 tiempo correcto dentro de 125 ms servidor de sondeo cada 512 s
# 1.5 Firewall
Necesitamos agregar reglas de cortafuegos para abrir tanto los puertos de Protocolo de Transferencia de Hipertexto (HTTP) como los de Protocolo Seguro de Transferencia de Hipertexto (HTTPS) para la comunicación entre nuestro servidor y los usuarios externos. Tome nota de que el puerto HTTP sólo servirá como una redirección a HTTPS.
# vim /etc/sysconfig/iptables
# Configuración de cortafuegos escrita por system-config-firewall # No se recomienda la personalización manual de este archivo. *filtrar : INPUT ACCEPT [0: 0] : ADELANTE ACEPTA [0: 0] : OUTPUT ACCEPT [0: 0] -A INPUT -m state --state ESTABLISHED, RELATED -j ACCEPT -A INPUT -p icmp -j ACEPTAR -A INPUT -i lo -j ACCEPT -A INPUT -m estado -state NUEVO -m tcp -p tcp -dport 22 -j ACEPTAR -A INPUT -m estado -state NUEVO -m tcp -p tcp --dport 80 -j ACEPTAR -A INPUT -m estado -state NUEVO -m tcp -p tcp -dporte 443 -j ACEPTAR -A INPUT -j REJECT -rejecutar-con icmp-host-prohibido -A FORWARD -j RECHAZAR -rejecutar-con icmp-host-prohibido COMETER
Reinicie el servicio de firewall para que el cambio surta efecto.
# service iptables restart iptables: Flushing reglas de firewall: [OK] iptables: Establecer cadenas en la política ACCEPT: filter [OK] iptables: Descarga de módulos: [OK] iptables: Aplicación de reglas de cortafuegos: [Aceptar]
# 1.6 Paquetes adicionales para Enterprise Linux (EPEL)
Nuestra solución requerirá la inclusión del repositorio EPEL YUM para el paquete mod_fcgid . Visite el sitio de EPEL para comprobar que tiene la última versión del archivo de paquete RPM de epel-release . En la fecha de esta publicación, el siguiente comando descargará e instalará el paquete RPM:
# yum install http://ftp.osuosl.org/pub/fedora-epel/6/i386/epel-release-6-8.noarch.rpm
Permite verificar que el repositorio EPEL esté habilitado.
# Yum repolist Plugins cargados: mirror rápido Carga de velocidades de espejo desde el archivo de host en caché caliente / metalink | 9,0 kB 00:00 * base: mirrors.syringanetworks.net * epel: mirrors.syringanetworks.net * extras: ftp.osuosl.org * updates: linux.mirrors.es.net caliente | 3,9 kB 00:00 warm / primary_db | 5.1 MB 00:00 nombre del repo base CentOS-6 - Base 6,381 epel Paquetes adicionales para Enterprise Linux 6 - x86_64 8.754 extras CentOS-6 - Extras 12 actualizaciones CentOS-6 - Actualizaciones 647 vmware-tools Herramientas de VMware 43 repolist: 15,837
Si el repositorio no está habilitado, puede ejecutar el siguiente comando para habilitarlo:
# yum-config-manager - cálido-amistoso
2. Base de datos
Nuestra solución utilizará PostgreSql para el almacén de datos RT. MariaDB es un reemplazo mejorado para MySQL. Visite elsitio deMariaDB para obtener más información.
- Instale las RPM del repositorio:
yum install https://download.postgresql.org/pub/repos/yum/9.4/redhat/rhel-7-x86_64/pgdg-centos94-9.4-2.noarch.rpm
- instale los paquetes del servidor:
yum install postgresql94-server postgresql94-contrib postgresql94-libs
- instale los paquetes del servidor para los componentes de perl:
yum install https://download.postgresql.org/pub/repos/yum/9.4/redhat/rhel-7-x86_64/postgresql94-devel-9.4.14-1PGDG.rhel7.x86_64.rpm
- Opcionalmente inicialice la base de datos y habilite el inicio automático:
/usr/pgsql-9.4/bin/postgresql94-setup initdb
systemctl enable postgresql-9.4
systemctl start postgresql-9.4
Incluir Path Postgresqnl 9.4
Estas distribuciones para CentOS hay que indicarles la direccion del path para que pueda hubicar el directorio donde estan las librerias des Postgres:
Este comando indica cual es la ubicacion de Postgresql
Este comando indica cual es la ubicacion de Postgresql
Este comando indica cual es la ubicacion de Postgresql
which pg_config
Este comando indica cual es la ubicacion de Postgresql
locate pg_config
- Opcionalmente inicialice la base de datos y habilite el inicio automático:
PATH=$PATH:/usr/pgsql-9.4/bin/
- Opcionalmente inicialice la base de datos y habilite el inicio automático:
PATH=$PATH:/usr/pgsql-9.4/bin/
echo $PATH
/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/
- Opcionalmente inicialice la base de datos y habilite el inicio automático:
/usr/pgsql-9.4/bin/postgresql94-setup initdb
systemctl enable postgresql-9.4
systemctl start postgresql-9.4
Posterior a la instalación
Debido a las políticas para las distribuciones de la familia Red Hat, la instalación de PostgreSQL no estará habilitada para el inicio automático o la base de datos se inicializará automáticamente. Para completar la instalación de su base de datos, debe realizar estos dos pasos: o, en Fedora 24 y otras distribuciones derivadas posteriores:
service postgresql initdb
chkconfig postgresql on
postgresql-setup initdb
systemctl enable postgresql.service systemctl start postgresql.service
3. Servidor Web
Vamos a utilizar el probado y verdadero servidor HTTP Apache como el componente del servidor web para nuestra solución.
# 3.1 Descargar e instalar
Descargue e instale httpd y otros paquetes de dependencia de RT.
# yum install httpd httpd-devel mod_ssl mod_fcgid hacer gcc openssl-devel gd-devel perl-CPAN perl-YAML perl-GD graphviz-perl
# 3.2 httpd daemon
Inicie el daemon httpd.
# service httpd start
Establezca el daemon httpd para autostart al arrancar.
# chkconfig httpd en
4. Request Tracker (RT)
Ahora estamos en la etapa del proceso para obtener Request Tracker instalado con una configuración de base.
# 4.1 Usuarios y grupo
Cree elusuario de la cuenta del sistema rt y el grupo privado de usuarios (UPG).
# useradd -r -s / sbin / nologin rt
Agregue el usuario de apache al grupo rt .
# usermod -aG rt apache
# 4.2 Entorno de compilación RT de la etapa
Descargue el último tarball comprimido RT 4, descomprima y navegue en el directorio.
# cd # wget http://download.bestpractical.com/pub/rt/release/rt.tar.gz # tar xf rt.tar.gz -C / tmp # cd / tmp / rt- *
# 4.3 RT Configurar script
Vamos a ejecutar el script de configuración con un número de opciones predeterminadas y explícitas. Dado que no lo hemos definido de otra manera, nuestra ubicación de ruta de instalación predeterminada será / opt / rt4 .
# ./configure --with-web-user = apache --with-web-group = apache --enable-graphviz --enable-gd
# 4.4 Perl CPAN.pm
La instalación de RT requiere entrar en el shell Perl CPAN.pm antes de ejecutar el verificador de dependencia de RT. Dentro del shell, permite configurar la configuración para automatizar la mayoría de las instalaciones del módulo.
# CPAN ... ¿Quieres que configure lo más posible automáticamente? [sí] <entrar> ... cpan [1]> o conf prerequisites_policy seguir cpan [2]> o conf build_requires_install_policy sí cpan [3]> o conf commit cpan [4]> q
# 4.5 RT Perl dependencias
Para las pocas veces que se le puede pedir una instalación, seleccione la opción predeterminada. Iterar la marca fixdeps comando hasta llegar a la instrucción de salida se han encontrado todas las dependencias.
# make testdeps # make fixdeps
Verificar.
# Hacen testdeps / usr / bin / perl ./sbin/rt-test-dependencies --verbose --with-mysql --with-fastcgi perl > = 5.8.3 (5.10.1) ... encontrado usuarios: rt group (rt) ... encontrado bin owner (root) ... encontrado libs owner (root) ... encontrado libs group (bin) ... encontrado propietario de la web (apache) ... encontrado grupo web (apache) ... encontrado Dependencias de CLI: Term :: ReadKey ... encontrado Getopt :: Long> = 2.24 ... encontrado HTTP :: Request :: Common ... encontrado Term :: ReadLine ... encontrado Texto :: ParseWords ... encontrado LWP ... encontrado Dependencias CORE: DateTime> = 0.44 ... encontrado Class :: ReturnValue> = 0.40 ... encontrado Texto :: Citado> = 2.02 ... encontrado Regexp :: IPv6 ... encontrado HTML :: TreeBuilder ... encontrado CSS :: Squish> = 0.06 ... encontrado Codificar> = 2,39 ... encontrado DateTime :: Locale> = 0.40 ... encontrado Module :: Versions :: Report> = 1.05 ... encontrado MIME :: Entity> = 5.425 ... encontrado Digest :: SHA ... encontrado Lista :: MoreUtils ... encontrado DBI> = 1,37 ... encontrado Locale :: Maketext :: Lexicon> = 0.32 ... encontrado Devel :: StackTrace> = 1.19 ... encontrado Digest :: base ... encontrado HTML :: FormatText ... encontrado Texto :: Contraseña :: Pronunciable ... encontrado Devel :: GlobalDestruction ... encontrado Time :: ParseDate ... encontrado Archivo :: Temp> = 0.19 ... encontrado Locale :: Maketext> = 1.06 ... encontrado Tree :: Simple> = 1.04 ... encontrado Text :: Template> = 1.44 ... encontrado Scalar::Util ...found HTML :: Citado ... encontrado HTML :: Scrubber> = 0.08 ... encontrado File :: Spec> = 0.8 ... encontrado DBIx :: SearchBuilder> = 1.59 ... encontrado Sys :: Syslog> = 0.16 ... encontrado Mail :: Mailer> = 1.57 ... encontrado Archivo :: ShareDir ... encontrado Regexp :: Common ... encontrado Digest :: MD5> = 2.27 ... encontrado Cache :: Simple :: TimedExpiry ... encontrado Archivo :: Glob ... encontrado Class :: Accessor> = 0.34 ... encontrado Locale :: Maketext :: Fuzzy ... encontrado Time :: HiRes ... encontrado Texto :: Wrapper ... encontrado Regexp :: Common :: net :: CIDR ... encontrado Net :: CIDR ... encontrado Log :: Dispatch> = 2.23 ... encontrado UNIVERSAL :: require ... encontrado Email :: Dirección ... encontrado DASHBOARDS dependencias: HTML :: RewriteAttributes> = 0.05 ... encontrado URI> = 1.59 ... encontrado MIME :: Tipos ... encontrados Dependencias FASTCGI: FCGI :: ProcManager ... encontrado FCGI> = 0,74 ... encontrado Dependencias GD: GD :: Text ... encontrado GD ... encontrado GD :: Graph ... encontrado Dependencias GPG: PerlIO :: eol ... encontrado GnuPG :: Interface ... encontrado GRAPHVIZ dependencias: IPC :: Run> = 0.90 ... encontrado GraphViz ... encontrado Dependencias ICAL: Datos :: ICal ... encontrado Dependencias de MAILGATE: Pod :: Uso ... encontrado Getopt :: Long ... encontrado LWP :: UserAgent ... encontrado MASON dependencias: Storable> = 2.08 ... encontrado CSS :: Squish> = 0.06 ... encontrado Apache :: Session> = 1.53 ... encontrado Errno ... encontrado Devel :: StackTrace> = 1.19 ... encontrado IPC :: Run3 ... encontrado CGI :: Cookie> = 1.20 ... encontrado Texto :: WikiFormat> = 0.76 ... encontrado XML :: RSS> = 1.05 ... encontrado HTML :: Mason> = 1.43 ... encontrado Digest :: MD5> = 2.27 ... encontrado JSON ... encontrado Dependencias de MYSQL: DBD :: mysql> = 2.1018 ... encontrado Dependencias PSGI: CGI :: Emulate :: PSGI ... encontrado CGI> = 3.38 ... encontrado CGI :: PSGI> = 0.12 ... encontrado HTML :: Mason :: PSGIHandler> = 0.52 ... encontrado Plack> = 0.9971 ... encontrado Plack :: Handler :: Starlet ... encontrado Dependencias SMTP: Net :: SMTP ... encontrado Dependencias de USERLOGO: Convert :: Color ... encontrado Se han encontrado todas las dependencias.
# 4.6 Instalar RT e inicializar la base de datos de RT
Después de haber verificado las dependencias de Perl para RT se han cumplido, podemos iniciar la instalación.
# make install ... Felicitaciones. RT ya está instalado. Ahora debe configurar RT editando /opt/rt4/etc/RT_SiteConfig.pm. (Definitivamente necesitará establecer la contraseña de la base de datos de RT en /opt/rt4/etc/RT_SiteConfig.pm antes de continuar. No hacerlo podría ser muy peligrosa. Tenga en cuenta que no tiene que agregar manualmente un base de datos o configurar una base de datos para RT. Estas acciones serán cuidado en el siguiente paso.) Después de eso, necesita inicializar la base de datos de RT ejecutando 'hacer inicializar-base de datos'
Permite ahora ejecutar el siguiente comando para crear la base de datos RT y el usuario. No hemos establecido la contraseña de root deMySQL todavía, por lo que estará "en blanco" de forma predeterminada.
# make initialize-database / usr / bin / perl -I / opt / rt4 / local / lib -I / opt / rt4 / lib sbin / rt-configuración-base de datos --action init --prompt-for-dba-password Para crear o actualizar su base de datos RT, este script necesita conectarse a su instancia mysql en localhost como root Especifique la contraseña de la base de datos del usuario a continuación. Si el usuario no tiene una base de datos contraseña, simplemente presione regresar. Contraseña: <enter> Trabajando con: Tipo: mysql Anfitrión: localhost Nombre: rt4 Usuario: rt_user DBA: raíz max_allowed_packet se establece en 1.0M, lo que limita el tamaño máximo de datos adjuntos o correo electrónico que RT puede procesar. Considere ajustar la configuración max_allowed_packet de MySQL. Ahora crear una base de datos mysql rt4 para RT. Hecho. Ahora rellena el esquema de la base de datos. Hecho. Ahora insertando las ACL de la base de datos. Conceder acceso a rt_user @ 'localhost' en rt4. Hecho. Ahora insertar objetos del sistema central de RT. Hecho. Ahora insertando datos. Hecho inserción de datos. Hecho.
# 4.7 Configurar Apache para RT
Establecer HTTP a HTTPS redireccionar todas las solicitudes HTTP entrantes.
# cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.orig # vim /etc/httpd/conf/httpd.conf
...
#
# Ejemplo de VirtualHost:
# Casi cualquier directiva de Apache puede entrar en un contenedor de VirtualHost.
# La primera sección de VirtualHost se utiliza para solicitudes sin una
# nombre del servidor.
#
# <VirtualHost *: 80>
# ServerAdmin webmaster@dummy-host.example.com
# DocumentRoot /www/docs/dummy-host.example.com
# ServerName dummy-host.example.com
# ErrorLog logs / dummy-host.example.com-error_log
# Logs de CustomLog / dummy-host.example.com-access_log common
# </ VirtualHost>
<VirtualHost *: 80>
NombreServidor rt.corp.example.com:80
Redirigir / https://rt.corp.example.com/
</ VirtualHost>
La instalación del módulo mod_ssl creó un archivo de configuración predeterminado (ssl.conf). Estaremos aprovechando este archivo para nuestra configuración RT.
# cp /etc/httpd/conf.d/ssl.conf /etc/httpd/conf.d/ssl.conf.orig # vim /etc/httpd/conf.d/ssl.conf
...
# Registro por servidor:
# La casa de un archivo de registro SSL personalizado. Utilícelo cuando desee
# archivo de registro compacto de SSL sin error en una base de host virtual.
Logs de CustomLog / ssl_request_log \
"% t% h% {SSL_PROTOCOL} x% {SSL_CIPHER} x \"% r \ "% b"
# Request Tracker
NombreServidor rt.corp.example.com:443
AddDefaultCharset UTF-8
DocumentRoot / opt / rt4 / share / html
Alias / NoAuth / imágenes / / opt / rt4 / share / html / NoAuth / images /
ScriptAlias / /opt/rt4/sbin/rt-server.fcgi/
<Ubicación />
Orden de permitir, denegar
Permitir de todos
</ Location>
<Directorio> / opt / rt4 / sbin ">
SSLOptions + StdEnvVars
</ Directory>
</ VirtualHost>
Verifique la configuración de Apache.
# service httpd configtest Sintaxis OK
# 4.8 RT_SiteConfig.pm archivo
Request Tracker es muy personalizable , pero la siguiente configuración de base de configuración debe empezar.
# vim /opt/rt4/etc/RT_SiteConfig.pm
...
# Debe reiniciar su servidor web después de realizar cambios en este archivo.
Set ($ rtname, 'example.com');
Set ($ Organization, 'corp.example.com');
Set ($ Timezone, 'US / Pacific');
Set ($ WebDomain, 'rt.corp.example.com');
Set ($ WebPort, 443);
Set ($ WebPath, '');
# Debe instalar Plugins por su cuenta, esto es solo un ejemplo
...
Reinicie el daemon httpd.
# service httpd restart
# 4.9 Momento de la verdad
Abra un navegador web e ingrese http://rt.corp.example.com (o https://rt.corp.example.com ) en el campo de la dirección web, luego presione la tecla enter para establecer una conexión segura al servidor RT. Si todo se ha instalado y configurado correctamente, se le debe presentar la página RT Login.
Las credenciales administrativas predeterminadas son:
- Nombre de usuario: root
- Contraseña: contraseña
5. Después de la instalación
En este punto, deberíamos tener un servidor RT básico en funcionamiento, pero necesitamos realizar algunas tareas posteriores a la instalación para Request Tracker y sus componentes, en las áreas de seguridad y funcionalidad.
# 5.1 MariaDB
Puede recordar que de los pasos anteriores nunca establecimos una contraseña para la cuenta de usuario raíz predeterminada de MySQL. Elcomando mysql_secure_installation realizará esta tarea además de otras tareas relacionadas con la seguridad de MySQL.
# mysql_secure_installation
También necesitamos establecer una contraseña para el usuario de la base de datos RT ( rt_user ). La tarea requiere que añadamos la contraseña a la configuración RT y también la establecemos en MySQL.
Agregue la clave $ DatabasePassword y el valor correspondiente en el archivo RT_SiteConfig.pm .
# vim /opt/rt4/etc/RT_SiteConfig.pm
...
Set ($ rtname, 'example.com');
Set ($ Organization, 'corp.example.com');
Set ($ Timezone, 'US / Pacific');
Set ($ WebDomain, 'rt.corp.example.com');
Set ($ WebPort, 443);
Set ($ WebPath, '');
Set ($ DatabasePassword, 'Pa $$ w0rD!');
...
Y ahora en MySQL.
# mysql -u root -p Introduzca la contraseña: <your_root_password> Bienvenido al monitor MariaDB. Los comandos terminan con; o \ g. Tu identificación de conexión MariaDB es 3 Versión del servidor: 5.5.30-MariaDB MariaDB Server Copyright (c) 2000, 2013, Oracle, Monty Program Ab y otros. Escriba 'help;' o '\ h' para obtener ayuda. Escriba '\ c' para borrar la instrucción de entrada actual. MariaDB [(ninguno)]> CONFIGURAR CONTRASEÑA PARA 'rt_user' @ 'localhost' = PASSWORD ('Pa $$ w0rD!'); Consulta OK, 0 filas afectadas (0.00 seg) MariaDB [(ninguno)]> \ q
También recomiendo aumentar los valores máximos para los siguientes parámetros de MySQL.
# vim /etc/my.cnf.d/server.cnf
...
# esto es leído por el daemon autónomo y los servidores integrados
[servidor]
# esto es solo para el demonio independiente de mysqld
[mysqld]
max_allowed_packet = 16M
innodb_buffer_pool_size = 256M
# esto es sólo para servidores incrustados
[incrustado]
...
Reinicie el daemon de MySQL.
# service mysql restart
Reinicie el daemon httpd.
# service httpd restart
# 5.2 mod_fcgid
Según la documentación de RT :
ADVERTENCIA : Antes de mod_fcgid 2.3.6, el tamaño máximo de la solicitud era de 1 GB. A partir de 2.3.6, ahora es 128Kb. Es poco probable que sea lo suficientemente grande para cualquier instalación de RT que maneje los archivos adjuntos.
# vim /etc/httpd/conf.d/fcgid.conf
...
# Lugar sano para poner los sockets y el archivo de memoria compartida
FcgidIPCDir / var / run / mod_fcgid
FcgidProcessTableFile / var / run / mod_fcgid / fcgid_shm
# Request Tracker
FcgidMaxRequestLen 1073741824
Reinicie el daemon httpd.
# service httpd restart
Comentarios
Publicar un comentario