Giter Club home page Giter Club logo

sympa-community.github.io's People

Contributors

benjaminlefoul avatar beuc avatar c-holtermann avatar davidprevot avatar dgeo avatar dverdin avatar ekaitz-zarraga avatar gonzalo avatar grizzlyfute avatar ikedas avatar jaakristioja avatar jrlevine avatar ldidry avatar mikaelurankar avatar mpkut avatar nivadis avatar qosobrin avatar racke avatar salaun-urennes1 avatar schplurtz avatar vinc17fr avatar waybeforenow avatar xavierba avatar yent avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

sympa-community.github.io's Issues

sympa_transport file defined in postfix configuration page but not used

In https://github.com/sympa-community/sympa-community.github.io/blob/master/manual/install/configure-mail-server-postfix.md -> Virtual domain setting -> Initial setting the documentation guides users to create the file $SYSCONFDIR/sympa_transport, change its access permissions and owner but the file never seems to be used later in the documentation. Meanwhile, the same page also guides users to create a file with a similar name $SYSCONFDIR/transport.sympa that is used along the documentation.

I wonder if references to $SYSCONFDIR/sympa_transport are an error and are supposed to be changed to $SYSCONFDIR/transport.sympa or are OK and should be left as they are.

Thank you very much in advance.
Best regards.

Multiple virtual hosts with nginx

[EDIT] This proposal has been discarded.

Current documentation on nginx doesn't consider the case with multiple virtual hosts.

As WWSympa recognizes virtual host according to SERVER_NAME environment variable, it should be tweaked as:

server {
    listen      80;
    #server_name localhost.localdomain;  # Change it!
    server_name vhost1.example.org vhost2.example.com;            ← If multiple names given,

    location /sympa {
        include       /etc/nginx/fastcgi_params;
        fastcgi_pass  unix:$PIDDIR/wwsympa.socket;

        # If you changed wwsympa_url in sympa.conf, change this regex too!
        fastcgi_split_path_info ^(/sympa)(.*)$;
        fastcgi_param SCRIPT_FILENAME $EXECCGIDIR/wwsympa.fcgi;
        fastcgi_param PATH_INFO $fastcgi_path_info;
        fastcgi_param SERVER_NAME $host;                          ← This should be added.
    }

    location /static-sympa {
        alias $STATICDIR;
    }
}

In above, I added fastcgi_param SERVER_NAME $host; line.

If this change won't invite inconvenience such as security risk, I'll update the documentation.

Add details on manual/customize/archives.md

I suggest a patch attached to documentation on archives. Indeed, when exporting archives from the web, we cannot guess how to use the zip file and push these archives to a list.

The attached patch adds a paragraph with the trick: rename directories to yyyy-mm/arctxt.

Regards,
archives.patch.md

list created by a perl script - problem of no_owner_defined()

With Sympa version 6.2.32, I was able to create a list with a perl script which create a folder named as the list, an in this folder an info file and a config file.

After that, I ran sympa.pl with the options --reload_list_config and --sync_list_db

As I have a lot of lists to create each year, this method is very fast but now whith sympa 6.2.36, I get the error : Sympa::List::set_status_error_config#464 The list Sympa::List is set in status error_config: no_owner_defined().

Even if there is a directive "owner_include" in the config file.

What should I do to be able to continue to create my lists with that method ?

Thanks,

"Bug" in documentation - postfix: single domain settings

This report is about a "bug" in the Sympa documentation and refers to page https://sympa-community.github.io/manual/install/configure-mail-server-postfix.html
=> "Single domain setting" => "3. Edit Postfix main.cf":

alias_database = (...existing parameter value...), hash:$SYSCONFDIR/aliases.sympa.postfix

should read

alias_database = (...existing parameter value...), hash:$SYSCONFDIR/aliases.sympa.postfix, hash:$SYSCONFDIR/sympa_transport

Without including hash:$SYSCONFDIR/sympa_transport (as on the present documentation page), all incoming messages to any of the mailing lists will be rejected with "Recipient address rejected: User unknown in local recipient table". With hash:$SYSCONFDIR/sympa_transport on the alias_database line, incoming messages are correctly distributed to their respective mailing lists.

SOAP API services page is incomplete

The page of SOAP API is incomplete.

Info service example
Add fullReview service

I've created a Pull Requet #98

Other services are not documented: getDetails, setDetails, setCustom, checkCookie and getUserEmailByCookie

List of lists related to Sympa community

As we discussed on irc meeting, we will add sympa mailing lists and descriptions to doc.

Below is current list of lists related to Sympa community (initially taken from category informatique/sympa on listes.renater.fr and added some).

  • Lists no longer used are marked.

  • If I miss anything, please point it out.


Some templates cannot be overridden in $EXPLDIR/list

sendpasswd.tt2 cannot be overrided in $EXPLDIR/list or $EXPLDIR/robot/list.
The documentation is not clear about that and just explains the general mechanism of conf/template hierarchy, from more specific to less specific.
I have not investigated if any other template could be in the same case.

There is a related issue with auth.conf which does not respect the conf hierarchy as well:
sympa-community/sympa#432

OpenSMTPd on OpenBSD : Integration with Current Syntax and Notes on OpenBSD

OpenSMTPd's Syntax has changed significantly since the documentation for Sympa was posted. The change to OpenSMTPd appeared on OpenBSD's release of 6.4, I haven't tracked down the OpenSMTPd version for this.

This took me longer than I'd like to admit, but I'm entirely new to Sympa. I have a basically working config for Current versions of OpenSMTPd integrated with Sympa. Much of the original documentation can be left alone, just the OpenSMTPd config sections needs this added for version:

listen on *

table sympa_domains file:/var/sympa/sympa_domains
table sympa db:/var/sympa/etc/sympa_domain_aliases.db

action "sympa_deliver"  maildir virtual <sympa>

match from any		for domain <sympa_domains> action "sympa_deliver"

The for 'domain' section is an added component since the old config on Sympa's documentation. This is also completely barebones, the "listen on" section can be narrowed to an IP or interface, and should be extended to use pki/tls, filters and proc-execs for rspamd and more. Refer to the original OpenSMTPd documentation for this, and Poolp's articles.

Some notes on OpenBSD that can be added somewhere in the documentation. This is all for the port installable via "pkg_add sympa":

$SYSCONFDIR = /var/sympa
$LIBEXECDIR = /usr/local/libexec/sympa/
Sympa.conf is stored in /var/sympa/sympa.conf

Hope this can be tweaked and added as needed, and that it helps someone else along.

Call for review: Documentation on S/MIME support

I rewrote documentation of S/MIME support. Definitely it contains many typos, wrong wordings, insufficient descriptions and so on. Therefore I want to call for review by fellows.

Comments, suggestions and specific changes are very appreciated.

The draft:
https://sympa-community.github.io/manual/customize/smime.html

Review page:
#4

Summary of changes

  • Documentation on S/MIME support was rewritten from scratch: Contents of older documentation are never borrowed. Because it has been written in the last century and we could not get the permission to reuse it under new license.

  • Update of prerequisites was followed: openssl(1) is no longer required, and so on.

  • Description of HTTPS client certificate authentication was omitted. Because it does not share configuration and prerequisites with S/MIME function. It is described in separate chapter (page).

Resources

Exim 4 configuration changes following taint checking in 4.96

As of Exim 4.96 it is no longer possible to rely on $local_part and $domain in received email as they are considered tained. Both the local_part and domain must be checked before they can be used and after a successful match are available de-tainted in $local_part_data and $domain_data.

The Transport change is from:

command = /usr/lib/sympa/bin/queue ${local_part}\@$domain

to

command = /usr/lib/sympa/bin/queue "${local_part_data}@$domain_data"

My configuration uses Postgres lookups instead of aliases, YMMV.

Sympa aliases

ALIAS_LIST_DOMAINS = SELECT robot_list \
    FROM list_table \
    WHERE robot_list='${quote_pgsql:$domain}';
ALIAS_LIST_COMMAND_LOCAL_PARTS = \
    SELECT 'sympa' \
    FROM list_table \
    WHERE robot_list='${quote_pgsql:$domain}';
ALIAS_LIST_LOCAL_PARTS = \
    SELECT name_list \
    FROM list_table \
    WHERE robot_list='${quote_pgsql:$domain}' \
    AND name_list='${quote_pgsql:$local_part}';
ALIAS_LIST_BOUNCE_LOCAL_PARTS = \
    SELECT '${quote_pgsql:$local_part}' AS local_parts \
    FROM list_table \
    WHERE robot_list='${quote_pgsql:$domain}' \
    AND '${quote_pgsql:$local_part}' LIKE 'bounce+%';
ALIAS_LIST_DOMAIN = SELECT count(*) \
    FROM list_table \
    WHERE robot_list='${quote_pgsql:$domain}';
ALIAS_SYMPA_LIST = SELECT count(*) \
    FROM list_table \
    WHERE robot_list='${quote_pgsql:$domain}' \
    AND name_list='${quote_pgsql:$local_part}';

Routers

sympa_list_command:
  driver = accept
  domains = ${lookup pgsql{ALIAS_LIST_DOMAINS}}
  local_parts = ${lookup pgsql{ALIAS_LIST_COMMAND_LOCAL_PARTS}}
  retry_use_local_part
  transport = sympa_queue_transport

sympa_list:
  driver = accept
  domains = ${lookup pgsql{ALIAS_LIST_DOMAINS}}
  local_parts = ${lookup pgsql{ALIAS_LIST_LOCAL_PARTS}}
  transport = sympa_queue_transport

listrequest:
  driver = accept
  local_part_suffix = -request
  domains = ${lookup pgsql{ALIAS_LIST_DOMAINS}}
  local_parts = ${lookup pgsql{ALIAS_LIST_LOCAL_PARTS}}
  retry_use_local_part
  transport = sympa_queue_transport

listeditor:
  driver = accept
  local_part_suffix = -editor
  domains = ${lookup pgsql{ALIAS_LIST_DOMAINS}}
  local_parts = ${lookup pgsql{ALIAS_LIST_LOCAL_PARTS}}
  retry_use_local_part
  transport = sympa_queue_transport

listsubscribe:
  driver = accept
  local_part_suffix = -subscribe
  domains = ${lookup pgsql{ALIAS_LIST_DOMAINS}}
  local_parts = ${lookup pgsql{ALIAS_LIST_LOCAL_PARTS}}
  retry_use_local_part
  transport = sympa_queue_transport

listunsubscribe:
  driver = accept
  local_part_suffix = -unsubscribe
  domains = ${lookup pgsql{ALIAS_LIST_DOMAINS}}
  local_parts = ${lookup pgsql{ALIAS_LIST_LOCAL_PARTS}}
  retry_use_local_part
  transport = sympa_queue_transport

listowner:
  driver = accept
  local_part_suffix = -owner
  domains = ${lookup pgsql{ALIAS_LIST_DOMAINS}}
  local_parts = ${lookup pgsql{ALIAS_LIST_LOCAL_PARTS}}
  retry_use_local_part
  transport = sympa_queue_transport

listbounce:
  driver = accept
  local_part_prefix = bounce+
  domains = ${lookup pgsql{ALIAS_LIST_DOMAINS}}
  local_parts = ${lookup pgsql{ALIAS_LIST_BOUNCE_LOCAL_PARTS}}
  retry_use_local_part
  transport = sympa_bounce_queue_transport

Transports

sympa_queue_transport:
  driver = pipe
  rcpt_include_affixes = true
  command = SYMPA_QUEUE "${local_part_data}@$domain_data"
  user = sympa
  group = sympa
  return_fail_output
  return_path_add

sympa_bounce_queue_transport:
  driver = pipe
  command = SYMPA_BOUNCE "${local_part_data}@$domain_data"
  user = sympa
  group = sympa
  return_fail_output
  return_path_add

https://www.sympa.community/manual/install/configure-mail-server-exim4.html

Services does not start on RHEL8

Hi
I'm new to sympa and I've been working on installing sympa on RHEL8 from source code for a couple of days, but the services (wwsympa & sympa) does not started successfully yet.
Can anyone give me some advices to solve this?

OS:RHEL8
DB; SQLite
MTA: Postfix
Web: Nginx

systemctl start wwsympa.service
Mar 10 08:00:31 i-0441b8356be4df60a systemd[1]: wwsympa.service: Main process exited, code=exited, status=2/INVALIDARGUMENT Mar 10 08:00:31 i-0441b8356be4df60a systemd[1]: wwsympa.service: Failed with result 'exit-code'. Mar 10 08:00:32 i-0441b8356be4df60a systemd[1]: wwsympa.service: Service RestartSec=100ms expired, scheduling restart. Mar 10 08:00:32 i-0441b8356be4df60a systemd[1]: wwsympa.service: Scheduled restart job, restart counter is at 1.

systemctl start sympa.service
Mar 10 08:20:48 i-0441b8356be4df60a sympa_msg[4438]: err main::#221 > Sympa::Spindle::new#42 > Sympa::Spool::new#65 > Sympa::Spool::_create#89 DIED: Cannot create /usr/local/var/spool/sympa/msg/bad: Permission denied at /usr/local/share/sympa/lib/Sympa/Spool.pm line 89.

Apache documentation misses access control to static files

I have just finished a fresh sympa installation and, when I first tried the web interface, it failed serving css, icons and any other static files due to "access denied" errors. I used the configuration settings explained in https://github.com/sympa-community/sympa-community.github.io/blob/master/manual/install/configure-http-server-apache.md

I implemented access controls to the static-sympa directory and they worked fine. I think these settings should be added to that installation manual page:

<Directory $STATICDIR>
    Require all granted
</Directory>

On a similar wave the same could be said for the Apache 2.2 configuration file (though I haven't tried it):

<Directory $STATICDIR>
    Order deny,allow
    Allow from all
</Directory>

On a different matter, but also related to this page, I do not see the point in showing settings that need to be changed immediately. I think this block in the Apache 2.4 configuration:

<Location /sympa>
    SetHandler fcgid-script

    # Don't forget to edit lines below!
    Require all denied
    #Require all granted
</Location>

should be changed to something like this:

<Location /sympa>
    SetHandler fcgid-script

    # Interchange the commented line below to restrict access
    #Require all denied
    Require all granted
</Location>

and the same could be said about the Apache 2.2 configuration.

A page is needed for contact info, mailing lists, issue tracker etc.

The old doc has the drop down "Doc & Support". There's not much "support" on the new site yet.

The new site needs to cover the "mailing lists" link and "technical support" link somehow, and there should be a link to the sympa github for reporting bugs. On the old site, "mailing lists" is a link to renater's own sympa, that has a lot of mailing lists. It would probably be better on the new site to have a local page with a subset of the available lists, with a short description why that list should be subscribed to: for instance "sympa-announce" should be high priority because that's where the security-advisories go currently! See also sympa-community/sympa#271

Setting up Expiry date for Sympa Mailing lists

Hi

Just wanted to know whether we can set an expiry date to Sympa mailing lists ?

Currently users can create a mailing list but the main issue is we have to continously monitor whether the list is still in use after couple of years.

So it would be ideal if we can set an expiry date at the time of list creation so that we donot have to monitor it.

If any config changes are required then do let me know where to change them .

Many Thanks

Sympa Amazon AMI

Hi, does anyone have a functional instance of Sympa on an Amazon AMI that they would be willing to share? Thanks!

documentation issue postfix

configure-mail-server-postfix.md

mentions link to sendmail and not postfix, please check and fix document for errors?

sql query for sympa integration in postfix

Hello, I find it much more convenient to query the sympa db from my postfix instance (with a dedicated sql readonly user) than maintaining a transport map.
For instance query for the recipient check parameter
query = select 'OK' from list_table where '%u' in (name_list,concat(name_list,'-request'),concat(name_list,'-editor'),concat(name_list,'-subscribe'),concat(name_list,'-unsubscribe')) and status_list = 'open' and robot_list='%d';

Following the same idea the transport.cf can be done to transport to the sympa binary.

AWS AMI of Sympa

Hi, does anyone have a functional instance of Sympa on an Amazon AMI that they would be willing to share? Thanks!

on fresh install, $SYSCONFDIR and /usr/local/share/sympa/[abl]* should be made writable by sympa

After a fresh install of sympa 6.2.54 on FreeBSD 11.3, the directory /usr/local/etc/sympa
($SYSCONFDIR) was owned by root:wheel. This should be changed to root:sympa, 775,
so that sympa may modify the aliases.sympa.sendmail file. I suggest that sympa_wizard.pl
check for this, since on a new install, the user is supposed to run the wizard.

Also, /usr/local/share/sympa (parent directory of $STATICDIR) has sub directories "arc",
"bounce", and "list_data", and these should also be made writeable by sympa. Again,
sympa_wizard.pl should check for and fix this.

Reference manual of earlier Sympa versions?

Is the reference manual (administrative manual/documentation) for earlier versions of Sympa available and downloadable (for local installation) somewhere? More specifically, for 6.2.24, which is the current Ubuntu LTS-packaged version of Sympa. It seems there is only the current version (6.2.40+) at https://www.sympa.org/manual/index, and also only single pages can be exported.

owner address set to privileged robot addresses causing loop

We have a list where the list owner set the owner address to be the list's -admin address, which results in a loop.

When setting a list admin or owner there should be checks that disallow using special addresses:
-admin
-request
-bounce
-editor
-subscribe
-unsubscribe

a patch like this works:

+++ b/sympa-6.2.32/src/cgi//wwsympa.fcgi.in     2018-04-22 03:56:15.973309951 -0700
@@ -10457,6 +10457,26 @@
         Sympa::WWW::Report::notice_report_web('subscribers_noticed_deleted_topics',
             {}, $param->{'action'});
     }
+    ## Checking that list owner address is not set to one of the special 
+    ## addresses:   
+    if (exists $changed{'owner'}) {
+       my $list = $param->{'list'};
+       my @special = ("$list-owner\@$robot", 
+               "$list-editor\@$robot", "$list-owner\@$robot", 
+               "$list-admin\@$robot", "$list-request\@$robot",
+               "$list-bounce\@$robot", "$list-subscribe\@$robot",
+               "$list-unsubscribe\@$robot");   
+       foreach my $owner (@{$new_admin->{'owner'}}) {
+               if (grep (/^$owner->{'email'}$/, @special)) {
+                       ## generate an error and return
+                       &report::reject_report_web('user','incorrect_email',{'email'=>$owner->{'email'}},$param->{'action'},$list);
+                       &wwslog('info','do_edit_list: Reserved email address %s', $owner->{'email'});
+                       &web_db_log({'status' => 'error', 'error_type' => 'incorrect_email'}, 'parameters' => $owner->{'email'});
+                       return undef;
+               }
+       }
+    }
+
     # For changed owner/editor
     _notify_added_admin($config);
     #my $owner_update = 1

Website: dead links and missing users on "Hosting services / Services d'hébergement"

This page contains some dead links
###Not existing hosting services

  • inViVo : Error 404
  • International Federation of Library Associations and Institutions : Server not found
  • Unesco : Page load error
  • geneve.ch : Server not found
  • Le Ministère des Affaires Étrangères: Server not found
  • Education.gouv.fr : Page load error
  • Ministère des finances : Server not found
  • Correo Facultad de Ingenieria : Error 404
  • Universität Graz : Addressnot found
    and so on.

All items highlighted yellow or red in this list have problems with hte hyperlinks. Mostly: error 404.

Missing hosters

Enabling message tracking breaks mail delivery when using exim's sendmail

When

  • message tracking is enabled for a list under "Bounce Management" and
  • when sendmail is provided by exim

not messages get delivered to list subscribers. For a user and a list manager, this error is silent.

It would be nice if message tracking worked with exim or there was an option to disable it from the list management interface.

Version

6.2.66

Installation method

Ubuntu deb

Expected behavior

Mails to list subscribers should be delivered with message tracking enabled.

Actual behavior

Mails get submitted to exim-sendmail, but not delivered because of command line options.

Steps to reproduce

  1. Have a machine with sendmail provided by exim
  2. Configure message tracking for a mailing list
  3. Send mail to mailing list, watch the sendmail gets called (from logs)
  4. See that messages get suppressed

Additional information

The issue is in Sympa/Mailer.pm.

When message tracking is enabled, sendmail gets passed the command line flags -N success,delay,failure -V <envid>

For postfix-sendmail, this sets an envelope id for DSN tracking and enables delivery status notifications for successful deliveries instead of the usual delay, failure.

For exim

  • -N is a debugging option, that suppresses mail delivery.
  • -V makes exim print version information.

Setting message tracking for a list thus essentially disables mail delivery when using exim as the sendmail provider and there does not seem to be an option to disable the feature globally so that it is not available to list owners.

Telnet Example on the configure-mail-server.html#tests Section

Hello base on my issue There is a section who could be added on the Test page: https://sympa-community.github.io/manual/install/configure-mail-server.html#tests

Telnet Example

  1. Open your favorite telnet tools (telnet or putty for example)

  2. Open a session to your postfix server and use this command (replace example by your lists)

helo example.fr
250 yourserverpostfix
mail from:[email protected]
250 2.1.0 Ok
rcpt to:[email protected]
250 2.1.5 Ok
DATA
Message-ID:Something
Sender:[email protected]
From:[email protected]
Return-Path:[email protected]
Subject: Hello
Hello World
.
250 2.0.0 from MTA(smtp:[127.0.0.1]:10025): 250 2.0.0 Ok: queued as XXXXXXXXXXXXXX

This should be enought to test your lists and see if everything is ok on the MTA Side.

Remember your logs:
/var/log/syslog|messages
/var/log/maillog
/var/log/sympa.log

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.