Screen shots

Security Notice
Phishing campain

Find out what directory your webserver is serving. ( For Apache: search for DocumentRoot in httpd.conf ) (For IIS, c:\inetpub\wwwroot is pretty likely, or some variation)

For Linux, a common choice is:


for virtual servers


Virtual Servers with Plesk 7.5+

/home/httpd/vvhost/<domain ID>/httpdocs

If this fails, try this:

For Linux, the following command will probably work to find the file:

find / -name httpd.conf

The next command will look for DocumentRoot in whatever files are found

find / -name httpd.conf -exec grep -B 3 -A 5 "DocumentRoot" \{\} \; | more

or more efficiently

find / -name httpd.conf -print | xargs grep -H -B 3 -A 5 "DocumentRoot" | more

even more efficiently

find / -name httpd.conf -print | xargs grep 'DocumentRoot "' | awk -F'"' '{print $2}'

Let's assume the served Directory is /home/httpd/html (a very common answer on Linux) and you downloaded squirrelmail Version: 1.4.3a and put it into /home/httpd/html for this example.

go there:
cd /home/httpd/html

Uncompress the .tar.gz package using:

tar xzvf squirrelmail-1.4.3a.tar.gz

and the .tar.bz2 package using:

tar xjvf squirrelmail-1.4.3a.tar.bz2

This usually takes care of everything (mkdir, uncompress, untar)

or, if this fails use:

gunzip -c squirrelmail-1.4.3a.tar.gz | tar xf -


bunzip2 -c squirrelmail-1.4.3a.tar.bz2 | tar xf -

or if already unzipped you can:

tar xvf squirrelmail-1.4.8.tar

Next go into the installation directory and create a directory for attachments:

cd squirrelmail-1.4.5
mkdir attachments
cd attachments

create a file named .htaccess with "deny from all" in it:

vi .htaccess

(replace vi with your favorite text editor like Pico below)

pico .htaccess

return to the base directory:

cd ..

make sure everything goes for the quick and dirty solution:

chmod -R 777 attachments data

go into the config directory and configure the remaining steps with the included perl script:

cd config
perl conf.pl

When running conf.pl, follow the instructions.


    • Change name to whatever you'd like.
    • Change Domain to your domain
    • Change IMAP server to your server.
    • Change SMTP server to your server.
    • Change Data Directory, (optional BUT preferred).
    • Change Attachment Directory

Delete or modify the .htaccess file to allow access to the page

Point your browser to WWW.YOUR-WEBSERVER.COM/squirrelmail-1.4.3a

To make life easier, you can also link or rename the squirrelmail-1.4.3a directory to something else:

ln -s squirrelmail-1.4.3a squirrelmail

This time, point your browser to WWW.YOUR-WEBSERVER.COM/squirrelmail

If you do not see SquirrelMail on the above URL, check that your webserver has PHP support and that it uses index.php as one of the default documents in the given directory.

For Apache:

DirectoryIndex index.html index.htm index.shtml index.shtm index.php

More info about PHP is in the INSTALL file in your Installation directory.

See more information about solving problems at SquirrelMail.

Since that was the quick and dirty version you are supposed to make your installation secure and smooth now. A few options:

Find out what user your webserver is running as. For Apache: User webusername in httpd.conf. Give the data directory to the webserver user and make sure others do not write there:

chown -R webusername data
chmod go-w data

Find out what group your webserver is running as.

Give the attachments directory to the webserver group. Give the webserver write but not read permissions. Give the directory to e.g. root:

chown -R root attachments
chgrp -R webgroup attachments
chmod -R 730 attachments

See how SquirrelMail works... and refine using "conf.pl" again until satisfied.

Finally... install all plugins... install one and test, install other and test... until satisfied.

Finally you can see KnownBugs page...

At this point, some people request a user and password to log in the system. Remember SquirrelMail is a IMAP/SMTP web interface, so to log in ask your mail administrator for this information.

If you do not have shell access to the server (e.g. a webhosting service that doesn't permit you to connect as a terminal):

Download the installation package and extract it on your local machine.

FTP the extracted package to the desired location, somewhere in the "public" area on your webserver. Make sure the directory structure does not break.

Locate config_default.php in installation directory/config, make a copy, rename the copy to config.php and drop it back into the same directory. You may have to manually edit your new config.php to be able to connect to your imap server. doc/presets.txt contains information on what values to choose for several IMAP server types.

Try connecting to your installation through a browser (www.yoursite.whatever/installationdirectory or something like that). If it works, you're there. If not, you would probably have to keep fooling around with config.php.

To use the Administrator plugin (and avoid having to manually edit the config.php all the time): Locate the section beginning "To install plugins..." in config.php. It should be in the lower parts of the file. Insert something like:

$plugins[0] = 'administrator';

where it says you should do so.

Create a text file containing just your user name (your IMAP login name), name it 'admins' (without file extension), and ftp it into installation directory/plugins/administrator (on your server, of course; the author of that module says in the readme that this is not the securest method of granting access to the administrator interface, but manipulating ownership of files is no good if you don't have shell access, I believe).

Log through SquirrelMail into your IMAP account again and see whether you have the "Administration" section on your "Options" page.

Now, this is really a dirty installation, and someone should probably say a few words about file permissions and how to get it reasonably safe to operate. Also, you still have to tweak some settings, such as the attachments directory and stuff.But it should work for a start, at least it did for me. Of course minimum requirements have to be in place (PHP and stuff).

© 1999-2010 by The SquirrelMail Project Team