TCPWrappers

Linux
Como muchos sabran me aceptaron como practicante en Conectiva Perú y hoy fue mi primer dia.

Como primera "mision" me mandaron a investigar sobre TCPWrappers, ya que habian unos problemas para configurarlo ya que la Oficina cuenta con conexion a internet por Speedy con IP Dinamica, por lo cual tenia que agregarse al hosts.allow el host dinamico que tiene la empresa, pero ahi se presentaba otro problema, ya que el tcpd resuelve el IP del host, y luego vuelve a resolver el host, dando este ultimo como desultado un host de speedy, algo asi como ($IP).speedy.com.pe y al no coincidir con el host inicial denegaba el acceso, asi que habia que ingeniarselas para poder crear una regla, entre otras cosas descubri que en el hosts.allow se pueden agregar shell_commands para hacer las reglas por mas que tabo se haya burlado de mi cuando mecione el tema ya que no sabia que esto era posible, lo cual nunca pude lograr hacer, no llegue a darle exactamente como era la jugada. Pero llegue a otro solucion.

Buscando commandos para agregar al hosts.allow ya tenia un script que me resolvia el IP del hosts, ahora el problema era como meterlo al hosts.allow, asi que decidi hacer que el script cree el hosts.allow, al final el script quedo asi:

#!/bin/bash
ip=$(host url.del.host | awk {'print $4'}); 
#guarda el IP 
#en la variable $ip
echo sshd: $ip > /etc/hosts.allow 
# escribe en el archivo /etc/hosts.allow la 
# regla q permite toda conexion desde la IP de 
# la variable ip


Ahora tengo que leer sobre nagios y levantar mañana miercoles un servidor con Debian para Nagios y unas cosas mas para testearlas antes de usarlas para produccion.

Trackbacks

    No Trackbacks

Comments

Display comments as (Linear | Threaded)

  1. breno says:

    No se que es lo que quieres hacer exactamente pero una manera bastante facil de correr comandos arbitrarios con tcpwrappers es usar la facilidad de 'twist' que incluye para redirigir la conexion hacia un comando cualquiera, para muestra un boton: Imaginemos que quiero limitar el acceso a un ftpd a toda IP que no este explicitamente autorizada. Si denegara el acceso utilizando netfilter solo podria terminar la conexion, eso seria todo, al utilizar tcpwrappers/tcpd que se encuentran en un nivel superior puede redirigir el control a una aplicacion con twist: in.ftpd : ALL : severity auth.info : twist /bin/echo "No esta permitido su acceso - Access Forbidden" Ahora los clientes que se conecten y que no esten dentro de los ACL's permitidos recibiran ese mensaje :-)

  2. renkho says:

    ok como te explicaba en el IRC pero como no contestabas aqui lo dejo: creas un archivo por ejemplo: http://www.renkho.org/ip.txt lo bajas y lo renombras a .php y cambias el "ALL:" por "ftp:" por ejemplo, el concepto es sencillo pones eso en algun servidor web y lo que haces desde tu red con conexion speedy q tiene ip dinamico es: wget http://www.server.com/ip.php ahi captura la IP q tienes y luego lo direxionas al host.allow: cat ip.php > /etc/host.allow y ese host.allow lo subes al server en cuestion al q quieres q tu red tenga acceso lo subes via scp por ejemplo. al menos fue lo que entendi de tu problema, espero te sirva. Suerte


Add Comment



To prevent automated Bots from commentspamming, please enter the string you see in the image below in the appropriate input box. Your comment will only be submitted if the strings match. Please ensure that your browser supports and accepts cookies, or your comment cannot be verified correctly.
CAPTCHA

Standard emoticons like :-) and ;-) are converted to images.