Linuxiando un Rato

viernes, febrero 24, 2006

Instalando Qmail y reemplazando Sendmail

Anterior: Introducción


Para los propósitos meramente educativos de esta guia, vamos a hacer algunas suposiciones:

  • El dominio de nuestro servidor es midominio.org. En cualquier parte de esta guia en la que aparezca la cadena de caracteres midominio.org, usted deberá cambiarla por el nombre de su dominio de correo electrónico.

  • sysadmin y sysadmin@ midominio.org son respectivamente una cuenta shell y una cuenta de correo con propósitos administrativos. Si usted utiliza otras cuentas con ese propósito, ya sabe: buscar y reemplazar.

  • CO, Cundinamarca y Bogotá corresponden a mi ubicación geográfica. Modificar según sea necesario.

  • El archivo de configuración del servidor Apache no ha sido modificados. Si su DocumentRoot es diferente a /var/www/html, su directorio de CGI's es diferente a /var/www/cgi-bin, o ha modificado otros parámetros deberá modificar los comandos de la guia para que se ajusten a su sistema. Recuerde: no se limite a “copiar y pegar”.



Prerequisitos:

Red Hat Enterprise Linux 4/ Fedora Core 3 o 4/ CentOS 4.0, 4.1 o 4.2 (como ya mencione varias veces, esta guia solo comprende la instalación en estas distribuciones, para otras, consulte la guia original de Qmailrocks) con mínimo los siguientes juegos de paquetes:
gcc
gcc-c++
make y configure
diff y pathutils
openssl y openssl-devel
apache
php
mysql
squirrelmail
expect
gdbm-devel
xinetd
openssl097a
perl
perl-suidperl


Si su instalación es mínima o muy personalizada, seguramente requerirá de muchos paquetes mas. Para evitarse problemas recomiendo usar up2date, yum o apt-get para RPM. Si encuentra alguna dependencia que no este listada aquí puede hacérmelo saber en los comentarios de esta entrada junto con su nombre/nick/apodo. Actualizare la guia y le daré el crédito correspondiente.

Software que NO debe estar ejecutándose ni instalado:

Servicios SMTP (Postfix, Exim)
Servicios IMAP
Servicios POP3

Sendmail puede estar instalado. La guia explica como desinstalarlo.



Descarga de Qmailrocks y compilación de Qmail:

En una terminal iniciar sesión con el usuario root. Crear el directorio donde se almacenaran los instaladores de Qmail y demás software a utilizar, ubicarse en dicho directorio, descargar los instaladores y descomprimirlos ejecutando los siguientes comandos:
mkdir /downloads
cd /downloads
wget http://www.qmailrocks.org/downloads/qmailrocks.tar.gz
tar zxvf qmailrocks.tar.gz


Ejecutar el script que crea automáticamente los directorios, usuarios y archivos especiales, descomprime el software daemontools y establece los permisos necesarios ejecutando el comando:
/downloads/qmailrocks/scripts/install/qmr_install_linux-s1.script


Instalar los parches para activar las características de autenticación SMTP, TLS, cuotas de usuario y otros ejecutando el comando:
/downloads/qmailrocks/scripts/util/qmail_big_patches.script


Compilar, instalar y configurar Qmail ejecutando ejecutando los siguientes comandos:
cd /usr/src/qmail/qmail-1.03
make man && make setup check
./config-fast midominio.org


Generar el certificado que permitirá encriptar la comunicación utilizando TLS ejecutando el comando:
make cert


Este es un ejemplo de la configuración del certificado, cambiar según se requiera:
Country Name (2 letter code) [GB]:CO
State or Province Name (full name) [Berkshire]:Cundinamarca
Locality Name (eg, city) [Newbury]:Bogotá
Organization Name (eg, company) [My Company Ltd]:Mi Institución
Organizational Unit Name (eg, section) []:Departamento de Sistemas
Common Name (eg, your name or your server's hostname) []:midominio.org
Email Address []:sysadmin@midominio.org


Configurar los permisos del certificado ejecutando el comando:
chown -R vpopmail:qmail /var/qmail/control/clientcert.pem /var/qmail/control/servercert.pem




Instalando ucspi-tcp y daemontools:

Aplicar el parche especifico para RH 9/RHEL/Fedora/Slackware, compilar e instalar ucspi-tcp:
cd /usr/src/qmail/ucspi-tcp-0.88/
patch < /downloads/qmailrocks/patches/ucspi-tcp-0.88.errno.patch
make && make setup check


Aplicar el parche especifico para RH 9/RHEL/Fedora/Slackware, compilar e instalar daemontools:
cd /package/admin/daemontools-0.76
cd /package/admin/daemontools-0.76/src
patch < /downloads/qmailrocks/patches/daemontools-0.76.errno.patch
cd /package/admin/daemontools-0.76
package/install


Ejecutar el comando:
ps -aux


y verificar que el proceso svscanboot se este ejecutando




Instalando Ezmlm y Autoresponder:

Descomprimir, compilar e instalar EZmlm:
cd /downloads/qmailrocks/
tar zxvf ezmlm-0.53-idx-0.41.tar.gz
cd ezmlm-0.53-idx-0.41
make && make setup


Descomprimir, compilar e instalar Autoresponder:
cd /downloads/qmailrocks
tar zxvf autorespond-2.0.5.tar.gz
cd autorespond-2.0.5
make && make install




Instalando Vpopmail con soporte MySQL:

Configurar la conexión MySQL para vpopmail ejecutando los siguientes comandos:
mkdir ~vpopmail/etc
chown vpopmail:vchkpw ~vpopmail/etc
echo "localhost|0|vpopmail|password|vpopmail" > ~vpopmail/etc/vpopmail.mysql


En el ultimo comando la palabra password debe ser cambiada por la contraseña que tendrá el usuario vpopmail de MySQL

Establecer los permisos necesarios para los archivos de configuración de la conexión MySQL para vpopmail ejecutando los siguientes comandos:
chown vpopmail:vchkpw ~vpopmail/etc/vpopmail.mysql
chmod 640 ~vpopmail/etc/vpopmail.mysql


Crear la base de datos y establecer los permisos necesarios para el usuario de vpopmail ingresando como root a la consola de MySQL ejecutando el comando (se solicitara la contraseña del usuario root de MySQL):
mysql -u root -p


en la consola de MySQL ejecutar las siguientes sentencias SQL:
CREATE DATABASE vpopmail;
GRANT select,insert,update,delete,create,drop ON vpopmail.* TO vpopmail@localhost IDENTIFIED BY 'password';


En el ultimo comando la palabra password debe ser cambiada por la contraseña que tendrá el usuario vpopmail de MySQL, posteriormente salir de la consola ejecutando el comando:
quit


Probar los datos del usuario de vpopmail ejecutando el comando:
mysql -u vpopmail -p


Después de introducir la contraseña deberá desplegarse el prompt de la consola de MySQL, posteriormente salir de la consola ejecutando el comando:
quit




Descomprimir, compilar e instalar Vpopmail:

Ejecutar los siguientes comandos:
cd /downloads/qmailrocks
tar zxvf vpopmail-5.4.9.tar.gz
cd vpopmail-5.4.9
./configure --enable-logging=p --enable-auth-module=mysql --disable-passwd --enable-clear-passwd --disable-many-domains --enable-auth-logging --enable-sql-logging --enable-valias --disable-mysql-limits
make && make install-strip




Instalando Vqadmin, Maildrop y Qmailadmin:


Descomprimir, compilar e instalar Vqadmin:
cd /downloads/qmailrocks
tar zxvf vqadmin-2.3.6.tar.gz
cd vqadmin-2.3.6
./configure --enable-cgibindir=/var/www/cgi-bin --enable-htmldir=/var/www/html
make && make install-strip


Modificar el archivo de configuración de Apache ejecutando el comando:
vi /etc/httpd/conf/httpd.conf


y modificar la sección:
#
# "/var/www/cgi-bin" should be changed to whatever your ScriptAliased
# CGI directory exists, if you have that configured.
#
<Directory /var/www/cgi-bin>
AllowOverride None
Options None
Order allow,deny
Allow from all
</Directory>


por:
#
# "/var/www/cgi-bin" should be changed to whatever your ScriptAliased
# CGI directory exists, if you have that configured.
#
<Directory /var/www/cgi-bin>
AllowOverride All
Options None
Order allow,deny
Allow from all
</Directory>


Nota: Solo cambiar la palabra None por la palabra All, pero debe modificarse la sección referente al directorio /var/www/cgi-bin

Posteriormente, adicionar lo siguiente al final del mismo archivo:
#Configuracion para Vqadmin
<Directory /var/www/cgi-bin/vqadmin>
deny from all
Options ExecCGI
AllowOverride AuthConfig
Order deny,allow
</Directory>


Salvar el archivo y salir del editor.

Editar el archivo de autenticación de vqadmin:
cd /var/www/cgi-bin/vqadmin/
vi .htaccess


modificar el contenido del archivo .htaccess de:
AuthType Basic
AuthUserFile /usr/local/apache/conf/vqadmin.passwd
AuthName vQadmin
require valid-user
satisfy any


a:
AuthType Basic
AuthUserFile /var/www/passwords/.htpasswd
AuthName vQadmin
require valid-user
satisfy any


Salvar el archivo y salir del editor.

Modificar los permisos del archivo .htaccess ejecutando los siguientes comandos:
chown apache .htaccess
chmod 644 .htaccess


Crear el correspondiente archivo que contiene el nombre de usuario y la contraseña encriptada de acceso a Vqadmin ejecutando los comandos:
mkdir /var/www/passwords
htpasswd -bc /var/www/passwords/.htpasswd admin password


En el ultimo comando la palabra password debe ser cambiada por la contraseña que tendrá el usuario de acceso a Vqadmin

Modificar los permisos del archivo .htpasswd ejecutando el siguiente comando:
chmod 644 /var/www/passwords/.htpasswd


Reiniciar el servicio Apache ejecutando el comando:
service httpd restart


Probar el funcionamiento de Vqadmin abriendo en un navegador web la URL y crear el dominio midominio.org:
http://midominio.org/cgi-bin/vqadmin/vqadmin.cgi


Debe desplegarse una ventana de autenticación y al introducir los datos de acceso configurados previamente debe aparecer la ventana principal de Vqadmin. Hacer clic en el enlace “Add Domain”, en la pagina que aparece introducir en el campo “Domain Name” el valor “midominio.org”, en el campo “Postmaster Password ” introducir la contraseña del administrador del dominio. Hacer clic en el botón “Add Domain”.

Descomprimir, compilar e instalar maildrop:
cd /downloads/qmailrocks
tar zxvf maildrop-1.6.3.tar.gz
cd maildrop-1.6.3
./configure --prefix=/usr/local --exec-prefix=/usr/local --enable-maildrop-uid=root --enable-maildrop-gid=vchkpw --enable-maildirquota
make && make install-strip && make install-man


Descomprimir, compilar e instalar Qmailadmin:
cd /downloads/qmailrocks
tar zxvf qmailadmin-1.2.3.tar.gz
cd qmailadmin-1.2.3
./configure --enable-cgibindir=/var/www/cgi-bin --enable-htmldir=/var/www/html
make && make install-strip


Probar la instalación de Qmailadmin abriendo una ventana de navegador e ingresando a la URL:
http://midominio.org/cgi-bin/qmailadmin


Si la instalación fue exitosa, deberá aparecer la pagina de login de Qmailadmin



Finalizando la instalación de Qmail:

Ejecutar el script de finalización de la instalación de Qmail:
/downloads/qmailrocks/scripts/finalize/linux/finalize_linux.script


Editar el archivo /var/qmail/supervise/qmail-pop3d/run ejecutando el comando:
vi /var/qmail/supervise/qmail-pop3d/run


y modificar:
mail.example.com


por:
midominio.org


Salvar el archivo y salir del editor.

Editar el archivo /var/qmail/supervise/qmail-smtpd/run ejecutando el comando:
vi /var/qmail/supervise/qmail-smtpd/run


y modificar:
mail.example.com


por:
midominio.org


Salvar el archivo y salir del editor.

Detener Qmail ejecutando el comando:
qmailctl stop


Establecer un relay selectivo para localhost ejecutando los comandos:
echo '127.:allow,RELAYCLIENT=""' >> /etc/tcp.smtp
qmailctl cdb


Establecer los alias administrativos de Qmail ejecutando los comandos:
echo sysadmin@midominio.org > /var/qmail/alias/.qmail-root
echo sysadmin@midominio.org> /var/qmail/alias/.qmail-postmaster
echo sysadmin@midominio.org> /var/qmail/alias/.qmail-mailer-daemon


Crear los enlaces simbólicos y establecer los permisos necesarios para los archivos de alias administrativos ejecutando los comandos:
ln -s /var/qmail/alias/.qmail-root /var/qmail/alias/.qmail-anonymous
chmod 644 /var/qmail/alias/.qmail*




Desinstalación de Sendmail:

Buscar los paquetes de instalación de sendmail en la base de datos RPM ejecutando el comando:
rpm -qa | grep sendmail


la salida del comando debe ser similar a esta:
sendmail-8.13.4-2
sendmail-cf-8.13.4-2


Detener el servicio y desinstalar sendmail ejecutando los comandos:
service sendmail stop
rpm -e --nodeps sendmail
rpm -e --nodeps sendmail-cf


Crear los enlaces simbólicos correspondientes para el comando sendmail de Qmail ejecutando los comandos:
ln -s /var/qmail/bin/sendmail /usr/lib/sendmail
ln -s /var/qmail/bin/sendmail /usr/sbin/sendmail




Pruebas Finales:

Ejecutar el script que verifica la instalación de Qmail:
/downloads/qmailrocks/scripts/util/qmr_inst_check


deberá aparecer el mensaje:
Congratulations, your Qmailrocks.org Qmail installation looks good!


Verificar la correcta ejecución de Qmail ejecutando los comandos:
qmailctl stop
qmailctl start
qmailctl stat


deberá obtenerse una salida como la siguiente:
/service/qmail-send: up (pid 29956) 2 seconds
/service/qmail-send/log: up (pid 29960) 2 seconds
/service/qmail-smtpd: up (pid 29963) 2 seconds
/service/qmail-smtpd/log: up (pid 29968) 2 seconds
/service/qmail-pop3d: up (pid 29971) 2 seconds
/service/qmail-pop3d/log: up (pid 29972) 2 seconds
messages in queue: 0
messages in queue but not yet preprocessed: 0


Probar el funcionamiento del servicio POP3 ejecutando el comando:
telnet localhost 110


el servidor debe responder con una salida como la siguiente:
Trying 127.0.0.1...
Connected to localhost.localdomain (127.0.0.1).
Escape character is '^]'.
+OK <26343.1130771165@midominio.org>


escribir lo siguiente y presionar la tecla Enter:
user postmaster@midominio.org


el servidor debe responder con una salida como la siguiente:
+OK


escribir lo siguiente y presionar la tecla Enter:
pass password


En el ultimo comando la palabra password debe ser cambiada por la contraseña que fue asignada al usuario postmaster del dominio midominio.org. El servidor debe responder con una salida como la siguiente:
+OK


escribir lo siguiente y presionar la tecla Enter:
quit


el servidor debe responder con una salida como la siguiente:
+OK
Connection closed by foreign host.


Probar el funcionamiento del servicio SMTP y la capacidad de encriptacion TLS ejecutando el comando:
telnet localhost 25


el servidor debe responder con una salida como la siguiente:
Trying 127.0.0.1...
Connected to localhost.localdomain (127.0.0.1).
Escape character is '^]'.
220 midominio.org ESMTP


escribir lo siguiente y presionar la tecla Enter:
ehlo localhost


el servidor debe responder con una salida como la siguiente:
250-midominio.org
250-AUTH LOGIN CRAM-MD5 PLAIN
250-AUTH=LOGIN CRAM-MD5 PLAIN
250-STARTTLS
250-PIPELINING
250 8BITMIME


verificar que la linea 250-STARTTLS sea desplegada, ya que informa la capacidad de encriptar comunicaciones de correo utilizando TLS. Posteriormente escribir lo siguiente y presionar la tecla Enter:
starttls


el servidor debe responder con una salida como la siguiente:
220 ready for tls


ejecutar dos veces el siguiente comando:
quit


el servidor debe responder con una salida como la siguiente y cerrar la conexión:
Connection closed by foreign host.




¡Felicitaciones!

Si usted ha llegado hasta aquí sin problemas, ya tiene un servidor de correo con Qmail completamente funcional.

Si no necesita as demás funcionalidades que ofrece Qmailrocks, puede considerar el trabajo como finalizado exitosamente.

Si desea instalar las demás funcionalidades, el siguiente paso es consultar la segunda entrega (aun por publicar).

Actualizacion: Gracias a David Souto por sus correcciones acerca de la configuración de Apache para Vqadmin.

Alejandro Rincón Linares
alejandro{punto}rincon{arroba}gmail{punto}com

Anterior: Introducción

Instalando Qmail al estilo Qmailrocks en RHEL4/Fedora Core/CentOS

Introducción: ¿A que viene este cuento?

Hace algún tiempo me vi en la necesidad de implementar un sistema de correo electrónico seguro, confiable, fácilmente extensible y fácil de administrar.

Después de mucho buscar encontré la guia de Qmailrocks que me ofrecía un procedimiento perfectamente documentado de instalación de un sistema tal y como lo necesitaba.

Hemos instalado con éxito el sistema en Red Hat Enterprise Linux 4, Fedora Core 3 y 4, y CentOS 4.x, hemos agregado algunas cositas que se ajustaban a las necesidades particulares del proyecto y el resultado es esta guia, una especialización de la guia Qmailrocks para las distribuciones mencionadas.

Al decir “hemos” quiero dejar en claro que este no es el trabajo de una sola persona, Luis Fernando Muñoz, mi compañero de trabajo y amigo, realizo la primera instalación estilo Qmailrocks que tuvimos en producción y creanme, fue un verdadero dolor de cabeza. Posteriormente repetimos la instalación varias veces en un servidor de prueba para poder documentar el proceso y los inconvenientes que se presentaron en el proceso y el resultado fue un manual de procedimientos en el cual se basa esta serie de articulo.


¿Que incluye Qmailrocks?

Qmailrocks es, básicamente, Qmail con muchos, muchísimos complementos que lo hacen verdaderamente poderoso, aquí se listan algunos de ellos:

- Qmail con muchos parches maravillosos que hacen muchas cosas y harán las delicias de niños y grandes (SMTP autenticado, TLS, cuotas de usuario, entre otros)

- Vpopmail, para soporte de usuarios y dominios virtuales. La base de datos de usuarios es almacenada en una base de datos MySQL (se puede instalar sin MySQL, referirse a la guia original en este caso)

- Vqadmin y Qmailadmin: Administración de usuarios y dominios virtuales desde interfaces Web.

- Ezmlm: Listas de correo fáciles de crear y moderar.

- ClamAV: Antivirus, software libre, actualizaciones automáticas...¿quien necesita mas?

- Spamassassin: Deteccion de SPAM de ultima generación (subirá su auto estima al descubrir que no le ofrecen tanto Viagra, pero perderá importantes ofertas de negocio de acaudalados Nigerianos...)

- Squirrelmail: Webmail muy sencillo escrito en PHP pero bastante extensible instalándole plugins

El listado completo puede ser consultado en la guia original de Qmailrocks.


Consideraciones importantes:

Esta “guia” por llamarla de alguna manera, es una aproximación muy especifica a una instalación Qmail al estilo Qmailrocks y presupone conocimientos suficientes en sistemas Linux basados en Red Hat como para no tener que explicar lo que se esta haciendo. Si necesita información mas detallada acerca de los procedimientos le sugiero seguir la guia original de Qmailrocks (la cual esta en ingles). Si quiere instalar Qmailrocks para otras distribuciones de Linux (Debian, SuSe o Slackware) o para otros sistemas operativos tipo Unix (Solaris, FreeBSD) la guia original es su mejor elección.

Habiendo dejado esto claro, los dejo con el siguiente “Disclaimer”, basado en el original que se puede encontrar en el sitio de Qmailrocks:



DISCLAIMER:

Antes de proceder a instalar Qmail según esta guia lea cuidadosamente, entienda, entienda, entienda y entienda esto:

¡¡LA RESPONSABILIDAD DE LO QUE HAGA ES SUYA!!

Si, tal como lo leyó, así usted se queje mil veces que siguió este texto a rajatabla y las cosas no le funcionaron, si por hacer lo que dice aquí su servidor exploto, lo dejo su novia y lo mordió su perro lo lamento mucho, pero no comparto con usted ninguna responsabilidad.

Así como la guia oficial de Qmailrocks es resultado de una instalación muy particular de Qmail que funciono muy bien en el caso del autor, esta guia es una instalación muy particular de una instalación al estilo Qmailrocks que funciono para mi; lo cual implica que no existe ninguna garantía de que funcione para su caso particular sin ningún esfuerzo. Seguramente tendrá muchos dolores de cabeza, errores de compilación, de ejecución, de sintaxis, etc.

Otro factor adicional, soy humano y puedo cometer errores. Aunque he realizado esta instalación muchas veces y he corregido el manual de procedimientos una y otra vez, esta guia no es perfecta. Le suplico que no se limite solo a “copiar y pegar” y “buscar y reemplazar”. Si encuentra algún error de sintaxis, procedimiento, ortografía, etc. por favor hagamelo saber. Con mucho gusto corregiré la guia y le otorgare el crédito merecido.

Si usted es lo suficientemente experimentado seguramente podrá salir victorioso de los inconvenientes que se le presenten. Si usted no tiene conocimientos en Linux, compilación e instalación de software, análisis de logs, o diagnostico y solución de problemas; lo mejor es que no siga leyendo esto y busque otra alternativa.

Veo que siguió leyendo, me alegra mucho y espero que su experiencia instalando y usando Qmailrocks sea tan grata como lo ha sido para mi. En este punto existen dos posibilidades:

a) usted tiene la suficiente experiencia en sistemas Linux como para asumir este nuevo reto o

b) usted no se dejo amedrentar y tiene la firme determinación de aprender como se hace esto cueste lo cueste y esta dispuesto a asumir las consecuencias, sean muy malas o muy buenas. Si este es su caso, felicitaciones, va por un muy buen camino.

En cualquiera de las dos situaciones sugiero que...

¡REALICE MINIMO UNA INSTALACIÓN DE PRUEBA EN UNA MAQUINA QUE NO ESTE EN PRODUCCIÓN!

Esto no solo aplica para Qmail, también es valido para cualquier software que quiera instalar en un servidor en producción.

Una ultima cosa: Este Blog no es un foro de soporte, y mi e-mail no es el consultorio de un brujo que resolverá todos sus problemas. El hecho de hacer publica esta guia no implica que me voy a convertir en su “pringao”. Puede encontrar información muy valiosa en la lista de correo de Qmailrocks, en las muchas listas de correo y foros acerca del tema que se encuentran en Internet o preguntándole al que todo lo sabe: Google (lo mas seguro es que Google lo haya traído hasta aquí, así que puede llevarlo a otros sitios que también le sean útiles). Si después de todo eso aun cree que necesita soporte de mi parte, puede contactarme: doy soporte técnico por contrato y cobro por horas.

Resumiendo en tres sencillas frases:

- ¡LA RESPONSABILIDAD DE LO QUE HAGA ES SUYA!

- ¡REALICE MINIMO UNA INSTALACIÓN DE PRUEBA EN UNA MAQUINA QUE NO ESTE EN PRODUCCIÓN!

- ¡NO SOY PROFESOR DE LINUX NI DOY SOPORTE TECNICO GRATIS!


Habiendo llegado hasta este punto, procedamos con la primera entrega de esta Guia:

Primera Entrega: Instalando Qmail y reemplazando Sendmail.

Alejandro Rincón Linares
alejandro{punto}rincon{arroba}gmail{punto}com

Instalación de MediaWiki en RHEL/Fedora/CentOS

1. Requerimientos:

Servidor Web Apache con soporte de PHP versión 4.1.2 o superior (recomendado 4.3.x o 5.0.x)

Un servidor de Bases de Datos MySQL versión 4.0.x (recomendado), la versión 3.2.x también es compatible

2. Instalación:

Descargar la ultima versión de MediaWiki de la URL http://wikipedia.sourceforge.net/

Copiar el archivo en el directorio especificado (un directorio en la ruta de publicación del servidor Web)

Descomprimir el archivo y cambiar el nombre al directorio resultante:

tar xzvf mediawiki-x-x.x.tar.gz
mv mediawiki-x-x.x wiki


Dar permisos de escritura al servidor Web sobre el directorio wiki/config:
cd wiki
chmod a+w config


En caso de tener activado el modo seguro en PHP, deshabilitarlo temporalmente editando el archivo /etc/php.ini, cambiando la línea
safe_mode On


por
safe_mode Off


Reiniciar el servidor Web:
/etc/init.d/httpd restart


Desde un navegador Web, abrir la URL correspondiente al wiki instalado

Diligenciar el formulario introduciendo los datos correspondientes:

  • Nombre del sitio
  • e-mail de contacto (email del encargado de administrar el wiki)
  • nombre del usuario de administración del wiki y su respectivo password
  • nombre de la base de datos a crear
  • usuario de conexión a la BD (usuario de MySQL)
  • password del usuario (password del usuario de MySQL)
  • en caso de que la BD y el usuario no sean creados previamente, proporcionar el password de root de MySQL para que el asistente de instalación ejecute los pasos anteriormente mencionados (recomendado, pero por seguridad solo proporcionar el password de root si la instalación esta siendo realizada en un equipo que se encuentra dentro de la Intranet, en caso contrario crear el usuario y la BD desde la línea de comandos utilizando una conexión SSH y utilizar estos datos en la instalación)


Una vez terminada la instalación, copiar el archivo config/LocalSettings.php al directorio de Instalación del wiki:
mv config/LocalSettings.php .


eliminar el directorio config:
rm -rf config


En caso de haber deshabilitado el modo seguro en PHP, habilitarlo nuevamente editando el archivo /etc/php.ini, cambiando la linea
safe_mode Off


por
safe_mode On


* Reiniciar el servidor Web:
/etc/init.d/httpd restart


3. Habilitar la carga de imágenes:

Para habilitar la carga de imágenes, el directorio images debe tener permisos de escritura para el usuario con el que se ejecuta el servidor web, para ello se ejecutan los comandos:
chgrp -R apache images
chmod -R g+w images


Posteriormente, se debe editar el archivo LocalSettings.php modificando la línea
# $wgEnableUploads                = true;


por
$wgEnableUploads                = true;


Opcional: Wiki protegido por contraseña

Para hacer obligatoria la autenticación utilizando un nombre de usuario y un password para ingresar al wiki:

Adicionar las siguientes líneas al archivo de configuración del servidor Apache (usualmente /etc/httpd/conf/httpd.conf):
deny from all
Options ExecCGI
AllowOverride AuthConfig
Order deny,allow


Crear un archivo llamado .htaccess en el directorio de instalación del wiki y editarlo (con el editor vi en este caso):
cd /ruta/instalacion/wiki
vi .htaccess


incluir estas líneas en la ventana del editor:
AuthType Basic
AuthUserFile /ruta/almacenamiento/passwords/.htpasswd
AuthName "Nombre descriptivo del wiki"
require valid-user
satisfy any


Hacer que el usuario con el que se ejecuta el servidor Web sea propietario del archivo .htaccess y asignar los permisos adecuados:
chown apache .htaccess
chmod 644 .htaccess


Crear el correspondiente archivo .htpasswd que almacenara los nombres de usuario y los passwords encriptados y asignarle los permisos adecuados:
htpasswd -bc /ruta/almacenamiento/passwords/.htpasswd usuario password_usuario
chmod 644 /ruta/almacenamiento/passwords/.htpasswd


Reiniciar el servidor Web:
/etc/init.d/httpd/restart


Alejandro Rincón Linares
alejandro{punto}rincon{arroba}gmail{punto}com

¡Bienvenidos a Linuxiando un Rato!

Saludos,

La intención de este espacio es compartir algunas de las experiencias que he tenido en los años que llevo aprendiendo Linux y brindar la posibilidad de discutir al respecto mediante comentarios.

No puedo asegurar una actualización muy periódica de este Blog pero si intentare publicar pequeños artículos que considere puedan interesarle a la comunidad.

Espero que lo disfruten y espero sus comentarios.


Locations of visitors to this page