Screen shots

SquirrelMail Administrator's Manual: Account management Next Previous Contents

9. Account management

9.1 Adding accounts

The problem

SquirrelMail can't be used to add user accounts, or to allow users to add their own accounts, for three main reasons.

  • One of the SquirrelMail design goals is to do what it does very well, but to remain lean and simple.
  • User administration is very dependent on the server. A NT server with Exchange differs from a Linux server with Cyrus. There's no such thing as adding a SquirrelMail user; what you need to do is to add users to the IMAP server.
  • This would open a whole new (and unwanted) batch of security issues. One of those issues is giving your web server administrative access to your e-mail system.

SquirrelMail (without plugins) is just an IMAP client - nothing more. It merely passes information to your IMAP server and formats it so it looks better to the people logged in.

It is, however, possible to develop a tool that fits your environment and put a link to it at your login page. Such a tool could either be a SquirrelMail plugin or a detached application with the "look and feel" of SquirrelMail. The internals of such a tool are system-specific, so you should consult the documentation for your system and/or IMAP server. If you do develop it as a plugin, we would love to list it on our plugins page.

Existing solutions

In order to provide a free web mail sign up you can try one of these third party solutions (listed in no particular order):

  1. The Vadmin plugin.
    • The excellent Vadmin plugin was created to meet the needs of system administrators, and allows you to create new accounts and manage accounts, or even provide a full control panel for you and lower-privileged administrators. It requires a specific configuration or software to be running on the mail server ( VMailMgr or a SQL backend system are currently supported, but you may add your own backend to interface with other types of setups). Please note that this is a third-party plugin and not a part of SquirrelMail itself.
  2. vpopmail, vqregister, and vqsignup.
    • vpopmail provides a virtual user setup. User account information can be stored in file databases, a SQL database, or a LDAP directory. vqregister and vqsignup provide account sign up scripts that use vpopmail libraries. This setup uses qmail or Courier MTA (SMTP servers) and the Courier IMAP server.
    • If you use vpopmail - you can use administration and automatic signup programs available at http://inter7.com. If you have some other type of setup (LDAP / MySQL / System users / other special local delivery program) - you need to write appropriate scripts that automate user management (for SQL-based setups, you can use the Vadmin plugin (mentioned above) as long as you use Vadmin version 3.0 or better).
    • WARNING! inter7.com might require using other browsers than Microsoft Internet Explorer (typically Firefox).
  3. UoA-Signup.
    • UoA-Signup is a simple signup script for inserting users in an LDAP directory. This setup uses the Sendmail MTA and the Cyrus IMAP server. For Cyrus, you would also need the autocreate patch. Setup can be customized for different MTAs (like Exim and Postfix). Note that UoA-Signup is a bit old and might not be supported.
  4. hMailServer
    • There is a script and a small discussion in the forum about doing this (rather easily) with hMailServer as the mail server.

Issues to consider

There are a couple of issues related to making an e-mail service open to the public. Some of them are listed below.

  1. Accountability
    • You must have end user agreements and procedures that deal with misuse of the interface.
  2. Performance
    • The SquirrelMail requirements are not large, but certain PHP modules are required if you want a fast system.
    • You need to remove plugins that can increase the load at your server, and provide server side alternatives. For example, stock filters plugin should not be enabled on larger systems.
  3. Scalability
    • Your system should be able to extend when the current server can't deal with the load. This would mean fast internal network (maybe 1 Gb Ethernet) that contains separate authentication and storage servers and load balancing between several WWW/IMAP servers.
  4. Backups
    • You will have to use RAID1 disks for storage and some special backup solution.
    • You will have to use at least two different internet providers in order to get reliable internet connection.
  5. Experience
    • You need to understand how SquirrelMail works. You will need that knowledge in order to
      • customize the interface to suit your site,
      • combine the stock and third party plugins, and
      • write your own plugins (you will most likely need at least one non-existent plugin or interface customization).
  6. Finances
    • You need money to allow you to keep your server farm running and pay your bills.

9.2 Changing passwords

SquirrelMail doesn't store any passwords. It's the IMAP server's responsibility to take care of that, and the IMAP server can choose from a number of different backends, such as SQL or LDAP database for instance, to perform that task. Fortunately, there are several SquirrelMail plugins that, depending on how your system is set up, can be used as a change password interface.

It you're using SquirrelMail 1.5, try the included change_password plugin first. If it doesn't work, or if you're running some other SquirrelMail version, try the plugins at the change password plugin page.

Next Previous Contents
© 1999-2016 by The SquirrelMail Project Team