Hi TB0ne, thanks for your reply. I downloaded from linkedin the mailing info of my 24500 connections and would like to send them emails, as they are connected to me I doubt this would be considered spam because they know me. Besides it is a good mailing practice to include unsubscribe link information as mosr reputable companies do.
CentOS release 6.7 (Final)
Linux vps.server.com 2.6.32-042stab113.11 #1 SMP Fri Dec 18 17:32:04 MSK 2015 x86_64 x86_64 x86_64 GNU/Linux
Reference manual Quick Start:
================
This document is only a quick start.
For detailed installation / setup information, refer to the reference manual :
https://www.sympa.org/manual/
Installing Sympa from sources
=============================
(If you get sources from cvs tree first run: autoreconf -i)
Create a dedicated user sympa:sympa (and it's home directory) and run
./configure; make; make install. (you may have to use Gnu make).
Then check dependent modules
sympa_wizard.pl --check
This wizard will propose that you upgrade some CPAN module.
In this case you'll need to be root.
Requirements
============
Sympa requires other applications to run :
* perl and gcc
* suidperl or sudo (needed to run the web interface with sufficient privileges)
* sendmail or another MTA (postfix, exim and qmail supported)
* mysql or another relational database (postgresql, oracle and sybase supported)
* apache (or another web server)
* mod_fastcgi or mod_fcgid
* libxml 2 <http://xmlsoft.org/> is required by the LibXML Perl module;
* many perl modules : they are automatically installed at 'make' time
* some Perl modules require additionnal libraries :
- XML::LibXML requires libxml2 and libxml2 sources
- Net::SSLeay requires openssl sources
Setup
=====
1/ Sympa setup
You can edit sympa.conf (and wwsympa.conf) manually or run sympa_wizard.pl that will help
you create your configuration files.
2/ Syslog setup
Default for Sympa is to log in 'local1' (you can configure this in sympa.conf)
You should add the following line to your /etc/syslog.conf file :
local1.* /var/log/sympa
On Solaris (7 & 8) and True64, the '.*' level is not recognized in syslog.conf
You need to enumerate levels :
local1.info,local1.notice,local1.debug /var/log/sympa
3/ MySQL setup
Your MySQL version MUST be at least 4.1 in order to run correctly with Sympa.
db_xxx parameters in sympa.conf refer to your local database.
Sympa.pl should be able to create this database at runtime ; if it does not you'll
have to create it yourself with the provided create_db.xxx scripts and provide
read access to Sympa.
4/ Mail aliases setup
Sympa will use a dedicated alias file for its own mail aliases, default is /etc/mail/sympa_aliases.
You have to configure your MTA (sendmail/postfix,...) to use this file.
You should also create the main Sympa aliases ; they will look like this :
sympa: "| /home/sympa/bin/queue
sympa@my.domain.org"
listmaster: "| /home/sympa/bin/queue
listmaster@my.domain.org"
bounce+*: "| /home/sympa/bin/bouncequeue
sympa@my.domain.org"
sympa-request: postmaster
sympa-owner: postmaster
(Later mailing lists aliases will be installed automatically by Sympa)
5/ Web setup
You should add these lines to your httpd.conf file :
Alias /static-sympa /home/sympa/static_content
ScriptAlias /sympa /home/sympa/bin/wwsympa-wrapper.fcgi
<IfModule mod_fcgid.c>
AddHandler fcgid-script .fcgi
</IfModule>
To login with listmaster privileges, you should login on the web
interface with the email address you declared in sympa.conf. To get an
initial password just hit the "First login" button.
Other info from full sympa manual:
Prerequisites
Sympa installation and configuration are relatively easy tasks for experienced UNIX users who have already installed Perl packages.
Note that most of the installation time will involve putting in place the prerequisites, if they are not already on the system. No more than a handful of ancillary tools are needed, and on recent UNIX systems their installation is normally very straightforward. We strongly advise you to perform installation steps and checks in the order listed below; these steps will be explained in detail in later sections.
installing a RDBMS
MySQL (version 4.1.1 minimum) or MariaDB
Oracle
PostgreSQL (7.4 minimum)
SQLite (3.x)
Sybase
creating Sympa's Database. Please refer to (Sympa and its database).
installing an MTA (Message Transfer Agent): sendmail, postfix, qmail or exim
installing a web server (Apache being the most commonly used)
installing libxml 2, required by the LibXML Perl module;
installing the gettext-devel library;
installing CPAN CPAN (Comprehensive Perl Archive Network) modules;
creation of a dedicated UNIX user.
System requirements
You should have a UNIX system that is more or less recent in order to be able to use Sympa. In particular, it is necessary that your system have an ANSI C compiler (in other words, your compiler should support prototypes).
Sympa has been installed and tested at least on the following systems, therefore you should not have any special problems:
Linux (various distributions);
FreeBSD 2.2.x and 3.x;
NetBSD;
Digital UNIX 4.x;
Solaris 2.5 and 2.6;
AIX 4.x;
HP-UX 10.20.
For remarks regarding problems specific to your OS, please refer to the FAQ.
Finally, most UNIX systems are now supplied with an ANSI C compiler; if this is not the case, you can install the gcc compiler.
To complete the installation, you should make sure that you have a sufficiently recent release of the sendmail MTA. You may also use postfix, courier, exim or qmail.
Installing Perl and CPAN modules
To be able to use Sympa you must have release 5.8 or later of the Perl language, as well as several CPAN modules.
After make, the sympa_wizard.pl --check may be run run to check for installed versions of required Perl and CPAN modules. If a CPAN module is missing or out of date, this script may install it for you.
You can also download and install CPAN modules yourself. You will find a current release of the Perl interpreter in the nearest CPAN archive. If you do not know where to find a nearby site, use the CPAN multiplexer; it will find one for you.
Required CPAN modules
The following CPAN modules required by Sympa are not included in the standard Perl distribution. At make time, Sympa will prompt you for missing Perl modules and will attempt to install the missing ones automatically; this operation requires root privileges.
Because Sympa features evolve from one release to another, the following list of modules might not be up to date:
Archive::Zip
CGI
Class::Singleton
DateTime::Format::Mail
DateTime::TimeZone
DBI
Digest::MD5
Email::Simple
Encode
File::Copy::Recursive
File::NFSLock
HTML::FormatText
HTML::StripScripts::Parser
HTML::TreeBuilder
IO::File
IO::Scalar
List::Util::XS
Locale::Messages
LWP::UserAgent
Mail::Address
MHonArc
MIME::Base64
MIME::Charset
MIME::EncWords
MIME::Lite::HTML
MIME::Tools
Net::CIDR
Net:
NS
Proc::ProcessTable
Template
Term::ProgressBar
Text::LineFold
Time::HiRes
URI::Escape
XML::LibXML
Since release 2, Sympa requires an RDBMS to work properly. It stores user subscriptions and preferences in a database. Sympa is also able to extract user data from an external database. These features require that you install database-related Perl libraries. This includes the generic Database interface (DBI) and a Database Driver for your RDBMS (DBD): DBD (DataBase Driver) related to your RDBMS (e.g. DBD-mysql for MySQL);
If you are using Perl earlier than 5.16.0, Unicode::CaseFold is required.
File::Temp should be version 0.22 or higher.
You also might want to install additional modules for optional features:
If you want to use web interface (WWSympa), use of FastCGI is strongly recommended. You need to install Perl FastCGI module:
FCGI.
If you plan to interface Sympa with an LDAP directory to build dynamical mailing lists, you need to install Perl LDAP libraries:
Net::LDAP (perlldap).
If you want to Download Zip files of list's Archives, you'll need to install the Perl Module for Archive Management:
Archive::Zip.
SOAP-Lite is required if you are running the Sympa SOAP server.
Optional features related to DKIM signature needs mail:
KIM.
Mail:
KIM (0.39 or better is required)
Net:
NS
For S/MIME decryption/encryption/signing/verification,
Crypt::SMIME (0.15 or better is required)
Crypt::OpenSSL::X509
... and so on.
Creating a UNIX user
The final step prior to installing Sympa: create a UNIX user (and if possible a group) specific to the program. Most of the installation will be carried out with this account. We suggest that you use the name sympa for both user and group.
Numerous files will be located in the Sympa user's login directory. Throughout the remainder of this documentation we shall refer to this login directory as /home/sympa.
Creating the database
See creating_a_sympa_database
Compilation and installation
Before using Sympa, you must customize the sources in order to specify a small number of parameters specific to your installation.
First, extract the sources from the archive file, for example in the ~sympa/src/ directory: the archive will create a directory named such as sympa-6.2.0/ where all the useful files and directories will be located. A sample/ directory containing a few examples of configuration files; a po/ directory where multilingual messages are stored; and, of course, the src/sbin/ directory for the mail robot and the src/cgi/ directory for the web interface.
Example:
$ gzip -dc sympa-6.2.0.tar.gz | tar xf -
$ cd sympa-6.2.0
Now you can run the installation process:
$ ./configure
$ make
$ make install
configure will build the Makefile; it recognizes the following command-line arguments:
--prefix=PREFIX, Sympa home directory (default /home/sympa);
--bindir=DIR, user executables (default /home/sympa/bin);
--sbindir=DIR, system admin executables (default /home/sympa/sbin);
--libexecdir=DIR, program executables (default /home/sympa/libexec);
--sysconfdir=DIR, read-only single-machine data (default /home/sympa/etc);
--datadir=DIR, read-only architecture independent data (default /home/sympa/share);
--mandir=DIR, man documentation (default /home/sympa/share/man);
--enable-fhs, use standard FHS files and directories locations and naming (default is no);
--with-confdir=DIR, Directory of Sympa main configuration file (sympa.conf) (default /etc/sympa);
--with-cgidir=DIR, CGI scripts (default /home/sympa/bin);
--with-localedir=DIR, Internationalization catalogues directory (default /home/sympa/locale);
--with-docdir=DIR, Documentations;
--with-expldir=DIR, list data directory (default /home/sympa/list_data);
--with-spooldir=DIR, application spool directory (default /home/sympa/spool);
--with-initdir=DIR, install System V init script (default /etc/rc.d/init.d);
--without-initdir, do not install System V init script;
This option was introduced by Sympa 6.2.
--with-smrshdir=DIR, install symbolic links for Sendmail smrsh (default /etc/smrsh);
--without-smrshdir, do not install symbolic links for Sendmail smrsh;
These two were introduced by Sympa 6.2.
--with-lockdir=DIR, lock files (default /home/sympa/var/lock/subsys);
--with-piddir=DIR, .pid files (default /home/sympa/var/run);
--with-modulesdir=DIR, Perl modules file installed with Sympa (default /home/sympa/bin);
--with-defaultdir=DIR, default configuration files (scenarios and templates also) (default /home/sympa/default);
--with-scriptdir=DIR, application scripts (default /home/sympa/bin);
--with-staticdir=DIR, static data (default /home/sympa/static_content);
--with-perl=FULLPATH, set full path to Perl interpreter;
--with-user=LOGIN, set Sympa user name (default sympa);
--with-group=LOGIN, set Sympa group name (default sympa);
--with-aliases_file=ALIASFILE, set aliases file to be used by Sympa (default /etc/mail/sympa_aliases). Set to none to disable alias management (you can overwrite this value at runtime giving its value in sympa.conf);
As of Sympa 6.1.18, this option was renamed from %%–with-sendmail_aliases%%.
--with-virtual_aliases=ALIASFILE, set postfix virtual file to be used by Sympa (default /etc/mail/sympa_virtual); this is used by the alias_manager.pl script;
As of Sympa 6.1.18, this option was removed.
--with-newaliases=FULLPATH, set path to sendmail newaliases command (default /usr/bin/newaliases);
--with-newaliases_arg=ARGS, set arguments to newaliases command (default NONE); this is used by the alias_manager.pl script;
--with-postmap=FULLPATH, set path to postfix postmap command (default /usr/sbin/postmap);
--with-postmap_arg=ARGS, set arguments to postfix postmap command (default NONE);
As of Sympa 6.1.18, this option was removed.
--with-postalias=FULLPATH, set path to postfix postmap command (default /usr/sbin/postalias);
This option was introduced by Sympa 6.1.18.
--with-makemap=FULLPATH, set path to postfix postmap command (default /usr/bin/makemap);
This option was introduced by Sympa 6.1.18.
--without-smtpc won't compile nor install sympa_smtpc SMTP client.
make will build a few binaries (queue, bouncequeue, familyqueue and sympa_newaliases-wrapper).
make install does the installation job. It recognizes the following option:
DESTDIR, can be set in the main Makefile to install sympa in DESTDIR/DIR (instead of DIR). This is useful for building RPM and DEB packages.
Since version 3.3 of Sympa, colors are sympa.conf parameters (see color parameters).
Since version 6.2, default location of sympa.conf was moved to /etc/sympa, instead of /etc. If you are upgrading earlier version of Sympa, move existing sympa.conf and wwsympa.conf to right place before running make install.
If everything goes smoothly, the /home/sympa/bin/ directory (or appropriate location you configured with --with-*dir options) will contain various Perl programs as well as the queue binary. You will remark that this binary has the set-uid-on-exec bit set (owner is the sympa user): this is deliberate, and necessary to have Sympa run correctly.
Choosing directory locations
All directories are defined in sympa.conf file, which are read by Sympa at runtime. For the default organization of directories, please refer to Organization.
It would, of course, be possible to disperse files and directories to a number of different locations. However, we recommend storing all the directories and files in the sympa user's login directory.
These directories must be created manually. You can use restrictive authorizations if you like, since only programs running with the sympa account will need to access them.
Robot aliases
See Robot aliases.
Web setup
See Web server setup
Logs
Sympa keeps a trace of each of its procedures in its log file. However, this requires configuration of the syslogd daemon. By default Sympa will use the local1 facility (syslog parameter in sympa.conf). WWSympa's login behavior is defined by the log_facility parameter (by default the same facility as Sympa).
To this end, a line must be added in the syslogd configuration file (/etc/syslog.conf). For example:
local1.* /var/log/sympa
Then reload syslogd.
Depending on your platform, your syslog daemon may use either a UDP or a UNIX socket. Sympa's default is to use a UNIX socket; you may change this behavior by editing sympa.conf's ''log_socket_type'' parameter. You can test log feature by using testlogs.pl.
If your system is running syslog-ng, add these lines to your syslog-ng.conf (in some cases, syslog-ng.conf.in):
destination sympa { file ("/var/log/sympa") ; };
log { source(src); filter(f_sympa); destination(sympa); };
filter f_sympa { facility(local1) and match('sympa'); };
and restart syslog.
And then, many syslog server softwares do not create new log file automatically. You might want to run e.g.:
# touch /var/log/sympa
# chmod 640 /var/log/sympa
What server configuration?
Below are some practical informations to help to define your mailing list server configuration.
These figures are based on the CRU mailing list service; it has the following caracteristics:
1100 mailing lists,
290.000 list members
some very active and old mailing lists; it explains the size of the web archives.
Disk space
/home/sympa/list_data/ (5Gb): includes * list config files and old list config.xx files
a few other small files (msg_count, stats, *.lock)
shared documents, when the feature has been actived for one list. This can become huge if list members makes heavy use of this file repository, see
http://www.sympa.org/manual/shared-documents
/home/sympa/spool/ (1Gb):
/home/sympa/bounces (500Mb on our server) ; it contains archived non delivery reports
/home/sympa/archive/ (62Gb), but we have a couple of very old and active mailing lists
-----
Install ezmlm-0.53
Like any other piece of software (and information generally), ezmlm
comes with NO WARRANTY.
Things you have to decide before starting:
* Where programs will be installed, normally /usr/local/bin/ezmlm. To
change this directory, edit conf-bin now.
* Where man pages will be installed, normally /usr/local/man. To change
this directory, edit conf-man now.
* Where the qmail home directory is, normally /var/qmail. To change this
directory, edit conf-qmail now.
How to install:
1. Compile the programs:
% make
2. Format the man pages:
% make man
3. Install the programs and man pages:
# make setup
How to test:
4. Make sure ezmlm-make is in your path. Create a mailing list:
% ezmlm-make ~/testlist ~/.qmail-testlist me-testlist host
Replace ``me'' and ``host'' with your e-mail address.
5. Subscribe yourself to the list manually:
% ezmlm-sub ~/testlist me@host
6. Send a message to the list:
% echo subject:testing | qmail-inject me-testlist@host
You should receive a copy of the message at me@host.
7. View the list membership:
% ezmlm-list ~/testlist
You should see just one line, containing your address.
8. Unsubscribe yourself through e-mail:
% qmail-inject me-testlist-unsubscribe@host < /dev/null
When you receive the confirmation number, reply to complete your
unsubscription. Use ezmlm-list to check that the list is empty.
9. Retrieve the first message from the archive:
% qmail-inject me-testlist-get.1@host < /dev/null
You should receive a copy of your subject:testing message.
That's it! To report success:
% ( echo 'First M. Last'; cat `cat SYSDEPS` ) \
| mail
djb-qst@koobera.math.uic.edu
Replace First M. Last with your name.
-----
Install ezlml-idx-7.22 readme on qmail-qmqpc folder
(c) 1999, Frederik P. Lindberg
Use under GPL
No warranties, but then again the patch is so small that it'si
obvious what it does.
This patch patches qmail-qmqpc.[c8] to allow specification of serves on
the command line. This allows the individual process to control the servers
used, rather than the central /var/qmail/control/qmqpservers. This offers
a simple means to extend ezmlm servers. The patch is for qmail-1.03.
INSTALLATION
1. Go to your qmail-1.03 build directory and unpack the archive.
% cd qmail-1.03
% tar -zxf qmail-qmqpc.tar.gz
2. Apply the patch:
% patch < qmqp/qmail-qmqpc.diff
3. Rebuild qmail:
% make it man
4. Reinstall qmail. (You can also manually install qmail-qmqpc, qmail-qmqpc.0,
and qmail-qmqpc.8 with correct permissions. In this case, there is no
need to stop/start qmail.):
% su
# [stop qmail]
# make setup check
# [start qmail]
# exit
%
5. Test
a. Put a QMQP server IP address into DIR/qmqpservers of an
ezmlm-idx>=0.33 list. Make sure it is different from the ones
in /var/qmail/control/qmqpservers. Also, you should be subscribed
to the list.
b. Send a message to the list.
c. Look at the message headers. There should be a header showing that
the message passed the specified QMQP server. If the message failed
to arrive, the most likely cause is a failure of communication with
the server (network/setup problem). Mail logs will help. If the
message arrived via std qmail, the list is not set up with a recent
enough version of ezmlm-idx. ezmlm-make -v should show the version.
6. [optional] Send comments to
lindberg@id.wustl.edu.
qpc-Unpack the archive:
%
-----
install ezmlm-idx-7.2.2 on qmail-verh-0.07 folder
(c) 1999, Frederik P. Lindberg
Use under GPL
No warranties, but then again the patch is so small that it'si
obvious what it does.
This patch patches qmail-qmqpc.[c8] to allow specification of serves on
the command line. This allows the individual process to control the servers
used, rather than the central /var/qmail/control/qmqpservers. This offers
a simple means to extend ezmlm servers. The patch is for qmail-1.03.
INSTALLATION
1. Go to your qmail-1.03 build directory and unpack the archive.
% cd qmail-1.03
% tar -zxf qmail-qmqpc.tar.gz
2. Apply the patch:
% patch < qmqp/qmail-qmqpc.diff
3. Rebuild qmail:
% make it man
4. Reinstall qmail. (You can also manually install qmail-qmqpc, qmail-qmqpc.0,
and qmail-qmqpc.8 with correct permissions. In this case, there is no
need to stop/start qmail.):
% su
# [stop qmail]
# make setup check
# [start qmail]
# exit
%
5. Test
a. Put a QMQP server IP address into DIR/qmqpservers of an
ezmlm-idx>=0.33 list. Make sure it is different from the ones
in /var/qmail/control/qmqpservers. Also, you should be subscribed
to the list.
b. Send a message to the list.
c. Look at the message headers. There should be a header showing that
the message passed the specified QMQP server. If the message failed
to arrive, the most likely cause is a failure of communication with
the server (network/setup problem). Mail logs will help. If the
message arrived via std qmail, the list is not set up with a recent
enough version of ezmlm-idx. ezmlm-make -v should show the version.
6. [optional] Send comments to
lindberg@id.wustl.edu.
qpc-Unpack the archive:
%