Next: 3. Installing Sympa Up: Sympa Mailing Lists Management Software version Previous: 1. Presentation Contents Index
Subsections

- 2.1 Organization
- 2.2 Binaries
- 2.3 Configuration files
- 2.4 Spools
- 2.5 Roles and privileges
  - 2.5.1 (Super) listmasters
  - 2.5.2 (Robot) listmasters
  - 2.5.3 Privileged list owners
  - 2.5.4 (Basic) list owners
  - 2.5.5 Moderators (also called Editors)
  - 2.5.6 Subscribers (or list members)

# 2. what does Sympa consist of ?

#
2.1 Organization

Here is a snapshot of what Sympa looks like once it has settled down on your system. This also illustrates the Sympa philosophy, I guess. Almost all configuration files can be defined for a particular list, for a virtual host or for the whole site.

- `/usr/local/sympa-stable`
  The root directory of Sympa. You will find almost everything related to Sympa under this directory, except logs and main configuration files.

- `/usr/local/sympa-stable/bin`
  This directory contains the binaries, including the CGI. It also contains the default authorization scenarios, templates and configuration files as in the distribution. `/usr/local/sympa-stable/bin` may be completely overwritten by the `make install` so you must not customize templates and authorization scenarios under `/usr/local/sympa-stable/bin`.

- `/usr/local/sympa-stable/bin/etc`
  Here Sympa stores the default versions of what it will otherwise find in `/usr/local/sympa-stable/etc` (task models, authorization scenarios, templates and configuration files, recognized S/Mime certificates, families).

- `/usr/local/sympa-stable/etc`
  This is your site's configuration directory. Consult `/usr/local/sympa-stable/bin/etc` when drawing up your own.

- `/usr/local/sympa-stable/etc/create_list_templates/`
  List templates (suggested at list creation time).

- `/usr/local/sympa-stable/etc/scenari/`
  This directory will contain your authorization scenarios. If you don't know what the hell an authorization scenario is, refer to 13,page . Those authorization scenarios are default scenarios but you may look at `/usr/local/sympa-stable/etc/my.domain.org/scenari/` for default scenarios of my.domain.org virtual host and `/usr/local/sympa-stable/expl/mylist/scenari` for scenarios specific to a particular list

- `/usr/local/sympa-stable/etc/data_sources/`
  This directory will contain your .incl files (see 17.7, page ). For the moment it only deals with files requiered by paragraphs `owner_include` and `editor_include` in the config file.

- `/usr/local/sympa-stable/etc/list_task_models/`
  This directory will store your own list task models (see 16.8, page ).

- `/usr/local/sympa-stable/etc/global_task_models/`
  Contains global task models of yours (see 16.8, page ).

- `/usr/local/sympa-stable/etc/web_tt2/` (used to be `/usr/local/sympa-stable/etc/wws_templates/`)
  The web interface (WWSympa) is composed of template HTML files parsed by the CGI program. Templates can also be defined for a particular list in `/usr/local/sympa-stable/expl/mylist/web_tt2/` or in `/usr/local/sympa-stable/etc/my.domain.org/web_tt2/`

- `/usr/local/sympa-stable/etc/mail_tt2/` (used to be `/usr/local/sympa-stable/etc/templates/`)
  Some of the mail robot's replies are defined by templates (`welcome.tt2` for SUBSCRIBE). You can overload these template files in the individual list directories or for each virtual host, but these are the defaults.

- `/usr/local/sympa-stable/etc/families/`
  Contains family directories of yours (see 18, page ). Families directories can also be created in `/usr/local/sympa-stable/etc/my.domain.org/families/`

- `/usr/local/sympa-stable/etc/my.domain.org`
  The directory to define the virtual host my.domain.orgdedicated to managment of all lists of this domain (list description of my.domain.orgare stored in `/usr/local/sympa-stable/expl/my.domain.org`). Those directories for virtual hosts have the same structure as `/usr/local/sympa-stable/etc` which is the configuration dir of the default robot.

- `/usr/local/sympa-stable/expl`
  Sympa's working directory.

- `/usr/local/sympa-stable/expl/mylist`
  The list directory (refer to 17, page ). Lists stored in this directory belong to the default robot as defined in sympa.conf file, but a list can be stored in `/usr/local/sympa-stable/expl/my.domain.org/mylist` directory and it is managed by my.domain.orgvirtual host.

- `/usr/local/sympa-stable/expl/X509-user-certs`
  The directory where Sympa stores all user's certificates

- `/usr/local/sympa-stable/locale`
  Internationalization directory. It contains message catalogues in the GNU .po format.

- `/usr/local/sympa-stable/spool`
  Sympa uses 9 different spools (see 2.4, page ).

- `/usr/local/sympa-stable/src/`
  Sympa sources.

#
2.2 Binaries

- `sympa.pl`
  The main daemon ; it processes commands and delivers messages. Continuously scans the `msg/` spool.

- `sympa_wizard.pl`
  A wizard to edit `sympa.conf` and `wwsympa.conf`. Maybe it is a good idea to run it at the beginning, but these file can also be edited with your favorite text editor.

- `wwsympa.fcgi`
  The CGI program offering a complete web interface to mailing lists. It can work in both classical CGI and FastCGI modes, although we recommend FastCGI mode, being up to 10 times faster.

- `bounced.pl`
  This daemon processes bounces (non-delivered messages), looking for bad addresses. List owners will later access bounce information via WWSympa. Continuously scans the `bounce/` spool.

- `archived.pl`
  This daemon feeds the web archives, converting messages to HTML format and linking them. It uses the amazing `MhOnArc`. Continuously scans the `outgoing/` spool.

- `task_manager.pl`
  The daemon which manages the tasks : creation, checking, execution. It regularly scans the `task/` spool.

- `sympa_soap_server.fcgi`
  The server will process SOAP (web services) request. This server requires FastCGI ; it should be referenced from within your HTTPS config.

- `queue`
  This small program gets the incoming messages from the aliases and stores them in `msg/` spool.

- `bouncequeue`
  Same as `queue` for bounces. Stores bounces in `bounce/` spool.

# 2.3 Configuration files

- `/usr/local/sympa-stable/etc/sympa.conf`
  The main configuration file. See 7, page .

- `/usr/local/sympa-stable/etc/wwsympa.conf`
  WWSympa configuration file. See 1.2, page .

- `edit_list.conf`
  Defines which parameters/files are editable by owners. See 18.4.4, page .

- `topics.conf`
  Contains the declarations of your site's topics (classification in WWSympa), along with their titles. A sample is provided in the `sample/` directory of the sympa distribution. See 16.5, page .

- `auth.conf`
  Defines authentication backend organisation ( LDAP-based authentication, CAS-based authentication and sympa internal )

- `robot.conf`
  It is a subset of `sympa.conf` defining a Virtual host (one per Virtual host).

- `nrcpt_by_domain`
  This file is used to limit the number of recipients per SMTP session. Some ISPs trying to block spams rejects sessions with too many recipients. In such case you can set the 7.4.7 robot.conf parameter to a lower value but this will affect all smtp session with any remote MTA. This file is used to limit the number of receipient for some particular domains. the file must contain a list of domain followed by the maximum number of recipient per SMTP session. Example :

- `data_structure.version`
  This file is automatically created and maintained by Sympa itself. It contains the current version of your Sympa service and is used to detect upgrades and trigger maintenance procedures such as database structure changes.

           yohaa.com 3
           oal.com 5

#
2.4 Spools

See 7.6, page for spool definition in `sympa.conf`.

- `/usr/local/sympa-stable/spool/auth/`
  For storing messages until they have been confirmed.

- `/usr/local/sympa-stable/spool/bounce/`
  For storing incoming bouncing messages.

- `/usr/local/sympa-stable/spool/digest/`
  For storing lists' digests before they are sent.

- `/usr/local/sympa-stable/spool/mod/`
  For storing unmoderated messages.

- `/usr/local/sympa-stable/spool/msg/`
  For storing incoming messages (including commands).

- `/usr/local/sympa-stable/spool/msg/bad/`
  Sympa stores rejected messages in this directory

- `/usr/local/sympa-stable/spool/distribute/`
  For storing message ready for distribution. This spool is used only if the installation run 2 sympa.pl daemon, one for commands, one for messages.

- `/usr/local/sympa-stable/spool/distribute/bad/`
  Sympa stores rejected messages in this directory

- `/usr/local/sympa-stable/spool/task/`
  For storing all created tasks.

- `/usr/local/sympa-stable/spool/outgoing/`
  `sympa.pl` dumps messages in this spool to await archiving by `archived.pl`.

- `/usr/local/sympa-stable/spool/topic/`
  For storing topic information files.

#
2.5 Roles and privileges

You can assign roles to users (via their email addresses) at different level in Sympa ; privileges are associated (or can be associated) to these roles. We list these roles below (from the most powerful to the less), along with the relevent privileges.

## 2.5.1 (Super) listmasters

These are the persons administrating the service, defined in the `sympa.conf` file. They inherit the listmaster role in virtual hosts and are the default set of listmasters for virtual hosts.

## 2.5.2 (Robot) listmasters

You can define a different set of listmasters at a virtual host level (in the `robot.conf` file). They are responsible for moderating mailing lists creation (if list creation is configured this way), editing default templates, providing help to list owners and moderators. Users defined as listmasters get a privileged access to Sympa web interface. Listmasters also inherit the privileges of list owners (for any list defined in the virtual host), but not the moderator privileges.

## 2.5.3 Privileged list owners

The first defined privileged owner is the person who requested the list creation. Later it can be changed or extended. They inherit (basic) owners privileges and are also responsible for managing the list owners and editors themselves (via the web interface). With Sympa'd default behavior, privileged owners can edit more list parameters than (basic) owners can do ; but this can be customized via the `edit-list.conf` file.

## 2.5.4 (Basic) list owners

They are responsible for managing the members of the list, editing the list configuration and templates. Owners (and privileged owners) are defined in the list config file.

## 2.5.5 Moderators (also called Editors)

Moderators are responsible for the messages distributed in the mailing list (as opposed to owners who look after list members). Moderators are active if the list has been setup as a moderated mailing list. If no moderator is defined for the list, then list owners will inherit the moderator role.

## 2.5.6 Subscribers (or list members)

Subscribers are the persons who are member of a mailing list ; they either subscribed, or got added directly by the listmaster or via a datasource (LDAP, SQL, another list,...). These subscribers receive messages posted in the list (unless they have set the `nomail` option) and have special privileges to post in the mailing list (unless it is a newsletter). Most privileges a subscriber may have is not hardcoded in Sympa but expressed via the so-called authorization scenarios (see 13, page ).

Next: 3. Installing Sympa Up: Sympa Mailing Lists Management Software version Previous: 1. Presentation Contents Index