Cómo instalar Alfresco Community Edition en RHEL / CentOS 7/6 y Debian 8


Alfresco es un sistema ECM de código abierto (Enterprise Content Management) escrito en Java que proporciona gestión electrónica, colaboración y control empresarial.

Esta guía cubrirá cómo instalar y configurar Alfresco Community Edition en sistemas RHEL/CentOS 7/6, Debian 8 y Ubuntu con el servidor Nginx como servidor web frontend para la aplicación.

En cuanto a los requisitos mínimos del sistema, Alfresco necesita una máquina con al menos 4 GB de RAM y un sistema operativo de 64 bits.

Paso 1: Instale Alfresco Community Edition

1. Antes de continuar con la instalación de Alfresco, primero asegúrese de que la utilidad wget esté instalada en su máquina emitiendo el siguiente comando con privilegios de root o desde la cuenta de root.

# yum install wget
# apt-get install wget

2. A continuación, configure el nombre de host de su sistema y asegúrese de que la resolución local apunte a la dirección IP de su servidor emitiendo los siguientes comandos:

# hostnamectl set-hostname server.alfresco.lan
# echo “192.168.0.40 server.alfresco.lan” >> /etc/hosts

3. Elimine cualquier MTA de la máquina (en este caso el servidor de correo Postfix) emitiendo el siguiente comando:

# yum remove postfix
# apt-get remove postfix

4. Instale las siguientes dependencias requeridas por el software Alfresco para que funcione correctamente:

# yum install fontconfig libSM libICE libXrender libXext cups-libs
# apt-get install libice6 libsm6 libxt6 libxrender1 libfontconfig1 libcups2

5. A continuación, vaya a la página del repositorio de Alfresco Community Edition alojada en el portal sourceforge.net y obtenga la última versión binaria (es decir, alfresco-community-5.0.d-installer-linux-x64.bin) para Linux utilizando la utilidad wget.

# wget http://nchc.dl.sourceforge.net/project/alfresco/Alfresco%205.0.d%20Community/alfresco-community-5.0.d-installer-linux-x64.bin

6. Una vez finalizada la descarga del archivo binario, ejecute el siguiente comando para otorgar permisos de ejecución para el archivo y ejecute el instalador alfresco.

# chmod +x alfresco-community-5.0.d-installer-linux-x64.bin
# ./alfresco-community-5.0.d-installer-linux-x64.bin

7. Una vez que comience el proceso de instalación, seleccione el idioma y continúe con el proceso de instalación utilizando el siguiente asistente de instalación como guía para configurar Alfresco:

[[email protected] ~]# ./alfresco-community-5.0.d-installer-linux-x64.bin 
Language Selection

Please select the installation language
[1] English - English
[2] French - Français
[3] Spanish - Español
[4] Italian - Italiano
[5] German - Deutsch
[6] Japanese - 日本語
[7] Dutch - Nederlands
[8] Russian - Русский
[9] Simplified Chinese - 简体中文
[10] Norwegian - Norsk bokmål
[11] Brazilian Portuguese - Português Brasileiro
Please choose an option [1] : 1
----------------------------------------------------------------------------
Welcome to the Alfresco Community Setup Wizard.

----------------------------------------------------------------------------
Installation Type

[1] Easy - Installs servers with the default configuration
[2] Advanced - Configures server ports and service properties.: Also choose optional components to install.
Please choose an option [1] : 2

----------------------------------------------------------------------------
Select the components you want to install; clear the components you do not want 
to install. Click Next when you are ready to continue.

Java [Y/n] :y

PostgreSQL [Y/n] :y

Alfresco : Y (Cannot be edited)

Solr1 [y/N] : n

Solr4 [Y/n] :y

SharePoint [Y/n] :y

Web Quick Start [y/N] : y

Google Docs Integration [Y/n] :y

LibreOffice [Y/n] :y

Is the selection above correct? [Y/n]: y

El asistente de instalación de Alfresco continúa….

----------------------------------------------------------------------------
Installation Folder

Please choose a folder to install Alfresco Community

Select a folder [/opt/alfresco-5.0.d]: [Press Enter key]

----------------------------------------------------------------------------
Database Server Parameters

Please enter the port of your database.

Database Server port [5432]: [Press Enter key]

----------------------------------------------------------------------------
Tomcat Port Configuration

Please enter the Tomcat configuration parameters you wish to use.

Web Server domain: [127.0.0.1]: 192.168.0.15 

Tomcat Server Port: [8080]: [Press Enter key

Tomcat Shutdown Port: [8005]: [Press Enter key

Tomcat SSL Port [8443]: [Press Enter key

Tomcat AJP Port: [8009]: [Press Enter key

----------------------------------------------------------------------------
Alfresco FTP Port

Please choose a port number to use for the integrated Alfresco FTP server.

Port: [21]: [Press Enter key

La instalación de Alfresco continúa ...

----------------------------------------------------------------------------
Admin Password

Please give a password to use for the Alfresco administrator account.

Admin Password: :[Enter a strong password for Admin user]
Repeat Password: :[Repeat the password for Admin User]
----------------------------------------------------------------------------
Alfresco SharePoint Port

Please choose a port number for the SharePoint protocol.

Port: [7070]: [Press Enter key]

----------------------------------------------------------------------------
Install as a service

You can optionally register Alfresco Community as a service. This way it will 
automatically be started every time the machine is started.

Install Alfresco Community as a service? [Y/n]: y


----------------------------------------------------------------------------
LibreOffice Server Port

Please enter the port that the Libreoffice Server will listen to by default.

LibreOffice Server Port [8100]: [Press Enter key]

----------------------------------------------------------------------------

Continúa la configuración de instalación de Alfresco.

----------------------------------------------------------------------------
Setup is now ready to begin installing Alfresco Community on your computer.

Do you want to continue? [Y/n]: y

----------------------------------------------------------------------------
Please wait while Setup installs Alfresco Community on your computer.

 Installing
 0% ______________ 50% ______________ 100%
 #########################################

----------------------------------------------------------------------------
Setup has finished installing Alfresco Community on your computer.

View Readme File [Y/n]: n

Launch Alfresco Community Share [Y/n]: y

waiting for server to start....[[email protected] ~]#  done
server started
/opt/alfresco-5.0.d/postgresql/scripts/ctl.sh : postgresql  started at port 5432
Using CATALINA_BASE:   /opt/alfresco-5.0.d/tomcat
Using CATALINA_HOME:   /opt/alfresco-5.0.d/tomcat
Using CATALINA_TMPDIR: /opt/alfresco-5.0.d/tomcat/temp
Using JRE_HOME:        /opt/alfresco-5.0.d/java
Using CLASSPATH:       /opt/alfresco-5.0.d/tomcat/bin/bootstrap.jar:/opt/alfresco-5.0.d/tomcat/bin/tomcat-juli.jar
Using CATALINA_PID:    /opt/alfresco-5.0.d/tomcat/temp/catalina.pid
Tomcat started.
/opt/alfresco-5.0.d/tomcat/scripts/ctl.sh : tomcat started

8. Una vez que finalice el proceso de instalación y se inicien los servicios de Alfresco, emita los siguientes comandos para abrir los siguientes puertos del firewall para permitir que los hosts externos de su red se conecten a la aplicación web.

# firewall-cmd --add-port=8080/tcp -permanent
# firewall-cmd --add-port=8443/tcp -permanent
# firewall-cmd --add-port=7070/tcp -permanent
# firewall-cmd --reload

En caso de que necesite agregar otras reglas de firewall para abrir puertos para acceder a servicios personalizados de Alfresco, emita el comando ss para obtener una lista de todos los servicios que se ejecutan en su máquina.

# ss -tulpn

9. Para acceder a los servicios web de Alfresco, abra un navegador y utilice las siguientes URL (reemplace la dirección IP o el dominio según corresponda). Inicie sesión con el usuario administrador y la contraseña configurada para Admin a través del proceso de instalación.

http://IP-or-domain.tld:8080/share/ 
http://IP-or-domain.tld:8080/alfresco/ 

Para WebDAV.

http://IP-or-domain.tld:8080/alfresco/webdav 

Para HTTPS, acepte la excepción de seguridad.

https://IP-or-domain.tld:8443/share/ 

Módulo de Alfresco SharePoint con Microsoft.

http://IP-or-domain.tld:7070/

Paso 2: configurar Nginx como servidor web frontend para Alfresco

10. Para instalar el servidor Nginx en el sistema, primero agregue Epel Repositories en CentOS/RHEL emitiendo el siguiente comando:

# yum install epel-release

11. Después de agregar los repositorios Epel al sistema, proceda con la instalación del servidor web Nginx emitiendo el siguiente comando:

# yum install nginx       [On RHEL/CentOS Systems]
# apt-get install nginx   [On Debian/Ubuntu Systems]  

12. En el siguiente paso, abra el archivo de configuración de Nginx desde /etc/nginx/nginx.conf con un editor de texto y realice los siguientes cambios:

location / {
        proxy_pass http://127.0.0.1:8080;
        proxy_redirect off;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }

Vaya a continuación y asegúrese de comentar la segunda declaración de ubicación colocando un # delante de las siguientes líneas:

#location / {
#        }

13. Una vez que haya terminado, guarde y cierre el archivo de configuración de Nginx y reinicie el demonio para reflejar el cambio emitiendo el siguiente comando:

# systemctl restart nginx.service

14. Para acceder a la interfaz web de Alfresco, agregue una nueva regla de firewall para abrir el puerto 80 en su máquina y navegue hasta la siguiente URL. Además, asegúrese de que la política de Selinux esté desactivada en los sistemas RHEL/CentOS.

# firewall-cmd --add-service=http -permanent
# firewall-cmd --reload
# setenforce 0

Para deshabilitar completamente la política de Selinux en el sistema, abra el archivo /etc/selinux/config y configure la línea SELINUX de enforcing a disabled .

15. Ahora puede acceder a Alfresco a través de Nginx.

 http://IP-or-domain.tld/share/ 
 http://IP-or-domain.tld/alfresco/
 http://IP-or-domain.tld/alfresco/webdav 

15. En caso de que desee visitar la interfaz web de Alfresco de forma segura a través del proxy Nginx con SSL, cree un certificado autofirmado para Nginx en el directorio /etc/nginx/ssl/ y complete el certificado con su configuración personalizada como se ilustra en la siguiente captura de pantalla:

# mkdir /etc/nginx/ssl
# cd /etc/nginx/ssl/
# openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout alfresco.key -out alfresco.crt

Preste atención a Nombre común del certificado para que coincida con el nombre de host de su dominio.

17. A continuación, abra el archivo de configuración de Nginx para editarlo y agregue el siguiente bloque antes del último corchete de cierre (el símbolo } ).

# vi /etc/nginx/nginx.conf

Extracto del bloque SSL de Nginx:

server {
    listen 443;
    server_name _;

    ssl_certificate           /etc/nginx/ssl/alfresco.crt;
    ssl_certificate_key       /etc/nginx/ssl/alfresco.key;

    ssl on;
    ssl_session_cache  builtin:1000  shared:SSL:10m;
    ssl_protocols  TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
    ssl_prefer_server_ciphers on;

    access_log            /var/log/nginx/ssl.access.log;

      location / {
        proxy_pass http://127.0.0.1:8080;
        proxy_redirect off;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
## This is the last curly bracket before editing the file. 
  }

18. Finalmente, reinicie el demonio Nginx para aplicar los cambios, agregue una nueva regla de firewall para el puerto 443.

# systemctl restart nginx
# firewall-cmd -add-service=https --permanent
# firewall-cmd --reload

e indique al navegador la URL de su dominio mediante el protocolo HTTPS.

https://IP_or_domain.tld/share/
https://IP_or_domain.tld/alfresco/

19. Para habilitar los demonios Alfresco y Nginx en todo el sistema, ejecute el siguiente comando:

# systemctl enable nginx alfresco

¡Eso es todo! Alfresco ofrece integración con MS Office y LibreOffice a través del protocolo CIF que proporciona un flujo de trabajo familiar para los usuarios.