Product SiteDocumentation Site

4.12. Uso de tcpwrappers

TCP wrappers were developed when there were no real packet filters available and access control was needed. Nevertheless, they're still very interesting and useful. The TCP wrappers allow you to allow or deny a service for a host or a domain and define a default allow or deny rule (all performed on the application level). If you want more information take a look at hosts_access(5) manual page.
Muchos servicios instalados en Debian son cualquiera de estos dos:
  • lanzó a través del servicio del tcpwrapper (tcpd)
  • compiló con el soporte libwrapper incorporado.
On the one hand, for services configured in /etc/inetd.conf (this includes telnet, ftp, netbios, swat and finger) you will see that the configuration file executes /usr/sbin/tcpd first. On the other hand, even if a service is not launched by the inetd superdaemon, support for the tcp wrappers rules can be compiled into it. Services compiled with tcp wrappers in Debian include ssh, portmap, in.talk, rpc.statd, rpc.mountd, gdm, oaf (the GNOME activator daemon), nessus and many others.
To see which packages use tcpwrappers [24] try:
  $ apt-cache rdepends libwrap0
Tenga en cuenta esto cuando el tcpchk está avanzando. Usted puede agregar servicios en que se unen a la biblioteca de la envoltura de los archivos host.deny y hosts.allow pero los tcpchk advertirá que este no puede encontrar esos servicios desde que parece para ellos en /etc/inetd.conf (el manpage no es totalmente exacto aquí).
Ahora, aquí viene un truco pequeño, y probablemente la intrusión más pequeña del sistema de descubrimiento disponible. En general, usted debe tener una política decente del cortafuego como una primera línea, y envolturas del tcp como la segunda línea de defensa. Un truco pequeño es poner un comando SPAWN [25]en /etc/hosts.deny que envía correos a root siempre que hay un servicio negado en las envolturas de los gatillos:
  ALL: ALL: SPAWN ( \
    echo -e "\n\
    TCP Wrappers\: Connection refused\n\
    By\: $(uname -n)\n\
    Process\: %d (pid %p)\n\
    User\: %u\n\
    Host\: %c\n\
    Date\: $(date)\n\
  " | /usr/bin/mail -s "Connection to %d blocked" root) &
Beware (tenga cuidado): El ejemplo anterior impreso puede fácilmente ser DoSed por estar haciendo las muchas conexiones en un período corto de tiempo. Muchos correos electrónicos significan mucho del archivo I/O para enviar únicamente unos correos.


[24] On older Debian releases you might need to do this:
  $ apt-cache showpkg libwrap0 | egrep '^[[:space:]]' | sort -u | \
        sed 's/,libwrap0$//;s/^[[:space:]]\+//'
[25] beware of the case here since spawn will not work