How To: Installing Alfresco 6 on Ubuntu Server

This posting will descibe the installation process of Alfresco 6 on an Ubuntu Server.

The following prequeries are required:

  • Working Ubuntu server (18.04.3 LTS) with access to the internet
  • SSH or Terminal access to Ubuntu

On another version of Ubuntu the installation process will be similiar.

We will use the following locations:

  • Installation path Alfresco 6: /usr/local/alfresco
  • Data path where alfresco should store the repository content: /mnt/data/alfresco-data/

1. Install the requirements

Alfresco requires the following software on the destination system:

  • Java JDK (we use OpenJDK)
  • PostgreSQL Server & Client (for managing the database)
  • ImageMagick
  • LibreOffice
  • FFmpeg

Installing Java JDK

sudo apt-get install openjdk-11-jre
sudo apt-get install openjdk-11-jdk

Installing PostgreSQL

sudo apt-get install postgresql 

Installing the client:

sudo apt-get install postgresql-client

Set admin password for Postgresql:

sudo -u postgres psql 

Set the password:

\password postgres

Display the data-directory:

SHOW data_directory;

Quit the client:


Create alfresco db user:

sudo -u postgres createuser -P -d alfresco

Enter the password twice.

Create alfresco database:

sudo -u postgres createdb -O alfresco alfresco

Installing ImageMagick

sudo apt-get install imagemagick imagemagick-doc

Installing LibreOffice

sudo apt-get install libreoffice libreoffice-l10n-de libreoffice-help-de

Installing FFmpeg

sudo apt-get install ffmpeg

2. Download and extract Tomcat

  • Create an folder where Alfresco and tomcat should be installed, e.g.: /usr/local/alfresco/ (This is also the ‘root’ or ‘base’ folder of the alfresco instance)
  • Create an folder where the content of alfresco should be stored, e.g.: /data/alfresco/
  • Download an extract tomcat: 

3. Download and extract the alfresco system

4. Configure Alfresco

  • Follow this guide to install Alfresco (Step 7 of installing tomcat application server can be skipped beacuse we do not use mutual TLS):
  • Install Alfrsco search services without mutual TLS:
  • Define the location for storing solr content in alfresco-search-services/solrhome/conf/
    #solr content store location
  • Start solr:
    ./solr/bin/solr start -a "-Dcreate.alfresco.defaults=alfresco,archive
  • To execute the script it is necessary to set the $JAVA_HOME variable:
    export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
  • Configure, use this file as template and modify it. Finally copy it to: usr/local/alfresco/tomcat/shared/classes/
  • Install/Deploy the amp files using the following command:
    sh ./bin/
  • Check if you have the appropriate folder structure in the root folder of alfresco:
    |– alf_data
    |– alfresco-pdf-renderer
    |– alfresco-search-services
    |– amps
    |– amps_share
    |– bin
    |– licenses
    |– modules
            |– platform
            |– share
    |– tomcat

5. Test alfresco

  • Test if solr is running: http://localhost:8983
  • Start Tomcat by executing the following command from the tomcate directory: ./bin/
  • Open http://localhost:8080 and login (Default: admin/admin)
  • Tail with tail -f ./logs/catalina.out the log files of tomcat
  • With ps -ef | grep tomcat you can see if an instance of tomcat is running
  • With kill PID you can kill tomcat
  • Share and alfresco are creating its own log files, called alfresco.log and share.log
  • Configure the storage path of the log files of alfresco:

6. Put an apache server in front of alfresco

  1.  Install apache:
    sudo apt-get install apache2
  2. After installing Apache2, the commands below can be used to stop, start and enable Apache2 service to automatically start up everytime the server starts:
    sudo systemctl stop apache2.service
    sudo systemctl start apache2.service
    sudo systemctl enable apache2.service
  3. Enable Apache2 Proxy Modules:
    sudo a2enmod proxy
    sudo a2enmod proxy_http
  4. Restart Apache:
    sudo systemctl restart apache2.service
  5. Create a new site configuration in /etc/apache2/sites-available/ with the name alfresco.conf
  6. Put the following configuration into the file:
    <VirtualHost *:80>
    ServerAlias alfresco
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combinedProxyRequests Off
    <Proxy *>
    Order deny,allow
    Allow from all

    ProxyPass /
    ProxyPassReverse /<Location />
    Order allow,deny
    Allow from all
  7. Save the file.
  8. Enable the configuration and restart apache2.service:
    sudo a2ensite alfresco.conf
    sudo systemctl restart apache2.service
  9. With a2dissite and the conf file you can remove a site configuration
  10. Now alfresco is reachable form apache on port 80.
  11. Change the url and the port in
  12. Add the following settings to the tomcat connector in server.xml (/usr/local/alfresco/tomat/conf/):
    proxyName="" proxyPort="443"
  13. Restart tomcat

7. Install SSL Certificate and reconfigure apache to use https

  1.  Install modul ssl:
    sudo a2enmod ssl
  2. Restart apache service:
    sudo service apache2 restart
  3. Create a csr request and get the crt and the key from your SSL Provider (You can use the csr generator from your SSL provider)
  4. Put/Copy the crt and key file to (this is the default storage location for certifcates):
  5. Configure the virtual host to support ssl. Change the content of /etc/apache2/sites-available/alfresco.conf to:
    <VirtualHost *:443>
    SSLEngine on
    SSLCertificateFile /etc/ssl/certs/alfresco_nettania_net.crt
    SSLCertificateKeyFile /etc/ssl/certs/
    ServerAlias alfresco
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combinedProxyRequests Off
    <Proxy *>
    Order deny,allow
    Allow from all
    </Proxy>ProxyPass /
    ProxyPassReverse /<Location />
    Order allow,deny
    Allow from all
  6. Change the connector in tomcat´s server.xml to the following configuration:
    <Connector port="8080" protocol="HTTP/1.1"
    secure="true" />
    With this configuration you can prevent the following problems:
    • Possible CSRF attack noted when asserting referer header
    • The browser informs that some content might be not secure
  7. Restart Apache and tomcat and test the configuration


Print Friendly, PDF & Email

Leave a Reply

Your email address will not be published. Required fields are marked *