Ajenti is an open source web based control panel for Linux servers. It offers a graphical user interface to perform most of the actions required to configure and keep your server up to date. If you are familiar with Webmin, Ajenti is designed for the same purpose, but is simpler and easier to use. Then again, due to the fact it's simpler, it does not offer as many features. If you prefer to have a simple yet solid control panel with some eye candy, Ajenti is definitely worth checking out.
Establish a SSH connection to your virtual server and authenticate as root. If you prefer not to use root, you may also use "sudo su" to create a root shell
ssh root@your-ip
Download the latest package files:
apt-get update
The repository key is used to validate that the package originates from the legitimate source, thus preventing the installation of possibly infected packages.
The following command downloads the key and automatically adds it to your system.
wget http://repo.ajenti.org/debian/key -O- | apt-key add -
The following command can be used to add the repository to your sources.list
echo "deb http://repo.ajenti.org/ng/debian main main ubuntu" >> /etc/apt/sources.list
OR, if you prefer, you can also open /etc/apt/sources.list with your favourite text editor, and paste the repository url there.
nano /etc/apt/sources.list
Navigate to the end of the file and paste the following line
deb http://repo.ajenti.org/debian main main debian
Save the changes (ctrl+o) and exit (ctrl+x).
Update the package sources and install ajenti package.
apt-get update && apt-get install ajenti -y
Start Ajenti by executing the following command
service ajenti restart
If you are using a firewall, please open port 8000 to enable access to the control panel.
Open your web browser and navigate to https://yourdomain.com:8000 or https://your-ip:8000
You will most likely receive a warning indicating that there is an issue with the server's certificate. This is not dangerous, it just means that the certificate used was not issued by a reliable party, as it was self-generated. If you already have a trusted certificate, you may use it instead. That is, however, outside the scope of this tutorial. You are also offered an option to disable SSL, but it is recommended to keep it enabled, as with SSL your traffic will be encrypted and login credentials are not submitted in plan text.
The default login credentials:
Username: root
Password: admin
Once you have logged in, the first step is to change the root user's password. To do this, navigate to the "Configure" menu.
Click "Change password" on root account and write a new password.
You may also create a new user and select which features you would like to grant the user access to. To do this, first click "Create", then set the name by clicking "unnamed" and writing the new name, and lasty click the icon on the left from the name to set the permissions.
Once done, click "SAVE" on the top of the page.
If you altered any other settings, also remember to apply the changes by restarting the control panel.
Dashboard can be used to display a lot of useful information at once. By default, only a welcome widget is shown. You may remove widgets by grabbing from the dotted area and dragging them down.
You can add new widgets by clicking "Add widget", and drag them to the position you would like them to be.
Most of Ajenti's functionality is offered by the plugins. There are already many plugins available, and the number of plugins available increases as time passes.
You can view and install more plugins on the "Plugins" page. Some of the plugins are disabled by default, most likely because the application they are used to control is not installed. If you later install an application which Ajenti has a plugin for, restart the Ajenti control panel and it should be enabled.
Ajenti control panel can be used to install and configure your web server, and finally upload the website.
LAMP (Linux Apachhe MySQL PHP) is the most common web server setup for Linux at the moment. There are other alternatives, such as Nginx and Lighttpd, but only Apache will be covered in this tutorial.
The web server is now installed, but not shown by Ajenti, as the plugins are updated upon restart.
You will have to log in again, and then Apache will appear on the menu, where you can start, stop, reload, restart and configure Apache.
Ajenti has a file browser, but it is much more effective and easier to use SFTP to upload your files. FileZilla is the most commonly used client, but you may use any SFTP client you like.
In this tutorial, we will upload a test file called info.php to check that both Apache and PHP are installed and working.
Contents of index.php:
<?php phpinfo(); ?>
You may use any text editor on your local computer, save it as info.php and upload it to the web root (/var/www), or alternatively you can use the command line like shown below.
nano /var/www/index.php
Once the file is created and the editor opens up, paste the php code shown above, press ctrl + x and when you are asked whether to save the file or not, press y to confirm.
Now that the file has been saved, navigate to http://your-ip, and you should see a white page with text "Yay, the web server works!". If this is the case, you have succeeded installing the web server. If the page does not respond, or the text is not shown, make sure you followed all the steps, and that the server firewall allows connections on port 80 and 443.
You may update the website by uploading new files or editing the existing ones at any times using SFTP or SSH client.
Thanks for learning with the DigitalOcean Community. Check out our offerings for compute, storage, networking, and managed databases.
This textbox defaults to using Markdown to format your answer.
You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!
I am getting this error.
Some packages could not be installed. This may mean that you have requested an impossible situation or if you are using the unstable distribution that some required packages have not yet been created or been moved out of Incoming. The following information may help to resolve the situation:
The following packages have unmet dependencies: ajenti : Depends: python-requests (>= 0.12.0) but it is not going to be installed Depends: python-catcher but it is not going to be installed E: Unable to correct problems, you have held broken packages.
So can i use it instead of Cpanel !
@Folke, after you log in, make sure you run apt-get update before taking any further steps. Let me know if you run into issues.
I get the same error, apt-get update doesn’t seem to help
For what its worth, it installed fine on a Ubuntu 13.04 server, not on the 12.04 mentioned.
I was also getting the above error… http://docs.ajenti.org/man/install/ubuntu.html#ubuntu-packages worked for me.
http://repo.ajenti.org/ng/debian is different to above, the above is missing the /ng/
Hope it helps.
Thanks for the tutorial, was great :)
I installed nginx on Ajenti. How to install php?
@rahid.robin: Ajenti supports php and nginx as far as I know. Try installing the php5-fpm package
Does it have something to handle mail?
@Angelica: It doesn’t, unfortunately. I recommend checking out Virtualmin <a href=“https://www.digitalocean.com/community/articles/how-to-install-and-utilize-virtualmin-on-a-vps”>https://www.digitalocean.com/community/articles/how-to-install-and-utilize-virtualmin-on-a-vps</a>