[postfix-es] postfix + ldap + user restrictions

Jorge Calas calas_paraglider en yahoo.com
Jue Abr 8 03:55:15 CEST 2004


Hola, 

estoy tratando de montar un servidor de correo en
postfix para susbtituir un MDaemon que hay aqui. Para
eso estoy buscando informacion acerca de lo que pedi
aqui hoy. 

Pero bueno, como nada me llega empece con hacer
alguanas cosas. 

Lo primero que empeze a hacer fue montar los usarios. 

Para eso monte un servidor ldap con la siguiente
estructura

                      o=ECC,c=CU
                           |
                          / \
                   ou=System ou=Accounts
                     /  \          \
           ou=postfix  ou=locals    cn=Testuser,
cn=te2

(espero que entiendan el grafico)

Luego:
mydestination = $myhostname, localhost.$mydomain,
localhost.localdomain, ldap:acceptdomains
acceptdomains_server_host = localhost
acceptdomains_server_port = 389
acceptdomains_bind = yes
acceptdomains_bind_dn = ou=System,o=ECC,c=CU
acceptdomains_bind_pw = mypass
acceptdomains_search_base =
ou=postfix,ou=System,o=ECC,c=CU
acceptdomains_query_filter = (associatedDomain=*)
acceptdomains_result_attribute = associatedDomain

local_transport = virtual
virtual_mailbox_base = /
virtual_mailbox_maps = ldap:ldapvirtual
virtual_uid_maps = static:5000
virtual_gid_maps = static:5000
virtual_minimum_uid = 500
virtual_mailbox_limit = 0
ldapvirtual_server_host = localhost
ldapvirtual_server_port = 389
ldapvirtual_bind = yes
ldapvirtual_bind_dn = ou=System,o=ECC,c=CU
ldapvirtual_bind_pw = mypass
ldapvirtual_search_base = ou=Accounts,o=ECC,c=CU
ldapvirtual_query_filter =
(&(|(mail=%s)(mailAlternateAddress=%s))(|(AccountStatus=active)(accountStatus=shared)))
ldapvirtual_result_attribute = mailMessageStore


alias_maps = hash:/etc/postfix/aliases, ldap:ldapalias
#alias_maps = hash:/etc/aliases, nis:mail.aliases
#alias_maps = netinfo:/aliases
virtual_maps = ldap:ldapalias
ldapalias_server_host = localhost
ldapalias_server_port = 389
ldapalias_bind = yes
ldapalias_bind_dn = ou=System,o=ECC,c=CU
ldapalias_bind_pw = mypass
ldapalias_search_base = ou=Accounts,o=ECC,c=CU
ldapalias_query_filter =
(&(|(mail=%s)(mailAlternateAddress=%s))(|(AccountStatus=active)(AccountStatus=shared)))
ldapalias_result_attribute = mail

Hasta aqui me funciona "bien", o sea, que no me da
problemas el postfix, y cuando le digo (via telnet
localhost 25) que mande un correo para uno de los dos
usuarios que tengo creados me lo entrega sin
problemas, me crea los Maildirs/ si no estan creados y
todo. Hasta aqui todo bien. Pero si le digo que soy un
usuario local que quiero mandar un correo a mi cuenta
de yahoo me dice que :

220 mail.correosdecuba.cu ESMTP Postfix
mail from: calas en apc.cu
250 Ok
rcpt to: calas_paraglider en yahoo.com
450 <calas_paraglider en yahoo.com>: User unknown in
local recipient table
quit
221 Bye

Esta maquina tiene por el momento una ip privada, y no
tiene un servidor de DNS que sirva, o sea, esta
apuntando a un DNS que aun no esta montado. Alguien
tiene idea de este comportamiento. 

Esta es una parte. 

Por otra parte estoy tratando de hacer lo que dice en
la FAQ sobre la restriciones de los usuarios. La idea
es que algunos usuarios pueden mandar y recibir
correos desde internet o los otros solo desde *.cu
pero creo que faltan algunas cosas. No tengo mucha
experiencia en postfix y no se que poner lo va cuando
dice "other stuff...." (ver
http://www.porcupine.org/postfix-mirror/newdoc/RESTRICTION_CLASS_README.html
para que entiendan lo que digo)
Si quieren mando lo que he hecho hasta ahora. 

Si alguien tiene experiencia en este tipo de cosas por
favor avisenme que no estoy muy claro. 

El postfix que tengo instalado en el RedHat Enterprise
3 AS es el ultimo de Simon (el de redhat dice que
tiene soporte para ldap pero es mentira "out of the
box")

La salida postconf -n es:
alias_maps = hash:/etc/postfix/aliases, ldap:ldapalias
command_directory = /usr/sbin
config_directory = /etc/postfix
daemon_directory = /usr/libexec/postfix
debug_peer_level = 2
home_mailbox = Maildir/
inet_interfaces = all
local_transport = virtual
mail_owner = postfix
mailq_path = /usr/bin/mailq.postfix
manpage_directory = /usr/share/man
mydestination = $myhostname, localhost.$mydomain,
localhost.localdomain, ldap:acceptdomains
mydomain = correosdecuba.cu
myhostname = mail.correosdecuba.cu
myorigin = $mydomain
newaliases_path = /usr/bin/newaliases.postfix
queue_directory = /var/spool/postfix
readme_directory = /etc/postfix/README_FILES
sample_directory = /etc/postfix/samples
sendmail_path = /usr/sbin/sendmail.postfix
setgid_group = postdrop
unknown_local_recipient_reject_code = 450
virtual_gid_maps = static:5000
virtual_mailbox_base = /
virtual_mailbox_limit = 0
virtual_mailbox_maps = ldap:ldapvirtual
virtual_minimum_uid = 500
virtual_uid_maps = static:5000

Saludos a todos y gracias por adelantado. 

Nos leemos. 

Jorge Calas. 



=====
Jorge Calás
Advance Omega 3
http://www.volarencuba.digitdreams.com
(Cuba)

__________________________________
Do you Yahoo!?
Yahoo! Small Business $15K Web Design Giveaway 
http://promotions.yahoo.com/design_giveaway/
-
Para ENVIAR mensajes a esta lista tienes que estar SUSCRITO a ella.
.
Envía la linea "unsubscribe postfix-es" en el cuerpo de un mensaje
a majordomo en WL0.org para quitarte de la lista.



Más información sobre la lista de distribución Postfix-es