Diferencia entre revisiones de «Calculin»
(→LDAP) |
|||
Línea 1: | Línea 1: | ||
− | + | =Intro= | |
− | |||
Dado que el primer ''approach'' (usar web-cyradm) no funcionó porque...: | Dado que el primer ''approach'' (usar web-cyradm) no funcionó porque...: | ||
Línea 12: | Línea 11: | ||
== Instalación de cada parte == | == Instalación de cada parte == | ||
− | |||
=== Paquetes instalados vía apt-get === | === Paquetes instalados vía apt-get === | ||
Línea 19: | Línea 17: | ||
== Configuración == | == Configuración == | ||
− | |||
=== Certificado X.509 para cifrado TLS/SSL === | === Certificado X.509 para cifrado TLS/SSL === | ||
Para armar el certificado que se usa en todos lados (IMAPs, ldap, web?) lo hice con el siguiente comando: | Para armar el certificado que se usa en todos lados (IMAPs, ldap, web?) lo hice con el siguiente comando: | ||
Línea 110: | Línea 107: | ||
maildrop: gacq@cafelug.org.ar | maildrop: gacq@cafelug.org.ar | ||
</pre></code> | </pre></code> | ||
+ | |||
+ | =DomainKeys= | ||
+ | ==Alternativas== | ||
+ | ;Implementaciones de domainkeys | ||
+ | *dkimproxy | ||
+ | *dk-milter | ||
+ | *dkfilter (del mismo autor de dkimproxy, deprecado?) | ||
+ | |||
+ | ==DKIMproxy== | ||
+ | *[http://dkimproxy.sourceforge.net/ Mail-DKIM and DKIMproxy] | ||
+ | |||
+ | Debian packages: dkimproxy | ||
+ | |||
+ | ;Howtos | ||
+ | *[http://dkimproxy.sourceforge.net/postfix-outbound-howto.html Setting up the outbound proxy with Postfix] | ||
+ | *[http://anothersysadmin.wordpress.com/2008/01/16/domainkeysdkim-with-postfix/ Domainkeys/Dkim with Postfix] | ||
+ | |||
+ | ==dk-milter== | ||
+ | debian packages: dk-filter? | ||
+ | |||
+ | *[http://www.sendmail.com/sm/wp/dkim/ About DKIM] | ||
+ | *http://sourceforge.net/projects/dkim-milter/ | ||
+ | |||
+ | ;Howtos | ||
+ | *[http://www.howtoforge.com/how-to-implement-domainkeys-in-postfix-using-dk-milter-centos5.1?TB_iframe=true&height=650&width=850 How To Implement Domainkeys In Postfix Using dk-milter] | ||
+ | |||
+ | ==General domainkey references== | ||
+ | *[http://www.postfix.org/MILTER_README.html Postfix before-queue Milter support] |
Revisión del 17:51 30 mar 2008
Contenido
Intro
Dado que el primer approach (usar web-cyradm) no funcionó porque...:
- el web-cyradm está medio muerto como proyecto,
- no pude hacer andar el cifrado MD5 con el pam_mysql (sí, compilé el libpam_mysql con MD5 y armé el paquete)
- postfix daba problemas todo el tiempo con las cosas más irrisorias como que no encuentra "localhost"
hice un cambio radical de estrategia y me puse a configurar el sistema con Postfix, Cyrus y backend LDAP.
Buscando en Google encontré esta página (que habla de una migración de no-sé-qué a postfix+cyrus), también vi esta otra página (que resita sobre una configuración de postfix+ldap+COURIER) y finalmente documentación de postfix. Entre todas estas cosas empecé a armar todo el asunto.
Instalación de cada parte
Paquetes instalados vía apt-get
- apt-get install slapd ldap-utils
- apt-get install postfix cyrus-pop3d-2.2 cyrus-imapd-2.2
Configuración
Certificado X.509 para cifrado TLS/SSL
Para armar el certificado que se usa en todos lados (IMAPs, ldap, web?) lo hice con el siguiente comando:
# mkdir myCA
# chmod 0700 myCA
# cd myCA
# mkdir {crl,newcerts,private}
# touch index.txt
# echo "01" > serial
# cp /etc/ssl/openssl.cnf .
# openssl req -nodes -config ./openssl.cnf -days 999 -x509 -newkey rsa:2048 -out cacert.pem -outform PEM
# openssl genrsa -rand /dev/urandom -out calculin.cafelug.org.ar.key
# openssl req -new -nodes -key calculin.cafelug.org.ar.key -out calculin.cafelug.org.ar.csr
# cp privkey.pem private/cakey.pem
# openssl ca -config ./openssl.cnf -in calculin.cafelug.org.ar.csr -out calculin.cafelug.org.ar.cert -days 9999
Nota: Lo importante es que al poner el valor de "Common Name:" puse "*.cafelug.org.ar" (así no rompe las p[e]lotas el browser diciendo que el certificado es malo)
LDAP
Di mil vueltas con esto, más que nada porque es el primer LDAP que configuro desde cero y no encontré algún documento que diga usa este schema que sale con fritas. Por lo que lei hay dos schemas más utilizados para trabajar con correo, uno es el de Courier y el otro es el de Qmail.
Me bajé el de courier. El tema no está en que postfix pueda encontrar si una dirección de correo es válida (y saber a qué casilla enviarla), el problema son los aliases (claro que pude haber usado el hash:/etc/aliases, pero así quién no?! :-)).
Para no hacer las cosas muy complicadas segui la recomendación del documento de bulma que propone armar dos ramas: "People" y "Postfix". En la primera van los usuarios y en la segunda cosas de Postfix (dughh!).
Acá pasteo un LDIF para que se puedan ver ejemplos de cada cosa:
version: 1
# LDIF Export for: dc=cafelug,dc=org,dc=ar
# Generated by phpLDAPadmin ( http://phpldapadmin.sourceforge.net/ ) on March 22, 2008 4:27 am
# Server: My LDAP Server (localhost)
# Search Scope: sub
# Search Filter: (objectClass=*)
# Total Entries: 7
dn: dc=cafelug,dc=org,dc=ar
objectClass: top
objectClass: dcObject
objectClass: organization
o: cafelug.org.ar
dc: cafelug
dn: cn=admin,dc=cafelug,dc=org,dc=ar
objectClass: simpleSecurityObject
objectClass: organizationalRole
cn: admin
description: LDAP administrator
userPassword: {crypt}XERparhpX9GD6
dn: ou=People,dc=cafelug,dc=org,dc=ar
objectClass: organizationalUnit
ou: People
dn: cn=Daniel Coletti,ou=People,dc=cafelug,dc=org,dc=ar
cn: Daniel Coletti
gidNumber: 5000
mail: dcoletti@cafelug.org.ar
sn: Coletti
uidNumber: 5000
objectClass: CourierMailAccount
objectClass: person
objectClass: top
objectClass: inetOrgPerson
homeDirectory: /var/vmail
quota: 0
userPassword: {CRYPT}Clave
dn: ou=Postfix,dc=cafelug,dc=org,dc=ar
ou: Postfix
objectClass: organizationalUnit
userPassword: {CRYPT}FxThcXLxmMTw.
dn: ou=Alias,ou=Postfix,dc=cafelug,dc=org,dc=ar
ou: Alias
objectClass: organizationalUnit
dn: cn=postmaster@cafelug.org.ar,ou=Alias,ou=Postfix,dc=cafelug,dc=org,dc=ar
objectClass: top
objectClass: organizationalRole
objectClass: CourierMailAlias
cn: postmaster@cafelug.org.ar
mail: postmaster@cafelug.org.ar
maildrop: dcoletti@cafelug.org.ar
maildrop: gacq@cafelug.org.ar
DomainKeys
Alternativas
- Implementaciones de domainkeys
- dkimproxy
- dk-milter
- dkfilter (del mismo autor de dkimproxy, deprecado?)
DKIMproxy
Debian packages: dkimproxy
- Howtos
dk-milter
debian packages: dk-filter?
- Howtos