martes, 17 de mayo de 2011

Filtrar subject y mensajes con Postfix

Este tutorial nos muestra como poder bloquear subjects y  contenidos de mensajes que contengan algun texto que provenga como correo SPAM.
para esto realizamos lo siguiente:

Editamos el archivo main.cf

#vim /etc/postfix/main.cf

Agregamos estas lineas






body_checks = regexp:/etc/postfix/body_checks
header_checks = regexp:/etc/postfix/header_checks.regexp

Creamos el archivo para filtrar asuntos.

#vim /postfix/header_checks.regexp

Y colocamos la/s palabra/s que queremos filtrar






/^Subject:.*palabra_a_filtrar.*$/ REJECT "Asunto no valido"
/^Subject:.*Viagra.*$/ REJECT "Asunto no valido"

En la segunda linea estamos filtrando la palabra Viagra,lo que colocamos dentro de las comillas (Asunto no valido) es lo que va aparecer en el mail rejectado del remitente.

Creamos el archivo para filtrar contenido de mensaje.

#vim /etc/postfix/body_checks






/palabra_a_filtrar/ REJECT
/Viagra/ REJECT
/casino en linea/ REJECT

En la segunda linea estamos filtrando la palabra Viagra si apareciera en el cuerpo del mensaje.

Luego hacemos:

#postmap /etc/postfix/body_checks
#postmap /etc/postfix/header_checks.regexp

Se crearan los archivos con el mismo nombre con extension .db
Por ultimo reiniciamos postfix para que tome los cambios que realizamos

#/etc/init.d/postfix restart

miércoles, 11 de mayo de 2011

Como realizar un trunk IAX2 entre 2 Asterisk

Es Tutorial muestra como hacer un trunk IAX2 entre 2 Asterisk. La Sede A tiene los internos 2xxx y la Sede B los internos 10xx.

Para que la sede A pueda llamar a internos de la sebe B debemos realizar un trunk IAX2 y configurar los archivos iax.conf y extensions.conf en cada asterisk.



====================================
Sede A -170.x.x.x
====================================

En el archivo /etc/asterisk/iax.conf agregamos las siguientes lineas:

[general]
autokill=yes
register => SedeA:welcome@200.x.x.x

[2001]
type=friend
host=dynamic
context=phones

[SedeB]
type=friend
username=SedeA
host=dynamic
trunk=yes
secret=welcome
context=incoming_SedeA
permit=200.x.x.x/255.255.255.255

en el archivo que esta en /etc/asterisk/extensions.conf y colocamos lo siguiente:

[general]
autofallthrough=yes

[phones]
include => internal
include => remote

[internal]
exten => _2XXX,1,NoOp()
exten => _2XXX,n,Dial(IAX2/${EXTEN},30)
exten => _2XXX,n,Hangup()

[remote]
exten => _1XXX,1,NoOp()
exten => _1XXX,n,Dial(IAX2/SedeB/${EXTEN})
exten => _1XXX,n,Hangup()

[incoming_SedeA]
include => internal

========================
Sede B -200.x.x.x
========================

En el archivo /etc/asterisk/iax.conf agregamos las siguientes lineas:

[general]
autokill=yes
register => SedeB:welcome@170.x.x.x

[1001]
type=friend
host=dynamic
context=phones

[SedeA]
username=SedeB
type=friend
host=dynamic
trunk=yes
secret=welcome
context=incoming_SedeB
permit=170.x.x.x/255.255.255.255

en el archivo que esta en /etc/asterisk/extensions.conf y colocamos lo siguiente:

[general]
autofallthrough=yes

[phones]
include => internal
include => remote

[internal]
exten => _1XXX,1,NoOp()
exten => _1XXX,n,Dial(IAX2/${EXTEN},30)
exten => _1XXX,n,Hangup()

[remote]
exten => _2XXX,1,NoOp()
exten => _2XXX,n,Dial(IAX2/SedeA/${EXTEN})
exten => _2XXX,n,Hangup()

[incoming_SedeB]
include => internal