Category Archives: Web Sites

Run Vhosts Under Separate UIDs/GIDs Apache2

To run vhosts under separate UIDs/GIDs in apache is very easy with mpm-itk.  This will help secure your sites on your shared server.

First install apache2-mpm-itk

apt-get install apache2-mpm-itk

Next add a group and user

groupadd web1
useradd -s /bin/false -d /home/web1_admin -m -g web1 web1_admin

Now add this to the end of your vhost for your site. Be sure to place this inside the </virtualhost> tag and not outside of it.

AssignUserId web1_admin web1

For each of your sites you will user a different username and group. Now be sure to set your web directory to the correct user and group.


chown -R web1_admin:web1 /var/www/website

Compare Directories and Files with Diff

Sometimes working with a directory full of subdirectories and files you need to compare the directories and files to another version of the files.  This comes in extremely useful when restoring a hacked website.  To do this you need to have the old copy and the current copy in two different directories on your system.  Then run the command below replacing DIR1 and DIR2 with the directoires you would like to compare.  This works through the entire directory because of the -r option which stand for recursive.  The -q option suppresses the entire output and only outputs the files the differ.

Continue reading Compare Directories and Files with Diff

Changing Multiple Directory and File Permissions

After setting up your website it is always a good idea to change the directory and file permissions.  This makes it a little harder for an attacker to compromise your site.  For Joomla and WordPress it is best practice to set your directory permissions to 755 and your file permissions to 644.  In addition to this, WordPress recommends setting the wp-config.php file to 600.


Using the code below, go to the root directory of your website and run the following commands.


find . -type f -exec chmod 644 {} \;
find . -type d -exec chmod 755 {} \;



Create Joomla Website in ISPConfig

Create web site using ISP Config

  • If a new client, under “client” tab, select “Add new client” button
    • Enter relevant client information
    • “Save” entry
  • Under “DNS” tab, use the main “Add new DNS Zone (SOA)” button, not the text link on the left.
    • Choose the DNS server
    • Choose the appropriate client
    • For “Zone”, enter the domain name (Do not include “www”)
    • Set “NS” as
    • Set “e-mail” as
    • Under “Records” tab, create the following Continue reading Create Joomla Website in ISPConfig

Backup Server with Ubuntu and Dirvish


Install Dirvish, rsync and ssh on the backup server:

apt-get install dirvish ssh 

/etc/dirvish/master.conf should look something like this:


expire-default: +15 days
        #MIN    HR      DOM     MON     DOW     STRFTIME_FMT
        *       *       *       *       1       +3 months
        *       *       1-7     *       1       +1 year
        *       *       1-7     1,4,7,10 1
        *       10-20   *       *       *       +4 days

Create a dirctory where all backup’s will be stored: Continue reading Backup Server with Ubuntu and Dirvish

Highland Landscaping

I got a new client this week at work, Highland Landscaping.  I have some very good ideas for a design for his site based off the photos he gave me.  Also, from the photos it appears they do some amazing work.  So if you need some landscaping done I would be looking in their direction.

You can follow along with the design and development of their site by going to  If the splash page is still up, I am still in the dev phase and you can go to