domingo, 30 de septiembre de 2012



Taller  # 2  ~S.O  3 ~                                          Ricardo Caicedo
 
1.     Listar del directorio /home/juan todos los archivos que tengan las palabras a-c
Cd /home/juan
Ls  ?? a???c???
2.     Cojer un dierctorio cualquiera, crear un directorio y crear un archive con extension txt, copier el archive creado en el /home del usuario
Cd /home/rricardo
mkdir varios
cd varios │ vi prueba.txt │cp home/anna
3.     Crear dos archivos .txt
File 1  1er nombre 1er apellido
File2 2do nombres 2do apellido
vi ricardocaicedo.txt
vi andresmuñoz.txt
4.     Concatenar
cat ricardoandres.txt andresmuñoz.txt nuevo,txt
 
Ordenar inversamente
Sort  -r nuevo.txt
5.     Mostar el contenido del archivo
more nuevo.txt





Taller 1  ~ S.O -3 ~                                             Ricardo Caicedo
 
1.     Crear un directorio dentro del subdirectorio juegos
Cd  /usr/ games
mkdir rricardo
 
2.     Partiendo de la raíz vamos a crear un archivo txt en el directorio spool, el archivo se llamara vr.doc
Cd /var/spool
Vi vr.doc
 
3.     Copiar el archivo anterior en el directorio anna
Cp vr.doc /home/anna
 
4.     Ubíquese en el directorio anna, cual es el comando para listar los archivos que se encuentran en el directorio spool
Cd  /home/anna
Ls  /var/spool
 
5.     Cual es el comando que permite borrar el directorio Bob (salga del directorio anna)
Cd ..
rmdir  bob
 
 
 
6.     Renombrar el directorio rick a pruebatv
 
mv pruebatv
 
7.     Comrpuebe ubicación actual
Pwd /home
 
8.     Comando que permite borrar la pantalla
Clear
9.     Necesito ubicarme en el directorio cdrom  y que permisos tienen los archivos en ese directorio
Cd /mnt/cdrom
Ls –l
 
10.                       Estando en el directorio actual borre el archivo doc
Cd /usr/share
Rm doc


Taller 1  ~ S.O -3 ~                                             Ricardo Caicedo
 
1.     Crear un directorio dentro del subdirectorio juegos
Cd  /usr/ games
mkdir rricardo
 
2.     Partiendo de la raíz vamos a crear un archivo txt en el directorio spool, el archivo se llamara vr.doc
Cd /var/spool
Vi vr.doc
 
3.     Copiar el archivo anterior en el directorio anna
Cp vr.doc /home/anna
 
4.     Ubíquese en el directorio anna, cual es el comando para listar los archivos que se encuentran en el directorio spool
Cd  /home/anna
Ls  /var/spool
 
5.     Cual es el comando que permite borrar el directorio Bob (salga del directorio anna)
Cd ..
rmdir  bob
 
 
 
6.     Renombrar el directorio rick a pruebatv
mv pruebatv
 
7.     Comrpuebe ubicación actual
Pwd /home
 
8.     Comando que permite borrar la pantalla
Clear
9.     Necesito ubicarme en el directorio cdrom  y que permisos tienen los archivos en ese directorio
Cd /mnt/cdrom
Ls –l
 
10.                       Estando en el directorio actual borre el archivo doc
Cd /usr/share
Rm doc


Iptables (Firewall en Linux)


IPtables es un sistema de firewall vinculado al kernel de Linux que se ha extendido enormemente a partir del kernel 2.4 de este sistema operativo. Al igual que el anterior sistema ipchains, un firewall de iptables no es como un servidor que lo iniciamos o detenemos o que se pueda caer por un error de programación (esto es una pequeña mentira, ha tenido alguna vulnerabilidad que permite DoS, pero nunca tendrá tanto peligro como las aplicaciones que escuchan en determinado puerto TCP): iptables está integrado con el kernel, es parte del sistema operativo. ¿Cómo se pone en marcha? Realmente lo que se hace es aplicar reglas. Para ellos se ejecuta el comando iptables, con el que añadimos, borramos, o creamos reglas. Por ello un firewall de iptables no es sino un simple script de Shell en el que se van ejecutando las reglas de firewall.
Notas: bueno, para los más geeks y tocapelotas. Vale, se puede implementar un script de inicio en /etc/rc.d/INIT.d (o /etc/INIT.d) con el que hagamos que iptables se "inicie o pare" como un servidor más. Lo podemos hacer nosotros o es probable que venga en la distribución (como en redhat por ejemplo). También se pueden salvar las reglas aplicadas con el comando iptables-save en un fichero y gestionar ese fichero con una aplicación o front-end desde la X o desde webmin.
Vale, tenemos una máquina Linux con soporte para iptables, tiene reglas aplicadas y empiezan a llegar/salir/pasar paquetes. No nos liemos: olvidemos cuantas tarjetas de red hay, que direcciones ip tiene la máquina y olvidemos si el paquete entra o sale. Las reglas de firewall están a nivel de kernel, y al kernel lo que le llega es un paquete (digamos, un marrón ;) ) y tiene que decidir qué hacer con él. El kernel lo que hace es, dependiendo si el paquete es para la propia maquina o para otra máquina, consultar las reglas de firewall y decidir qué hacer con el paquete según mande el firewall. Este es el camino que seguiría un paquete en el kernel:

El funcionamiento es simple: a iptables se le proporcionan unas reglas, especificando cada una de ellas unas determinadas características que debe cumplir un paquete. Además, se especifica para esa regla una acción o target. Las reglas tienen un orden, y cuando se recibe o se envía un paquete, las reglas se recorren en orden hasta que las condiciones que pide una de ellas se cumplen en el paquete, y la regla se activa realizando la acción que se le ha especificado.
Estas acciones se plasman en los que se denominan targets, que indican lo que se debe hacer con el paquete. Los más usados son bastante explícitos: ACCEPT, DROP y REJECT. En cuanto a los paquetes, el total del sistema de filtrado de paquetes del kernel se divide en tres tablas, cada una con varias cadenas (chains) a las que puede pertenecer un paquete, de la siguiente manera.
FILTER: Tabla por defecto, para los paquetes que se refieran a nuestra máquina
INPUT: Paquetes recibidos para nuestro sistema
FORWARD: Paquetes enrutados a través de nuestro sistema
OUTPUT: Paquetes generados en nuestro sistema y que son enviados


NAT: Tabla referida a los paquetes enrutados en un sistema con Masquerading
PREROUTING: Para alterar los paquetes según entren
OUTPUT: Para alterar paquetes generados localmente antes de ser enrutados
POSTROUTING: Para alterar los paquetes cuando están a punto para salir
MANGLE: Alteraciones más especiales de paquetes
PREROUTING: Para alterar los paquetes entrantes antes de ser enrutados
OUTPUT: Para alterar los paquetes generados localmente antes de enrutar

Especificación de reglas
Se hace con los siguientes parámetros (especificando aquellos que se necesite):
-p [protocolo]: Protocolo al que pertenece el paquete.
-s [origen]: dirección de origen del paquete, puede ser un nombre de host, una dirección IP normal, o una dirección de red (con máscara, de forma dirección/máscara).
-d [destino]: Al igual que el anterior, puede ser un nombre de host, dirección de red o dirección IP singular.
-i [interfaz-entrada]: Especificación del interfaz por el que se recibe el paquete.
-o [interfaz-salida]: Interfaz por el que se va a enviar el paquete.
Ventajas de Iptables
Ø     Establecer un perímetro confiable
Ø     Proteger la red de intrusiones
Ø     Proteger la información privada
Ø     Optimizar el proceso
Desventajas
Abuso. Al estar dispuesto a recibir peticiones de muchos usuarios y responderlas, es posible que haga algún trabajo que no toque. Por tanto, ha de controlar quién tiene acceso y quien no a sus servicios, cosa que normalmente es muy difícil.
Carga. Un proxy ha de hacer el trabajo de muchos usuarios.
Intromisión. Es un paso más entre origen y destino, y algunos usuarios pueden no querer pasar por el proxy. Y menos si hace de caché y guarda copias de los datos.
Incoherencia. Si hace de cache, es posible que se equivoque y dé una respuesta antigua cuando hay una más reciente en el recurso de destino. En realidad este problema no existe con los servidores proxy actuales, ya que se conectan con el servidor remoto para comprobar que la versión  que tiene en cache sigue siendo la misma que la existente en el servidor remoto.
Irregularidad. El hecho de que el proxy represente a más de un usuario da problemas en muchos escenarios, en concreto los que presuponen una comunicación directa entre 1 emisor y 1 receptor (como TCP/IP
 [!] -f: Especifica que la regla se refiere al segundo y siguientes fragmentos de un paquete fragmentado. Si se antepone!, se refiere sólo al primer paquete, o a los paquetes no fragmentados.
Y además, uno que nos permitirá elegir qué haremos con el paquete: -j [target]: Nos permite elegir el target al que se debe enviar ese paquete, esto es, la acción a llevar a cabo con él.
Git Tree
La versión de desarrollo actual de iptables se puede acceder en https: //git.netfilter.org/cgi-bin/gitweb.cgi?p=iptables.git, un resumen =.
Instantáneas de Desarrollo
Ahora también ofrecen imágenes diarias de Desarrollo. Ellos están disponibles en la siguiente ubicación: ftp://ftp.netfilter.org/pub/iptables/snapshot (o uno de nuestros espejos).
Cuál es netfilter.org
Netfilter es un conjunto de ganchos dentro del kernel de Linux que permite a los módulos del núcleo para registrar las funciones de devolución de llamada con la pila de red. Una función de devolución de llamada registrada continuación, se llama de nuevo para cada paquete que atraviesa el gancho respectivo dentro de la pila de red. netfilter.org se encuentra el software del marco de filtrado de paquetes en el interior del Linux 2.4.xy 2.6.x del kernel serie. Software comúnmente asociado con netfilter.org es iptables .netfilter.org se encuentra el software del marco de filtrado de paquetes en el interior del Linux 2.4.xy 2.6.x del kernel serie. Software comúnmente asociado con netfilter.org es iptables.
Iptables es una estructura de tabla genérica para la definición de conjuntos de reglas. Cada regla dentro de una tabla de IP consiste en un número de clasificadores (iptables partidos) y una acción conectado (objetivo iptables).
Características principales
Ø  filtrado de paquetes sin estado (IPv4 e IPv6)
Ø  stateful packet filtering (IPv4 e IPv6)
Ø  todas las clases de dirección de red y la traducción de puerto, por ejemplo, NAT / NAPT (IPv4 solamente)
Ø  infraestructura flexible y extensible
Ø  múltiples capas de la API para extensiones de 3 ª parte
Ø  Gran número de plugins / módulos mantenidos en depósito 'patch-o-matic "
¿Qué puedo hacer con netfilter / iptables?
Ø  construir firewalls de Internet basado en paquetes sin estado y filtrado activo
Ø  utilizar NAT y el enmascaramiento para acceso compartido a Internet si no tienen direcciones IP públicas suficientes
Ø  utilizar NAT para implementar proxies transparentes
Ø  ayudar a los sistemas de TC y iproute2 utilizados para construir sofisticado QoS routers y política
Ø  hacer manipulación de paquetes más (manipulación) como la alteración de los TOS / DSCP bits / ECN de la cabecera IP.
Configuración del servicio: iptables
 Descripción
Ø  Iptables es la aplicación encargada de gestionar de entre otros el firewall de Linux y todo lo relativo al enrutamiento de paquetes y red. Mientras no se añada ningún sistema de filtrado adicional a la arquitectura actual, es recomendable éste sistema de filtrados.
Ø  Para ello se ajustará la configuración de las reglas de filtrado iptables con las siguientes características:
Ø  Desde la propia máquina se puedan acceder a todos sus servicios(correo, servidor x ...)
Ø  Desde los routers de entrada, permitir únicamente el acceso a los puertos que se correspondan con los servicios ofrecidos (http/80, 21/ftp ...)
Ø  Desde la LAN (192.168.1.0/24, con la excepción del rango de routers) permitir el acceso a los servicios de ssh, web y webmin.
Ø  No permitir el resto de conexiones
 Actuaciones
·         Para activar las iptables y que se arranquen de forma automática al iniciar la máquina será necesario crear el siguiente archivo:
·         /etc/sysconfig/iptables
Configuración
·         Se deben modificar las reglas de filtrado, teniendo en cuenta los siguientes aspectos:
·         Desde la propia máquina se pueden acceder a todos sus servicios (correo, servidor x,...)
·         Se deben modificar las reglas de filtrado, teniendo en cuenta los siguientes aspectos:
·         Desde la propia máquina se pueden acceder a todos sus servicios (correo, servidor x, ...)
·         -A INPUT -i lo -j ACCEPT
·         -A OUTPUT -o lo -j ACCEPT
-          1 -Permite la salida de todos los paquetes por la interfície loopback, asi como la entrada a la máquina de todos los paquetes que lleguen por la interfície loopback
·         Permitir nuevos accesos remotos desde la LAN y routers (.1... .9) a los puertos ssh (22), ftp (20:21), ftp pasivo (50000:60000) y http (80)
·         -A INPUT -p tcp -m state -m tcp --dport 20 --state NEW -j ACCEPT
·         -A INPUT -p tcp -m state -m tcp --dport 21 --state NEW -j ACCEPT
·         -A INPUT -p tcp -m state -m tcp --dport 22 --state NEW -j ACCEPT
·         -A INPUT -p tcp -m state -m tcp --dport 80 --state NEW -j ACCEPT
·         -A INPUT -p tcp -m state -m tcp --dport 50000:60000 --state NEW -j
ACCEPT
·         Permite recibir las respuestas de los DNS configurados en /etc/resolv.conf
·         -A INPUT -p 50 -j ACCEPT
·         -A INPUT -p 51 -j ACCEPT
·         Permite la respuesta del Multicast DNS
·         -A INPUT -p udp -d 224.0.0.251 --dport 5353 -j ACCEPT
·         Impide el acceso a cualquier puerto tcp desde los routers -A INPUT –s 192.168.1.1:9 -j REJECT --reject-with icmp-host-prohibited
·         Desde la propia LAN (192.168.1.0/24, con la excepción del rango de routers) permitir el acceso a los servicios de webmin,  mysql y https
·         -A INPUT -p tcp -m state -m tcp --dport 443 --state NEW -j ACCEPT
·         -A INPUT -p tcp -m state -m tcp --dport 6714 --state NEW -j ACCEPT
·         -A INPUT -p tcp -m state -m tcp --dport 3306 --state NEW -j ACCEPT
·         Permite el acceso a los puertos 6714 (webmin), 3306 (mysql) y 443 (https) desde cualquier IP dentro de la red local (previamente a este punto están las reglas que impiden el acceso a estos puertos desde los routers)
·         A revisión: ping (icmp)
·         -A INPUT -p icmp --icmp-type any -j ACCEPT
·         Permitir el tráfico ya establecido.
·         -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
·         - 2 -Prohibir otros. -A INPUT -j REJECT --reject-with icmp-host-prohibited
·         Rechazan el resto de peticiones tanto TCP como UDP
·         Es muy importante el orden con el que se aplican las reglas.
·         Es recomendable aplicar las reglas progresivamente directamente con el comando iptables. por ejemplo para la primera regla mencionada anteriormente batíamos
·         Iptables -A INPUT -i lo -j ACCEPT
·         De esta forma iremos aplicando progresivamente las reglas de filtrado. Una vez terminadas de aplicar todas y comprobando que este es realmente el resultado que deseamos conseguir, utilizaremos el comando iptables-save o service Iptables save para generar el archivo /etc/sysconfig/iptables necesario para que se carguen automáticamente las reglas al inicial el servidor.



Reinicio y aplicación de las nuevas reglas
Ø  Para que las nuevas configuraciones estén activas se requerirá el reinicio del servicio, que recogerá la información del archivo  de configuración y aplicará las nuevas reglas en este momento.
Ø  service iptables restart
Ø  Nota: Se incluye en archivo de configuración complete para iptables ubicados es /etc/sysconfig/iptables en los anexos de esta misma unidad
Referencias
Ø  Para ampliar información consulta las siguientes referencias:
Ø  http://www.netfilter.org/
Ø  http://www.multicastdns.org/
      ¿Que es favshare.com?
Favshare es un espacio para almacenar compartir fotografías, cuyo acceso lo puedes realizar a través de FTP y en el que te damos 20 GB de disco gratis para que uses a tu antojo.
      CONFIGURAR FTP EN LINUX
Ø  Si queremos configurar el servidor ftp para unos usuarios anónimos, dejamos los valores por defecto que quedan en la instalación, creándonos el directorio por defecto /home/ftp.
Ø  Si por el contrario lo queremos configurar para usuarios con contraseña, nos crearemos tantos usuarios en /home como queramos permitir su acceso.
PREPARACIÓN DEL SISTEMA
Ø  Crearemos un usuario llamado invitado:
Ø  # sudo adduser invitado
Ø  # Introduzca la nueva contraseña de UNIX:
Ø  Al realizar esto se nos creará un nuevo directorio /home/invitado, con la contraseña que le hayamos configurado
Ø  Si no quisiéramos este directorio podemos cambiarlo con la órden:
Ø  # sudo usermod -d /media/DESCARGAS/ftp invitado
Ø  NOTA: “/media/DESCARGAS/ftp”, es un directorio creado en una partición fat32, fuera del directorio de Linux
INSTALACIÓN DEL FTP
Ø  # sudo apt-get install vsftpd
Ø  Después de instalarlo pasamos a la configuración del mismo:
Ø  # /etc/vsftpd.conf
Ø  En este ejemplo solo se han modificado las siguientes líneas para permitir la lectura y descarga de los ficheros compartidos, no se podría ni escribir ni eliminar nada de lo que figure:
Ø  1 - # Allow anonymous FTP? (Beware - allowed by default if you comment this out). PERMITO USUARIOS ANONIMOS
Ø  anonymous_enable=YES
Ø  2 - # Uncomment this to allow local users to log in. PERMITO USUARIOS LOCALES
Ø  local_enable=YES 
Ø  3 - # You may fully customise the login banner string: SALUDO
Ø  ftpd_banner=BIENVENIDO AL SERVIDOR 
Ø  4 - # chroot_list_enable below. CREAMOS UNA JAULA IMPIDIENDO PASAR A DIRECTORIOS NO PERMITIDOS
Ø  chroot_local_user=YES 
Ø  Ya por último para controlar el tiempo de sesión y el ancho de banda que ofrecemos:
Ø  Dentro del fichero de configuración (vsftpd.conf) algunas opciones interesantes que también podemos controlar son las siguientes:
Ø  #opciones de transferencia
Ø  #ancho banda por usuario anónimo 5kb
Ø  anon_max_rate=5100
Ø  #ancho de banda por usuario local 5kb
Ø  local_max_rate=5100
Ø  #número máximo clientes simultáneos
Ø  max_clients=5
Ø  #máximo conexiones por ip
Ø  max_per_ip=2
Ø  #envía al sistema
Ø  syslog_enable=yes
Ø  session_support=yes
FUNCIONAMIENTO DEL SERVIDOR FTP
·         sudo /etc/init.d/vsftpd start
·         sudo /etc/init.d/vsftpd stop
·         sudo /etc/init.d/vsftpd restart

Ventaja FTP
Así, las ventajas más importantes son el tipo de conexión, ya que es rápida y directa, y, además, es fácil, sencillo y cómodo en su forma de utilización. ¿Las desventajas? Prácticamente no existen, salvo esos agujerillos de inseguridad que habría que corregir. No dudéis en aprovechar todas las oportunidades que os ofrece este protocolo de transferencia de archivos.
Desventaja FTP
Este protocolo tiene un enorme inconveniente y es que, al proceder a su uso, el FTP corriente no encripta ni los archivos que se envían a las carpetas citadas ni la contraseña a través de la cual se puede acceder al servidor remoto, y por ende, al conjunto de archivos que se guardan en él. Ello, provoca que el FTP se considere un método bastante inseguro.

Aunque existe una profusa documentación, hoy en día no es de recibo editar un fichero de configuración "a pelo". Lo normal es partir de uno por defecto suministrado por el proveedor del sistema operativo, o bien hacer uso de las utilidades de configuración de que sendmail viene provisto.



En efecto. Los desarrolladores de sendmail, han previsto un conjunto de reglas pre-fabricadas, junto con un lenguaje de macros, que permite que a partir de un fichero de unas pocas líneas, generar un sendmail.cf completo y funcional, sin la engorrosa tarea de pensarlo y escribirlo.
Antes de empezar a describir dicho lenguaje, nos aseguraremos de tener las herramientas adecuadas. Deberemos tener instalados:
  • La herramienta de pre-proceso M4
  • La utilidad Make de berkeley (pmake ). El make de GNU no nos vale en este caso...
  • El paquete sendmail-cf. En caso de no tenerlo, lo podremos instalar desde el CD-Rom
En el directorio /usr/lib/sendmail-cf residen todas las herramientas de configuración. Encontramos los directorios:
  • cf Directorio de trabajo donde residen los ficheros de configuración maestros. En el directorio se incluyen multitud de ejemplos, para ser usados a modo de templates
  • domain Ficheros de definiciones relacionadas con los dominios y la resolución de nombres
  • ostype Definiciones relacionadas con el sistema operativo, normalmente referidas a las localizaciones de ficheros
  • m4 Conjunto de reglas maestras de generación de todas las opciones del fichero de configuración
  • Mailer Conjunto de reglas de definición de los diversos mailers
  • siteconfig Reglas de generación de las diversas opciones ( reglas O ) del sendmail.cf
  • feature Macros de generación de las diversas capacidades del sendmail.cf
  • hack Diversas macros para "trucos" y reglas especiales
Para generar un fichero de configuración, el proceso será el siguiente:
  • En el directorio "cf" editamos el fichero ".mc" maestro
  • Compilamos el fichero ".cf" resultante mediante el comando "pmake xxxxx.cf" siendo xxxxx el nombre del fichero maestro en caso de no disponer de la utilidad "pmake" el comando "m4 ../m4/cf.m4 file.mc > file.cf" hará el mismo efecto
  • copiamos el fichero .cf resultante a /etc/sendmail.cf
  • relanzamos el sendmail
El listado 4 nos ilustra el fichero de configuración que utiliza RedHat en sus distribuciones de correo:
divert(-1)
include(`../m4/cf.m4')
define(`confDEF_USER_ID',``8:12'')
OSTYPE(`linux')
undefine(`UUCP_RELAY')
undefine(`BITNET_RELAY')
FEATURE(redirect)
FEATURE(always_add_domain)
FEATURE(use_cw_file)
FEATURE(local_procmail)
MAILER(procmail)
MAILER(smtp)
HACK(check_mail3,`hash -a@JUNK /etc/mail/deny')
HACK(use_ip,`/etc/mail/ip_allow')
HACK(use_names,`/etc/mail/name_allow')
HACK(use_relayto,`/etc/mail/relay_allow')
HACK(check_rcpt4)
HACK(check_relay3)                   
Ejemplo de fichero de configuración de sendmail
Todo fichero de definición tendrá los siguientes campos:
Ø  Una entrada OSTYPE, que defina el sistema operativo. El valor "unknown" deja al make la opción de escogerlo automáticamente
Ø  Una o varias FEATURE's que definen las funcionalidades que va a tener esta configuración
Ø  Diversas entradas de declaración de los mailers que va a tener definidos este sistema. Al menos un mailer debe estar definido
Ø  Declaracion opcional de los diversos "trucos" que utiliza el sistema. En el ejemplo de RedHat, los hacks definen las diversas opciones que controlan el acceso y verificación de los remitentes y destinatarios del correo
Ø  En el caso de querer especificar una línea del sendmail,cf de manera literal, declararemos la entrada LOCAL_RULESET_XXXX y a continuación aquello que queramos que figure en el fichero
Por motivos de espacio es imposible detallar todas las opciones, features, y hacks pre-definidos. Existe un fichero /usr/lib/sendmail.cf/README que incluye la documentación completa, más otro /usr/lib/sendmail-cf/README.check que define los diversos hacks relacionados con el control del enrutamiento del correo y de las reglas de aceptación de este, para evitar el denominado "mail spamming" o abuso de nuestro servidor de correo para el envio indiscriminado de mail. Como siempre, la recomendación es probar y experimentar antes de dar una configuración por válida
El estudio y configuración de sendmail es una de las cosas que distinguen a un auténtico "gurú" de UNIX. Realmente no es difícil, sino que la versatilidad y potencia de sendmail obliga al administrador a saber exactamente qué es lo que desea hacer. El estudio comparativo de diversas configuraciones es obligado.
Hemos dejado a un lado el tema de seguridad. En tiempos Sendmail fué famoso por los múltiples agujeros que presentaba. Hoy en día solo se dan problemas cuando el administrador pone una configuración permisiva, o descuida los permisos de ficheros y directorios. Afortunadamente la versión 8.9.1 y superiores protestan firme y educadamente de los fallos de seguridad, obligando al administrador, a corregir dichos errores o a instruir expresamente a sendmail a obviarlos.
Por otro lado hay que destacar que sendmail depende íntimamente de la resolución de nombres DNS. De hecho existen unas entradas en las databases de DNS denominadas MX ( de Mail eXchanger ) que son exhaustivamente consultadas por sendmail para decidir las rutas a seguir por los mensajes de correo. Una mala configuración del DNS puede hacer caer drásticamente el rendimiento de nuestro sistema de correo, o lo que es peor, hacer que este no funcione en absoluto.
Si los lectores lo desean, dedicaremos un futuro número a una explicación detallada de todas las opciones de configuración de sendmail,
Una última nota: en el número anterior se dijo que el RFC822 no permite caracteres de 8 bits en las cabeceras. Si bien esto es cierto, existe un RFC que describe como se aplica el concepto de extensiones MIME para enviar caracteres de 8 bits en dichas cabeceras, manteniendo las reglas del RFC822

Introducción.
Es imprescindible primero estudiar y comprender, los conceptos descritos en el documento titulado  Acerca de Sendmail.
Es el más popular agente de transporte de correo (MTA o Mail Transporto Agent), responsable, quizá, de poco más del 70% del correo electrónico del mundo. Aunque por largo tiempo se le ha criticado por muchos incidentes de seguridad, lo cierto es que éstos siempre han sido resueltos en pocas horas.
Dovecot es un servidor de POP3 e IMAP, de código fuente abierto, que funciona en Linux y sistemas basados sobre Unix™ y diseñado con la seguridad como principal objetivo. Dovecot puede utilizar tanto el formato mbox como maildir y es compatible con las implementaciones de los servidores UW-IMAP y Courier IMAP.

Acerca de SASL y Cyrus SASL.
SASL (Simple Authentication and Security Layer) es una implementación diseñada para la seguridad de datos en protocolos de Internet. Desempareja los mecanismos de la autenticación desde protocolos de aplicaciones, permitiendo, en teoría, cualquier mecanismo de autenticación soportado por SASL, para ser utilizado en cualquier protocolo de aplicación que sea capaz de utilizar SASL. Actualmente SASL es un protocolo de la IETF (Internet Engineering Task Force) que ha sido propuesto como estándar. Está especificado en el RFC 2222 creado por John Meyers en la Universidad Carnegie Mellon.



Cyrus SASL es una implementación de SASL que puede ser utilizada del lado del servidor o bien del lado del cliente y que incluye como principales mecanismos de autenticación soportados a ANONYMOUS, CRAM-MD5, DIGEST-MD5, GSSAPI y PLAIN. El código fuente incluye también soporte para los mecanismos LOGIN, SRP, NTLM, OPT y KERBEROS_V4.
Equipamiento lógico necesario.
Ø  cyrus-sasl
Ø  cyrus-sasl-plain
Ø  dovecot
Ø  m4
Ø  make
Ø  sendmail-cf<
Ø  sendmail
Ventajas Send mail
SMTP está basado en la entrega punto-a-punto; un cliente SMTP contactará con el servidor SMTP del host de destino directamente para entregar el correo. Guardará el correo hasta que se haya copiado con éxito en el receptor. Esto difiere del principio de retransmisión común a muchos sistemas de correo en las que el correo atraviesa un número de host intermedios de la misma red y donde una transmisión con éxito implica sólo que el correo ha alcanzado correspondiente al siguiente salto el host.
Ventajas Send mail
Ø  Adquirir ningún software.
Ø  Es m  No dependerá de los servicios gratuitos (Hotmail, Yahoo!, etc)
Ø  Puede enviar correos masivos a grupos y garantizar que los mensajes son recibidos en las cuentas de los destinatarios
Ø  Puede crear todas las cuentas de re direccionamiento que necesite
Ø  Puede crear todos los grupos de correo que necesite
Ø  El correo puede ser consultado a través de Internet o descargado a  su PC
Ø  No necesita y fácil de manejar para el usuario o el administrador.




Desventajas Send mail
Ø  Si la cantidad de correos que envías y recibes es mucha es necesario que tu proveedor de servicio de correo te proporcione una gran cantidad de espacio de almacenamiento
Ø  Finalmente la decisión de usar uno u otro servicio y protocolo de gestión de correos depende de nuestras características como usuario, si tenemos una computadora para nuestro uso exclusivo o es compartida, de la cantidad de correos enviados y recibidos diariamente, entre otras cosas