**!!! ACHTUNG - evtl. veraltet - ACHTUNG !!!** Diese Seite wurde zuletzt am 9. Juli 2014 um 10:49 Uhr geändert. ===== ezmlm-idx ===== In diesem speziellen Fall habe ich mich für eine Mailing-Liste entschieden, - der man nur beitreten kann, wenn ein Moderator dieses zulässt (-s), - die nur E-Mails von ihr bekannten E-Mail-Absendern annimmt (-u), - auf dessen Archiv nur bekannte E-Mail-Absender zugreifen können (-g), - die für den Archiv-Zugriff per ezmlm-cgi indiziert ist (-i), - deren Konfiguration in einer MySQL-Datenbank abgelegt wird (-6) und - die einen Eigentümer kennt (-5) ==== MySQL-Datenbank und -Benutzer anlegen ==== mysql --host= --user=root --password -e "CREATE DATABASE `ezmlm`; \ CREATE USER 'ezmlm'@'' IDENTIFIED BY ''; \ GRANT USAGE ON * . * TO 'ezmlm'@'' IDENTIFIED BY '' \ WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0; \ GRANT SELECT , INSERT , UPDATE , DELETE , CREATE , DROP ON `ezmlm` . * TO 'ezmlm'@'';" {{Platzhalter}} ==== kompilieren ==== cd /usr/local/src wget http://www.ezmlm.org/archive/7.1.1/ezmlm-idx-7.1.1.tar.gz tar xvzf ezmlm-idx-7.1.1.tar.gz cd ezmlm-idx-7.1.1/lang ln -s en_US default cd .. make make man make mysql ./ezmlm-test -s mysql -h -u ezmlm -t ezmlm -d ezmlm -p make install {{Platzhalter}} ==== Mailing-Liste anlegen ==== /usr/local/bin/ezmlm/ezmlm-make -5 patrick@neumannsland.de -g -i -s -u -6 mysql:>3306:ezmlm:>ezmlm:ezmlm \ /home/vpopmail/domains// /home/vpopmail/domains//.qmail- /usr/local/bin/ezmlm/ezmlm-sub /home/vpopmail/domains// mod chown -h vpopmail:vchkpw /home/vpopmail/domains//.qmail-* chown -R vpopmail:vchkpw /home/vpopmail/domains// {{Platzhalter}} ===== ezmlm-cgi ===== Da die Mailing-Liste an sich schon recht "verschlossen" ist, ist ein Zugriff auf das "Web-Archiv" auch nur per Benutzername und Password möglich! ==== Proxy-Konfiguration (nginx) ggf. anpassen ==== /etc/nginx/sites-available/ezmlm-cgi könnte auf dem Host wie folgt ausschauen: server { listen >80; server_name ; location / { **proxy_set_header Host $http_host;** proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-Server $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://>80; } } {{Platzhalter}} //(Wobei das Hauptaugenmerk auf "proxy_set_header Host $http_host;" liegt, da ansonsten die von ezmlm-cgi generierte Links auf die interne IP-Adresse des Gastes verweisen!)// ==== Debian-Pakete installieren ==== aptitude install lighttpd //(Wenn ich nur cgi haben möchte, entscheide ich persönlich mich immer ganz gerne für lighttpd.)// ==== /etc/lighttpd/conf-available/99-ezmlm.conf ==== cat < /etc/etc/lighttpd/conf-available/99-ezmlm.conf server.modules += ( "mod_auth", "mod_cgi" ) auth.backend = "plain" auth.backend.plain.userfile = "/etc/lighttpd/users" auth.require = ( "/" => ( "method" => "digest", "realm" => "ezmlm archive", "require" => "user=" ) ) alias.url += ( "/" => "/usr/lib/cgi-bin/" ) index-file.names += ( "ezmlm-cgi" ) $HTTP[["url"]] =~ "^/" { cgi.assign = ( "ezmlm-cgi" => "" ) } EOF {{Platzhalter}} ==== /etc/lighttpd/users ==== echo ">" > /etc/lighttpd/users {{Platzhalter}} ==== hinzugefügte lighttpd-Konfiguration aktivieren ==== lighttpd-enable-mod ezmlm ==== Konfiguration übernehmen ==== /etc/init.d/lighttpd force-reload