Estoy ejecutando un servidor pequeño donde quiero bloquear algunas IP especiales usando /etc/hosts.deny . Si hago una entrada como
ALL: <IP>
solo el servicio ssh se bloqueará para IP . Todos los demás servicios como ftp, http, etc. todavía son accesibles por IP . ¿ El archivo host.deny no define reglas globales?
Respuestas:
/etc/hosts.deny y /etc/hosts.allow son parte de TCP-Wrapper, un programa desarrollado por Wietse Venema para negar el acceso a los piratas informáticos en los años noventa.
TCP wrappers controla el acceso TCP de los procesos ejecutados desde /etc/inetd.conf. La mayoría de las distribuciones modernas de Linux (todas basadas en Debian, Arch Linux, ...) ya no tienen inetd .
TCPwrapper todavía controla algunas aplicaciones porque están compiladas con la biblioteca libwrap y, por lo tanto, son compatibles con tcpwrapper incluso si no se ejecutan desde /etc/inetd.conf. Estas aplicaciones incluyen, a mi leal saber y entender, telnet, ssh, sendmail, pop3 y stunnel.
Puede verificar si su aplicación es compatible con tcp-wrapper mediante el comando de cadenas :
o por medio de ldd :
La forma correcta, hoy en día, de impedir que intrusos accedan a su sistema, es usar iptables :
fuente
nfblock
. Se basa en nfqueue (envía el tráfico que desea filtrar al objetivo NFQUEUE) y luego nfblock lo aprueba o niega en función de una lista de bloqueo.Desde la memoria, sshd solo lee hosts.allow / hosts.deny. Deberá configurar un firewall para restringir otros servicios.
fuente
Solo los servicios que usan el contenedor tcpd o sshd, prestan atención a hosts.deny y hosts.allow. La mayoría de los servicios utilizan su propio contenedor TCP o el contenedor x? Inetd.
Soure: http://its.virginia.edu/unixsys/sec/hosts.html
PD: Hace algún tiempo me encontré con una nota que decía que xinitd se puede compilar para admitir libwrap (o algo que afecte) que usa hosts.deny / allow.
fuente