media file explorer download upload index folder image licenses menu widget Play Pause profile-settings more dots-two-horizontal dots-two-vertical more-vertical pending google-plus hangouts facebook instagram whatsapp spotify telegram twitter vine renren rss youtube twitch vimeo flickr dribble behance deviantart 500px steam github soundcloud skype reddit linkedin lastfm delicious stackoverflow pinterest xing flattr foursquare yelp World

(Bash Script) Automate Multiple Classicpress & Wordpress Installation + [Caching and SSL]

If you are tired of using control panels (I am because they are mostly not secure, and most comes loaded with bundles of useless stacks), and want to do everything on the server level, I wrote a menu-driven bash program that handles the installation of ClassicPress or WordPress using Nginx (+ Caching), PHP and mariadb.

It also provides the ability to secure your website using Let's Encrypt, and Certbot for the auto-config. I made this optional because I might just want to do some local development, so, I won't need an SSL in that regard.

As of the time of writing this, it took only 1min.34s (proof in the video below) to configure a website on a fresh server instance, it shouldn't take more than 30s to add other sites.

I might add new features like support for SFTP, this way you can use whatever SFTP client as a (file manager), I might also add PHPMyAdmin, and the ability to manage Name Servers (This is on my to-do list), and other enhancement, for now, this is okay for my use cases.

I have implemented all the feature I mentioned above, you can now:

  • Install and Configure Multiple Classicpress or WordPress Sites
  • Restore an Existing Classicpress or Wordpress Website
  • Secure Sites Using Free Let's Encrypt Certificate
  • You Can Create More Than one SFTP Users (This Way, You Can Access Through SFTP Client, e,g Filezilla, Winscp, etc)
  • Manage Your Own Custom DNS (You can also Add New DNS Zone, Edit Zone, and Even Delete DNS Zone)
  • Install PHPMyAdmin (You can also secure it with Let's Encrypt)
  • More Features in The Works

►Key Requirements

  • Operating system: Ubuntu LTS
  • Memory: At least 512MB GB RAM
  • The installation must be performed on a clean system, free of installed/configured software, especially anything related to web servers.
  • The installation must be done as a root user, it won't even allow you to pass through even if you want to.
  • If you want to use the Let's Encrypt Feature, make sure you have an A record for the website

How To Install The Program

The installation is easy:

Connect to your server as root via SSH

ssh root@yourserver

Download The Program, and Change Your Diretory To The Program Directory

git clone && cd commandline_controlpanel

Give It an Executable Permission

chmod +x cp

Run The Program, and Configure Away


Note: Make Sure You Always Add a Top Level Domain, i.e .com, .net, etc

Whenever you want to install a new website, make sure you have switched to the commandline_controlpanel directory, and add a run the program again, e.g

cd commandline_controlpanel



Video WalkThrough