Skip to main content

Monsta, Web FTP file manager in PHP Ajax

monsta web ftp logo

Few days ago, I wrote an article on net2ftp, a web based FTP file manager letting you upload, download and manage all your file on your FTP. With a simple design and easy to install, net2ftp is still widely used. But if you are looking for some a bit more advanced, Monsta is probably what you are looking for.

 

Monsta - file manager upload

Monsta is an open source web based FTP file manager written in PHP and Ajax. Easy to install too, it lets you upload, download and manage your file in an easy way too. With drag & drop to upload or move, on screen file editing and multi language support, Monsta can replace your desktop FTP software like Filezilla and co. And Monsta is not afraid to claim it! “Say goodbye to desktop FTP software, forever!”

Monsta - set file permission

You can watch a demo here to let you have some idea on the product. Interested? Let’s see how to install it:

 

Installation

1) Download and unzip their latest zip in a dedicated folder of your /var/www

Currently, their latest version is the V1.4.5. But make sure you download the latest one.

In root (or with sudo), run:

2) Change the owner of the folder (by www-data:www-data) to avoid permission issues.

And you’re good to go!

You can directly access it through http://yourIP/monsta

Monsta - login screenshot

You may encounter several problems, especially on the execution time to upload or number of files to upload, etc… you can check their forum or FAQ but all these issues are usually linked to your php.ini configuration. To increase the php value for the size of the upload, execution time, etc.. I recommend you to set up a dedicated virtualhost (And using a sub domain + SSL, meanwhile) and here is how to:

 

Virtualhost configuration

Let’s assume you want to access to your newly installed monsta through the URL ftp.domain.tld

What you will need:

1) Create a A redirection in your DNS server/registrar with wiki.domain.tld to your IP

2) Have SSL certificate ready. If not you can read this tutorial. (Optional)

3) Create your virtualhost as following:

In /etc/apache2/sites-enabled/, create a file called monsta (In root):

and paste the following content:

Adapt the content (Servername, webmaster email, SSL certificate, directory and php values).

When done, save the file (CTRL+X then Yes) and reload apache: (In root)

If everything went well, you should now be able to access to your Monsta Web FTP through the url ftp.domain.tld. It should redirect you to the HTTPS version.

OpenSource Webmail for your mail server (in Ajax) – AfterLogic Webmail

https://mail3.kconlineinc.com/al_logo.pngIf you are looking for an alternative to Roundcube, AfterLogic certainly worth a try.

AfterLogic WebMail Lite, is a free and opensource community edition, its Ajax web interface is clean, easy to use and reactive. Multidomains, with address book, mail filters (Sieve), Auto-complete of e-mail addresses, spell check, delivery confirmation, etc…

It has all it takes to be a simple webmail with essential features.

 

If you are looking on top of it for a calendar (Events and reminder), multiple mail account per user, sub-admin feature, you will need to go pro. (Which I don’t need)

Here is how to install it on your own server. I assume you already have a LAMP server working. If it’s not the case, you can check my previous tutorial on how to install a Apache, MySQL and PHP.

Installation

Although a deb is available in Debian/Ubuntu repository, I prefer to install it with their latest archive.

1) Create a folder in your /var/www dedicated for AfterLogic Webmail:

As root user, type:

2) Download and unzip latest AfterLogic Webmail Lite archive

3) Change the owner of the folder by Apache user (www-data)

4) Run the installer:

Navigate to http://IP/afterlogic/install/ with your favourite web browser and check/correct any unmet requirement.

For example, in my case I didn’t have cURL Extension. I simply add to install it in root:

At the 3rd Step, you will need to set up the SQL database. I suggest you to use MySQL with PHPMyAdmin to create the database and user. If you don’t know how to do that, you can check my previous PHPMyAdmin tutorial.

You will be able to check the connection with AfterLogic Webmail and the MySQL Database.

 

As this is a new install, it needs to create the tables (Leave the last box ticked)

You will then need set up a strong password on the Webmail admin (mailadm). Through the Webmail admin interface, you will be able to set up/modify the IMAP/SMTP connection, database info, manage users if you want to restrict it, etc…(But it’s a very simple and light administration panel).

While the next step will help you check if the SMTP/IMAP server is working.

5) Delete the installer:

In root (sudo/su) type:

If you want to configure additional option like the maximum attachment size, you can directly edit the data/settings/settings.xml file.

You should now be able to access your mail by using directly your username (If installed in localhost with real user, you don’t need to add @mydomain.com)

Virtualhost configuration

Now you got your webmail working and you want to access it from al.domain.tld or directly from mywebmail.tld, instead of using the IP/afterlogic link, you will need to set up a virtualhost. And obviously you want to force HTTPS connection.

You will need to:

1) Create a A redirection in your DNS server/registrar

2) Have SSL certificate ready. If not you can read this tutorial.

3) Create your virtualhost as following:

In /etc/apache2/sites-enabled/, create a file called roundcube (In root):

and paste the following content:

Adapt the content (Servername, webmaster, SSL certificate and directory, …).

Note that I’ve added 3 lines for PHP configuration to allow to send large attachment (10Mb)

When done, save the file (CTRL+X then Yes) and reload apache: (In root)