Table of Contents
Administration panel configuration
The panel is how we call the web-based interface where your users are going to manage services you are providing.
The panel needs some more perl modules. They are not required for the VHFFS base, so you only need to install them on the server which is going to host the panel.
apt-get install libhtml-template-perl libhtml-template-expr-perl libcgi-session-perl libauthen-captcha-perl libdatetime-perl libtemplate-perl libcgi-fast-perl libcaptcha-recaptcha-perl
Then check the panel by doing:
If you get an error message like the following, this means that a perl module is missing.
# /usr/share/vhffs/panel/index.pl Can't locate CGI/Session.pm in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.10.1 /usr/local/share/perl/5.10.1 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.10 /usr/share/perl/5.10 /usr/local/lib/site_perl .) at /usr/share/vhffs/panel/index.pl line 39. BEGIN failed--compilation aborted at /usr/share/vhffs/panel/index.pl line 39.
Install and configure Apache2
# apt-get install apache2 ~/vhffs-4.6# cp ./vhffs-doc/config/apache/panelconf /etc/apache2/sites-available/panel.conf
then edit the file and adapt it to your needs /etc/apache2/sites-available/panel
Once you are ready, run:
# a2enmod cgid # a2ensite panel # apache2ctl restart
If everything is working fine, you'll get the following:
# wget -q http://panel.your.host/ -O /dev/null # echo $? 0
The panel have a single point entry, which is /usr/share/vhffs/panel/index.pl, meaning you can use any FastCGI backend mechanism.
First VHFFS user
You can now create your first VHFFS user, which is probably going to be a VHFFS administrator.
Check that a MTA is running on the host which is currently running the panel.
# sendmail root test ^d # cat /var/mail/root-recipient-mailbox From email@example.com Sun Apr 03 02:24:18 2011 (...) Message-Id: <E1Q6B70-0006tA-RI@your.host> From: root <firstname.lastname@example.org> test
Go to http://panel.your.host/?do=subscribe and fill all the fields.
After the form is submitted, you'll find the mail somewhere:
- In your Inbox if your local MTA is well configured, which is normally not the case since you were of course using a fresh Debian Install as we told you to do so
/var/mail/www-dataif the mail bounced, which should be the current case, you'll find the following:
# cat /var/mail/www-data From MAILER-DAEMON Sun Apr 03 02:27:08 2011 From: Mail Delivery System <Mailer-Daemon@your.host> To: email@example.com Subject: Mail delivery failed: returning message to sender (...) ------ This is a copy of the message, including all the headers. ------ From: VHFFS Admin <firstname.lastname@example.org> To: email@example.com Subject: =?UTF-8?B?W1ZIRkZTXSBXZWxjb21lIG9uIE15IEhvc3Rpbmcgc2VydmljZQ==?= Hello Firstname Lastname, Welcome on My Hosting service Here are your login information : User: youruser Password: vpV4eD0W Your account is NOT created yet, you cannot login on the panel now, you are going to receive another mail in a few minutes upon account creation. My Hosting service Administrators
- In /var/mail/youruser or any local mbox or Maildir
Of course, you can also change the password in the VHFFS database, but playing the “Where's Wally ?” game with the greeting email is fun, isn't it ?
Next, we need to create the VHFFS user on the system.
# /usr/lib/vhffs/bots/user.pl # ls /data/home/y/o/youruser #
You'll find another mail announcing to the user that its account is now created on the system and activated, allowing it to login to the panel and asking for services.
Log in to the panel with this user.
Next, you have to set this user as administrator, you can either change the corresponding field in the VHFFS database or you can use the VHFFS tool called
# psql ... vhffs=# UPDATE vhffs_users SET admin=1 WHERE username='youruser'; UPDATE 1 or # vhffs-makeadmin youruser User youruser is now an administrator
Translations / Locales
If the panel does not switch languages this is probably because necessary locales are not compiled in on your system.
On Debian, run
# dpkg-reconfigure locales
Then select at least the UTF-8 codeset for each wanted translation.