Redirección de Puertos · 4 min read · Jan 15, 2026
Reenvío de Puertos Con rinetd En Debian Etch
Reenvío de Puertos Con rinetd En Debian Etch
Versión 1.0
Autor: Falko Timme
Este artículo muestra cómo puedes hacer reenvío de puertos con rinetd en Debian Etch. rinetd te permite reenviar puertos de un sistema a otro. Esto es útil si has movido tus sitios web a un nuevo servidor con una dirección IP diferente. Por supuesto, has modificado tus registros DNS, pero puede tardar unos días hasta que los cambios de DNS se hagan efectivos, y ahí es donde entra en juego rinetd. Si los clientes aún utilizan los antiguos registros DNS, rinetd puede redirigirlos al nuevo servidor. Con rinetd, no tienes que jugar con las reglas de iptables.
¡No emito ninguna garantía de que esto funcionará para ti!
1 Nota Preliminar
En este ejemplo estoy tratando de redirigir el tráfico HTTP (puerto 80) desde la dirección IP 192.168.0.101 a la dirección IP 192.168.0.100.
Por favor, ten en cuenta que rinetd no puede redirigir FTP porque FTP requiere más de un socket.
2 Instalando Y Configurando rinetd
Para instalar rinetd, simplemente ejecutamos
apt-get install rinetdEl archivo de configuración de rinetd es /etc/rinetd.conf. Para reenviar el tráfico HTTP desde 192.168.0.101 a 192.168.0.100, añadimos la línea 192.168.0.101 80 192.168.0.100 80:
vi /etc/rinetd.conf| # # este es el archivo de configuración para rinetd, el servidor de redirección de internet # # puedes especificar reglas globales de permitir y denegar aquí # solo se coinciden direcciones IP, no se pueden especificar nombres de host aquí # los comodines que puedes usar son * y ? # # permitir 192.168.2.* # denegar 192.168.2.1? # # las reglas de reenvío vienen aquí # # puedes especificar reglas de permitir y denegar después de una regla de reenvío específica # para aplicar solo a esa regla de reenvío # # bindadress bindport connectaddress connectport 192.168.0.101 80 192.168.0.100 80 # información de registro logfile /var/log/rinetd.log # descomenta la siguiente línea si deseas el formato de archivo de registro estilo servidor web # logcommon |
Luego reiniciamos rinetd:
/etc/init.d/rinetd restartAhora ejecuta
netstat -tapy deberías ver que rinetd está escuchando en el puerto 80 ( www):
server2:~# netstat -tap
Conexiones de Internet activas (servidores y establecidas)
Proto Recv-Q Send-Q Dirección Local Dirección Extranjera Estado PID/Nombre del Programa
tcp 0 0 :sunrpc : LISTEN 1956/portmap
tcp 0 0 server2.example.com:www : LISTEN 2485/rinetd
tcp 0 0 :3025 : LISTEN 2347/rpc.statd
tcp 0 0 :auth : LISTEN 2306/inetd
tcp 0 0 localhost.localdom:smtp : LISTEN 2294/exim4
tcp6 0 0 :ssh : LISTEN 2326/sshd
tcp6 0 0 server2.example.com:ssh ::ffff:192.168.0.3:4776 ESTABLISHED2409/0
server2:~#
Ahora, cuando dirijas tu navegador a una página web en la dirección IP 192.168.0.101, debería recibir esa página del servidor con la dirección IP 192.168.0.100.
En lugar de especificar los números de puerto en /etc/rinetd.conf, también puedes usar los nombres de servicio. Los nombres de servicio se almacenan en /etc/services, así que cuando abras ese archivo, verás que el servicio para el puerto 80 se llama www en Debian.
grep 80 /etc/servicesserver2:~# grep 80 /etc/services
www 80/tcp http # WorldWideWeb HTTP
www 80/udp # HyperText Transfer Protocol
socks 1080/tcp # socks proxy server
socks 1080/udp
amanda 10080/tcp # amanda backup services
amanda 10080/udp
omirr 808/tcp omirrd # online mirror
omirr 808/udp omirrd
canna 5680/tcp # cannaserver
zope-ftp 8021/tcp # zope management by ftp
webcache 8080/tcp # WWW caching service
tproxy 8081/tcp # Transparent Proxy
omniorb 8088/tcp # OmniORB
omniorb 8088/udp
server2:~#
Así que podrías usar la siguiente configuración en /etc/rinetd.conf, tiene el mismo efecto que la primera:
vi /etc/rinetd.conf| # # este es el archivo de configuración para rinetd, el servidor de redirección de internet # # puedes especificar reglas globales de permitir y denegar aquí # solo se coinciden direcciones IP, no se pueden especificar nombres de host aquí # los comodines que puedes usar son * y ? # # permitir 192.168.2.* # denegar 192.168.2.1? # # las reglas de reenvío vienen aquí # # puedes especificar reglas de permitir y denegar después de una regla de reenvío específica # para aplicar solo a esa regla de reenvío # # bindadress bindport connectaddress connectport 192.168.0.101 www 192.168.0.100 www # información de registro logfile /var/log/rinetd.log # descomenta la siguiente línea si deseas el formato de archivo de registro estilo servidor web # logcommon |
Y para hacer que rinetd escuche en todas las direcciones IP que están configuradas en el sistema donde está instalado, podemos usar 0.0.0.0 como la dirección de enlace:
vi /etc/rinetd.conf| # # este es el archivo de configuración para rinetd, el servidor de redirección de internet # # puedes especificar reglas globales de permitir y denegar aquí # solo se coinciden direcciones IP, no se pueden especificar nombres de host aquí # los comodines que puedes usar son * y ? # # permitir 192.168.2.* # denegar 192.168.2.1? # # las reglas de reenvío vienen aquí # # puedes especificar reglas de permitir y denegar después de una regla de reenvío específica # para aplicar solo a esa regla de reenvío # # bindadress bindport connectaddress connectport 0.0.0.0 80 192.168.0.100 80 # información de registro logfile /var/log/rinetd.log # descomenta la siguiente línea si deseas el formato de archivo de registro estilo servidor web # logcommon |
Después de que hayas reiniciado rinetd…
/etc/init.d/rinetd restart… rinetd debería ahora escuchar en todas las interfaces ( *:www):
netstat -tapserver2:~# netstat -tap
Conexiones de Internet activas (servidores y establecidas)
Proto Recv-Q Send-Q Dirección Local Dirección Extranjera Estado PID/Nombre del Programa
tcp 0 0 :sunrpc : LISTEN 1956/portmap
**tcp 0 0 :www : LISTEN 2503/rinetd*
tcp 0 0 :3025 : LISTEN 2347/rpc.statd
tcp 0 0 :auth : LISTEN 2306/inetd
tcp 0 0 localhost.localdom:smtp : LISTEN 2294/exim4
tcp 0 0 server2.example.com:www 192.168.0.3:4798 TIME_WAIT -
tcp6 0 0 :ssh : LISTEN 2326/sshd
tcp6 0 0 server2.example.com:ssh ::ffff:192.168.0.3:4776 ESTABLISHED2409/0
server2:~#
3 Enlaces
- rinetd: http://www.boutell.com/rinetd
- Debian: http://www.debian.org
Recibe nuevas publicaciones en tu bandeja de entrada.
No spam. Cancela la suscripción en cualquier momento.