sme server post install tasks

SME Server comes already configured and ready to go, but there are a couple of things that still no be done. I will presume that you installed SME server properly and set up internet access. This post is mainly focused on SME server in gateway mode running on as a guest on ESX 4.1. If your running it on bare metal skip the VMware related stuff, but everything else should be done regardless of your configuration or application.

Updating packages

You can update all installed packages by running:

yum update

Perform a post-upgrade (this regenerates all the config files) and than reboot:

signal-event post-upgrade; signal-event reboot

Install VMware tools

If you are running SME as guest on an ESX host you must install VMware tools. Depending on the version of the ESX host you must install different packages.

SME Server 8.0 guest on ESX 4.1 Update 3

I prefer to keep my temp files in the root’s user directory for easy access, you might wanna cd there just to be safe:

cd ~

Download the required packages:


Install the packages and dependencies:

yum localinstall vmware-open-vm-tools-kmod-8.3.17-784891.el5.i686.rpm vmware-open-vm-tools-common-8.3.17-784891.el5.i686.rpm vmware-open-vm-tools-nox-8.3.17-784891.el5.i686.rpm

Link the start script to run level 7:

ln -fs /etc/rc.d/init.d/vmware-tools /etc/rc7.d/S90vmware-tools

Start the service:

service vmware-tools start

DNS Root Servers

SME Server uses root servers for domain name resolution, but sadly the included file isn’t up to date that comes with it. To fix the issue simply edit the file:

nano /etc/

to contain the following entries and nothing more, in this order:

You can check if the addresses are correct here. This lists the (currently) 13 root name servers.

PHP upload_tmp_dir directive

Whilst the file upload variable is set to On by default, the upload_tmp_dir variable is not set and hence has no value in a regular install. The following will set it to /home/e-smith/files/tmp for all ibays.

First create the directory and set appropriate permissions:

mkdir -p /home/e-smith/files/tmp
chmod 2770 /home/e-smith/files/tmp
chown apache:www /home/e-smith/files/tmp

Next we need to modify the php.ini template a bit. This inserts the directove into the correct template segment:

echo upload_tmp_dir = { return \"/home/e-smith/files/tmp\" if -d \"/home/e-smith/files/tmp\"\; } >> /etc/e-smith/templates/etc/php.ini/60FileUploads

Now we just need to regenerate the php.ini and restart the web server:

expand-template /etc/php.ini
sv t httpd-e-smith

Additional contribs

Additionally there are some contribs that need to be installed and configured.

OpenVPN Site2Site VPN between two SME servers or between a DD-WRT capable router SME server.

PHPki to manage certificates (a dependency for OpenVPN)

OpenVPN Bridge VPN for clients on the road (an alternative to the sometimes unreliable PPTP)

WebFiltering to block certain websites and monitor requests made to the HTTP-proxy

Leave a Reply

Your email address will not be published. Required fields are marked *