# uname -a

Switch

samedi 1 février 2014

Configure Postfix as standalone single-domain SMTP server using Unix users and PAM on Debian

Here is a quick setup to configure Postfix mail server, using existing Unix users.

The server will process mails for only one domain, and every existing user on the server will have a mail box inside his home directory.

Abstract

Postfix is an SMTP server, it receives incoming mail from other SMTP servers, and allows client to send mails to other SMTP servers.

What we don't want is an open mail relay. A mail relay is a SMTP server that take anything from any client, and send it to any SMTP server. We only want trusted users to send emails, to prevent anonymous clients from sending spam.

Incoming mail will be processed either if :

  • The domain name of one of the recipient matches the mail server domain, and the mail user name is also a system user (SMTP servers can send us incoming mails).
  • The client who tries to sends the mail has successfully authenticated.

Postfix authentication for clients can be handled by SASL. SASL is a standard protocol to provide an authentication layer. It can query PAM, or other authentication providers (MySQL users, etc).

Notes :

  • We will use PAM for Unix users SMTP authentication.
  • Unix users are stored in /etc/passwd and their passwords are stored in /etc/shadow.
  • Mails will be stored in the ~/Maildir/ of each users, in Maildir format.

Postfix : installation and configuration

Install Postfix : apt-get install postfix

Answer the questions during installation to setup your mail domain (the "example.com" in user@example.com).

Modify config files :

/etc/postfix/main.cf :

Configure TLS and Maildir :

# TLS parameters
smtpd_tls_key_file = /etc/ssl/private/ssl-cert-snakeoil.key
smtpd_tls_cert_file = /etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_CAfile = /etc/ssl/certs/ca-certificates.crt
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache

# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for
# information on enabling SSL in the smtp client.

myhostname = mail.example.com
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = example.com, localhost
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_size_limit = 0
recipient_delimiter = +

home_mailbox = Maildir/

# These are the "no relay" restrictions
smtpd_recipient_restrictions = permit_mynetworks permit_inet_interfaces permit_sasl_authenticated reject_unauth_destination

/etc/postfix/master.cf :

Enable TLS and alternate (submission) ports :

submission inet n       -       -       -       -       smtpd
  -o syslog_name=postfix/submission
  -o smtpd_tls_security_level=encrypt
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_client_restrictions=permit_sasl_authenticated,reject
  -o milter_macro_daemon_name=ORIGINATING
smtps     inet  n       -       -       -       -       smtpd
  -o syslog_name=postfix/smtps
  -o smtpd_tls_wrappermode=yes
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_client_restrictions=permit_sasl_authenticated,reject
  -o milter_macro_daemon_name=ORIGINATING

SASL : installation and configuration

SASL plugin for Postfix (Cyrus) is part of the dependencies of Postfix server.

Install SASL administration tools : apt-get install sasl2-bin

Enable SASL daemon at startup : edit /etc/default/saslauthd and switch START to yes.

Start it manually for the first time : service saslauthd start

Enable PAM authentication for SASL

Check that PAM is part of the MECHANISMS variable in /etc/default/saslauthd :

MECHANISMS="pam"

Create /etc/pam.d/smtp :

#
# /etc/pam.d/smtp - specify PAM SMTP behavior
#

@include common-auth
@include common-account
@include common-password
@include common-session

Enable SASL for Postfix

Add to /etc/postfix/main.cf :

smtpd_sasl_auth_enable = yes

Create /etc/postfix/sasl/smtpd.conf :

pwcheck_method: saslauthd
mech_list: PLAIN LOGIN

Adjust OPTIONS in /etc/default/saslauthd :

OPTIONS="-c -m /var/spool/postfix/var/run/saslauthd"

Add postfix user to sasl group :

adduser postfix sasl

Configuration check

Restart all services (postfix, salsauthd).

Try authentication using SASL : testsaslauthd -u user -p password

Try authentication from command line, without mail client : https://qmail.jms1.net/test-auth.shtml

Try SMTP reception by sending mail to your domain (your MX fields in domain has to be configured accordingly).

Sources

mardi 14 janvier 2014

Nouvelles affiches de la manif pour tous

Ils se sont trompés, en fait. C’est celles là qu’il faut utiliser à la place (cliquez sur l’image pour agrandir).

Familiphobie-Stop-Main-modif-01.pngFamiliphobie-Stop-Main-modif-02.png

Toi aussi, joues à la Manif pour tous !

Proposes de nouvelles affiches et tu gagneras peut être … rien ! Mais au moins tu auras joué !

La police du texte est Edo, et la palette de couleurs est :

  • Fond : #f3f3f4
  • Bleu texte : #0076bc
  • Rose texte : #da0087

dimanche 12 janvier 2014

Profil et résultats de recherche : réflexion sur la possibilité de reverse-engineering du PageRank dans le contexte du marketing ciblé

Si vous avez lu mon billet précédent, vous savez que la mesure d’audience utilise les cookies.

Il y a quelques jours, dans une conversation par mail à propos du référencement, je me suis souvenu de l’effet du « filter bubble » (voir aussi), c’est à dire que les résultats de recherche sont personnalisés en fonction de votre profil marketing, et le profil est directement construit à partir des outils de mesure d’audience.

Mais alors, comment faire du reverse-engineering sur les réponses des moteurs de recherche, pour comprendre les leviers permettant de positionner son contenu dans le bon profil marketing (“top keywords”, etc) ? Pour pouvoir faire ses expérimentations, il faut acheter des profils “tout prêts”, ou en construire un.

Note après relecture : En y repensant, je me suis dit qu’avec cet article j’étais en train de construire quelque chose de similaire au « nettoyeur » de la nouvelle intitulée « Scroogled », écrit par Cory Doctorow (voir le lien en fin d’article).

Lire la suite...

vendredi 10 janvier 2014

Questions bêtes #0 : Introduction

Ce billet me sert d’introduction pour une nouvelle catégorie que je viens d’ajouter au blog : les questions bêtes.

J’ai toujours été étonné de la réaction des gens quand je leur annonçait que j’avais une question bête à leur poser. Entre les « il n’y a pas de question bête » et les « je ferai une réponse bête », je n’ai jamais vraiment compris les motivations derrière ces réactions.

Car pour moi il y a vraiment des questions bêtes, et c’est justement celles qui sont intéressantes. Une question bête est une question simple, souvent anodine, sur un sujet que tout le monde estime avoir compris, qui est donc considéré comme acquis lors de nos échanges avec les autres, et qui pourtant mérite une réponse de plus d’une phrase.

Lire la suite...

samedi 14 décembre 2013

Ce que vous ne savez pas sur les mesures d'audience sur Internet

Les mesures d’audiences répondent à une problématique qui est ancienne. De tous temps, les créateurs de contenu ont cherché à savoir quelle était la valeur de ce qu’ils produisaient. Les artistes comptaient donc le nombre de personnes présentes à leur vernissage pour déterminer la cote de leurs créations, on mesurait les concerts publics à l’applaudimètre, et l’affluence d’un magasin au moment des soldes montrait l’impact de la marque sur son segment de marché.

De tous temps on a pu constater des failles au mécanisme de mesure d’audience : les invités qui viennent pour le buffet lors du vernissage, et non pas pour les œuvres, la faible précision de l’applaudimètre, etc.

Pourtant, ces statistiques sur l’audience des produits a petit à petit gagné la confiance des investisseurs, jusqu’à en devenir une référence qui ne mesurait plus simplement l’audience, mais aussi la pertinence. Un produit qui n’a pas une audience suffisante est jugé non pertinent, et est donc écarté du marché. Peu importe s’il est rentable ou non, puisqu’on vous a dit qu’il n’était pas pertinent. La sacro-sainte pertinence s’est alors couplée avec le concept de croissance, et la course à la mesure d’audience s’est engagée.

Mais les mesures d’audiences, comment ça marche ?

Lire la suite...

- page 13 de 32 -