OpenPec realizes a daemons system which gets in emails from a MTA, produces if need be other emails that it handles back for outgoing on a local channel (LMTP server) or external (generally to the same MTA).
GET THE SOFTWARE
The package can be retrieved from:
After downloading, explode it in a new directory and read README file
REQUIREMENTS
Linux distributions on which OpenPec has been tested:
* CentOS 4.2 / 4.3
* RedHat ES
Needed modules:
* Crypt::SMimeEngine 0.01
* Net::Server 0.94
* Sys::SigAction 0.06
* MailTools 1.74
* Net::SMTP 2.26
* Unix::Syslog 0.99
* IO::Stringy 2.100
* MIME-Base64 3.07
* MIME::Tools 5.411
* IO::File
* Net::LDAP 0.26
* File::Basename 2.06
* Storable 2.08
* Fcntl
* Time-HiRes 1.49
* libwww-perl-5.805
INSTALLATION
- Create a new group dedicated to OpenPec execution.
It shouldn't be a system group or be used by other mailers (e.g. dopec).
- Create an account for OpenPec execution. It shouldn't be a system user or an existing user (e.g. dopec)
- If you didn't before, create a new directory and explode the dowloaded package.
- Proceed typing what follows:
perl Makefile.PL
make test
make install
INSTALLING FROM CVS
- Create a new group dedicated to OpenPec execution.
It shouldn't be a system group or be used by other mailers (e.g. dopec).
- Create an account for OpenPec execution. It shouldn't be a system user or an existing user (e.g. dopec)
- Create a specifical directory on the installation server:
(e.g. /home/dopec/Opec)
- Verify that the user you created owns writing and reading rights for the above directory.
- Dowload the last version on CVS.
Autenticate with:
cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/openpec login
when it prompts for password, simply strike enter;
download the last sources with:
cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/openpec co -P
- Copy the configuration file (opec.conf) in /etc
(es. cp /home/dopec/Opec/etc/opec.conf /etc)
CONFIGURATION
OpenPec configuration is a single file called opec.conf.
opec.conf contains normal Perl code interpreted by the Perl interpreter itself, so it is needed to follow the correct syntax.
To reduce security risks it is recommended to check that the file can't be changed by everyone.
Edit /etc/opec.conf file and verify/change the single entries as illustrated into the file
FIRST EXECUTION
The syntax is the following:
opec [ -c config-file ] ( [ start ] | stop | debug )
then if everything is correctly configured, change your user to root and type
opec debug
> >>>Starting - opec200 at miodominio.it - version: opec200
> >>>Starting - opec200 at miodominio.it - version: opec200
prolongTimer in ldap-getmailreceipt: tempo rimanente = 0 s
prolongTimer in ldap-getmailreceipt-post: tempo rimanente = 1000 s
WARNING: CRL inesistente, generarla quanto prima
2006/09/22-17:08:16 Opec (type Net::Server::PreForkSimple) starting! pid(22023)
Binding to TCP port 10024 on host *
Binding to UNIX socket file /tmp/opec_scheduler.sck using SOCK_STREAM
Setting gid to "603 603"
Setting uid to "603"
miodominio.it opec200[22026]: Nuova connessione LDAP verso 192.168.2.222
miodominio.it opec200[22026]: PING LDAP 192.168.2.222 Ok
If you hadn't errors, you can proceed to the real start:
opec start
Set the environment variable PERLLIB as the same opec directory.
(BASH example: export PERLLIB=/home/dopec/Opec)
The execution syntax is the following:
opec [ -c config-file ] ( [ start ] | stop | debug )
so if everything is well configured, change your user to root and type
perl opec debug
in this way you will load only a daemon and you will display every log command on STDERR (they will be printed on your screen).
Afterwards you can try:
perl opec start
to start as many daemons as previously specified in the configuration file.
TESTS
The first test you would take is check the OpenPEC2 listening port (with the default port settings):
# telnet localhost 10024
Trying 127.0.0.1...
Connected to localhost.localdomain (127.0.0.1).
Escape character is '^]'.
220 [127.0.0.1] SMTP Opec service ready
For complete tests you may use the mailer.pl utility delivered with the distribution
|