Ubuntu 18.04 LAMP Server – Quick Setup and FTP to Webserver

I recently setup an Ubuntu 18.04 webserver to test webpages locally. I used tasksel to quickly install the LAMP server role as follows:

sudo apt update
sudo apt install tasksel
sudo tasksel install lamp-server

With the webserver up and running I needed to be able to FTP into the var/www/html directories to upload my HTML and CSS.

As Ubuntu server comes with SSH installed be default I decided to use that for FTP instead of installing something like vsftd (Very Secure FTP Daemon). FTP over SSH turned out to be a much simpler and quicker setup.

Warning: These steps do not restrict access to folders outside of the /var/www/html directories. As such this setup is not recommended for any kind of production server.

First create a new directory under /var/www/html:

cd /var/www/html
sudo mk dir newdirectory

Create a new user and give the user a password:

sudo adduser ftpuser
sudo passwd ftpuser

Finally give the new user the permissions that they need. Change the directory ownership and group:

sudo chown www-data:www-data /var/www/html/newdirectory

Give the group write permissions to the directory:

sudo chmod -R 775 /var/www/html/newdirectory

Add the new user to the www-data group:

sudo usermod -a -G www-data ftpuser

With this done I configured FileZilla to establish a secure FTP connection to my webserver.

Filezilla: Secure FTP using SSH File Transfer Protocol.

Sources:

https://www.digitalocean.com/community/questions/permissions-on-var-www-html-for-uploading-web-site-files-via-sftp

Ubuntu Server 14.04 (Trusty Tahr) – Zentyal 3.5 Installation

ubuntu-server-logo

Zentyal Server is an open source Linux small business server, that can act as a Gateway, Infrastructure Manager, Unified Threat Manager, Office Server, Unified Communication Server or a combination of the above.

I am performing this setup on a minimal virtual machine installation of Ubuntu Server 14.04. At the time of writing Zentyal 3.5 is the most current Zentyal release.

First make sure that repositories and software are up to date:

sudo apt-get update
sudo apt-get upgrade

Add the Zentyal 3.5 repository to /etc/apt/sources.list:

echo "deb http://archive.zentyal.org/zentyal 3.5 main extra" | sudo tee -a /etc/apt/sources.list

Import public keys for Zentyal 3.5:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 10E239FF
wget -q http://keys.zentyal.org/zentyal-3.5-archive.asc -O- | sudo apt-key add -

Update repositories:

sudo apt-get update

Install Zentyal:

sudo apt-get install zentyal
  • When prompted enter a password for the MySQL root user.
  • Confirm port 443 as the Zentyal https port.

From here we simply setup Zentyal using the web-gui. Open Firefox (the only officially supported browser) and enter the url for your Zentyal install: https://zentyal-server-ip.

Confirm the security exception in Firefox and then log in to Zentyal using your Ubuntu Server credentials:

Zentyal - login