TinyCP – A Lightweight Control Panel for Managing Linux Systems

TinyCP is a lightweight control panel, that provides wide range of features on a Linux system, which features includes:

  • Domain Management
  • Mailboxes
  • Databases
  • FTP
  • Samba
  • Firewall
  • VPN
  • GIT
  • SVN

At this point TinyCP is only available for Debian/Ubuntu based systems, but it is supposed to come for CentOS in the near future.

Before you start with the installation, the TinyCP team requires you to register with an email address in order to get the download instructions and account ID.

Read Also: 20 Best Control Panels to Manage Linux Servers

These details will later be required to activate your license. The download page can be found here. The process is straightforward and completed in less than a minute.

Note: In a recent post from TinyCP team, it was made known that TinyCP will remain free until the beginning of 2019. After that, in order to keep the project alive, small fees will be charged on per IP bases. Per the information in that post, the prices will be $1 Montly and $10 Annually.

For the purpose of this article, I will be installing TinyCP on a Linode Ubuntu 16.04 VPS with IP address

Install TinyCP Control Panel in Debian and Ubuntu

To install TinyCP you will need to download their installer. For that purpose, you can navigate to a directory of your choice and run the commands below. For organization purposes, I will download the package in: /usr/local/src/.

# cd /usr/local/src/ 
# wget http://tinycp.com/download/tinycp-install.sh

Give executable permissions on the downloaded file and run it.

# chmod +x tinycp-install.sh
# ./tinycp-install.sh

The installation process is pretty quick (less than 2 minutes). When the installation is complete, you will receive a URL username and password with which you will be able to access your new control panel:

LOGIN: admin

Note: Before trying to access the provided URL, you will need to start TinyCP with the following command.

# /etc/init.d/tinycp start

Then you can head to the provided URL and authenticate with the new credentials. The page should look like this:

TinyCP Admin Login
TinyCP Admin Login

Once logged in your account, fill the email address and account ID so your license key can be updated:

Active TinyCP Subscription
Active TinyCP Subscription

Then you can proceed to the modules section, where you will be able to install different “modules”, including MySQL, PostgreSQL, Samba, FTP server, Email server, ClamAV, Cron, Apache web server. The modules page is also accessible through the cube in the upper right corner:

TinyCP Install Modules
TinyCP Install Modules

Install MySQL/MariaDB

Let’s start by installing a MySQL service. Simply click the “install” button next to MySQL. A popup will show, asking you to confirm the installation of MySQL. Click install:

Install MySQL Module
Install MySQL Module

You will need to wait a minute or two for the installation to complete. In the end you should see output similar to this one:

MySQL Module Installation
MySQL Module Installation

Click the “Finished” button and then click on the “Prepare” button next to MySQL. This will create the required config files for the service. Databases can be managed from the left side menu. The database section allows you to:

  • Add/delete databases
  • Create users
  • Create backups tasks

Each process is pretty straightforward and does not require any additional explanation.

Install Apache Web Server

Now lets Install Apache web server as well. Apache can be found at the bottom of the page. Again simply click the install button and wait few minutes for the installation to complete:

Install Apache Web Server
Install Apache Web Server

When the install is complete, click on “Finished” button again and then “Prepare” to generate the required config files:

Prepare Apache Configuration
Prepare Apache Configuration

If you wish to tweak your services a little more, you can go in the “Configuration section on the left, choose the service you wish to tweak and make your changes.

For example, you can install additional Apache modules using a drop down menu on the right and by clicking the install button:

Tweak Apache Settings
Tweak Apache Settings

Create Your First Domain

Now you can create your first domain, by using the “WEB” section in the left navigation menu. Click on “New Domain” and fill in the domain you wish to host. You can choose the domain’s IP address from the dropdown menu:

Create New Domain
Create New Domain

Once created, you will be redirected to the domain’s configuration page. Here you will see few sections, including:

  • Main section – provides information about domain, document root and allows you to setup www redirect.
  • Subdomains – Easily create subdomains.
  • Aliases – create domain aliases.
  • Listen – list with IP addresses on which IP resolves and allowed ports.
  • Apache, error logs, access logs – first tab allows you to see the vhost for your domain, next are the error logs and third are the access logs.
Domain Configuration Page
Domain Configuration Page

In the upper side of the window, you may notice that there are two more sections:

  • PHP – allows you to configure certain PHP settings, disable functions etc.
  • Applications – helps you install applications on your domain, including RoundCube and WordPress.

Review the Dashboard

TinyCP dashboard provides you some basic informatoin about the usage on your system. This information includes:

  • Operating system info
  • Hardware info
  • IP address
  • System load
  • Top processes
  • DIsk spaces + inodes
  • Network clients

The panel only shows information about your system. No actions can be taken from here (such as killing a process for example).

Review TinyCP Dashboard
Review TinyCP Dashboard

TinyCP is a lightweight, feature rich control panel, that allows you to easily create domains, databases, email and FTP accounts etc. The interface is simple and easy to navigate through. If you are short on resources and need a control panel to create and manage your system, this might be the right choice for you.

Hey TecMint readers,

Exciting news! Every month, our top blog commenters will have the chance to win fantastic rewards, like free Linux eBooks such as RHCE, RHCSA, LFCS, Learn Linux, and Awk, each worth $20!

Learn more about the contest and stand a chance to win by sharing your thoughts below!

Marin Todorov
I am a bachelor in computer science and a Linux Foundation Certified System Administrator. Currently working as a Senior Technical support in the hosting industry. In my free time I like testing new software and inline skating.

Each tutorial at TecMint is created by a team of experienced Linux system administrators so that it meets our high-quality standards.

Join the TecMint Weekly Newsletter (More Than 156,129 Linux Enthusiasts Have Subscribed)
Was this article helpful? Please add a comment or buy me a coffee to show your appreciation.


Leave a Reply
    • My guess here is that it was easier for them to work with apache. I agree that nginx would be a better option if looking for a “tiny” approach. Probably they will add it in future, since the dev team is still working on this.

    • @Kamen,

      I don’ think TinyCP beats Webmin, because Webmin has a huge list of features then this TinyCP and also Webmin is free.

    • @Kamen, I think TinyCP is better suited for small servers, similar to Linode’s 5$ server. I don’t think overall TinyCP is better then webmin, but if you are limited on resources, you can give it a try.

      On the other hand, it really does not provide more features compared to webmin. But let’s give it credit, this is a relatively new project and it’s doing pretty well so far. I am not sure if people are going to use it when they make it a paid service, considering there are better free alternatives.


Got Something to Say? Join the Discussion...

Thank you for taking the time to share your thoughts with us. We appreciate your decision to leave a comment and value your contribution to the discussion. It's important to note that we moderate all comments in accordance with our comment policy to ensure a respectful and constructive conversation.

Rest assured that your email address will remain private and will not be published or shared with anyone. We prioritize the privacy and security of our users.