Redirecionamento · 5 min read · Jan 15, 2026

Encaminhamento de Portas Com rinetd No Debian Etch

Encaminhamento de Portas Com rinetd No Debian Etch

Versão 1.0
Autor: Falko Timme

Este artigo mostra como você pode fazer encaminhamento de portas com rinetd no Debian Etch. rinetd permite que você encaminhe portas de um sistema para outro. Isso é útil se você moveu seus sites para um novo servidor com um endereço IP diferente. Claro, você modificou seus registros DNS, mas pode levar alguns dias até que as alterações no DNS se tornem efetivas, e é aí que o rinetd entra em cena. Se os clientes ainda usarem os registros DNS antigos, o rinetd pode redirecioná-los para o novo servidor. Com o rinetd, você não precisa mexer nas regras do iptables.

Eu não dou nenhuma garantia de que isso funcionará para você!

1 Nota Preliminar

Neste exemplo, estou tentando redirecionar o tráfego HTTP (porta 80) do endereço IP 192.168.0.101 para o endereço IP 192.168.0.100.

Por favor, note que o rinetd não é capaz de redirecionar FTP porque o FTP requer mais de um socket.

2 Instalando E Configurando rinetd

Para instalar o rinetd, simplesmente execute

apt-get install rinetd

O arquivo de configuração do rinetd é /etc/rinetd.conf. Para encaminhar o tráfego HTTP de 192.168.0.101 para 192.168.0.100, adicionamos a linha 192.168.0.101 80 192.168.0.100 80:

vi /etc/rinetd.conf

| # # este é o arquivo de configuração para rinetd, o servidor de redirecionamento da internet # # você pode especificar regras globais de permissão e negação aqui # apenas endereços IP são correspondidos, nomes de host não podem ser especificados aqui # os caracteres curinga que você pode usar são * e ? # # permitir 192.168.2.* # negar 192.168.2.1? # # as regras de encaminhamento vêm aqui # # você pode especificar regras de permissão e negação após uma regra de encaminhamento específica # para aplicar apenas a essa regra de encaminhamento # # bindadress bindport connectaddress connectport 192.168.0.101 80 192.168.0.100 80 # informações de registro logfile /var/log/rinetd.log # descomente a linha a seguir se você quiser o formato de registro estilo servidor web # logcommon |

Então reiniciamos o rinetd:

/etc/init.d/rinetd restart

Agora execute

netstat -tap

e você deve ver que o rinetd está escutando na porta 80 ( www):

server2:~# netstat -tap
Conexões Ativas da Internet (servidores e estabelecidas)
Proto Recv-Q Send-Q Endereço Local Endereço Estrangeiro Estado PID/Nome do 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:~#

Agora, quando você direciona seu navegador para uma página da web no endereço IP 192.168.0.101, ele deve receber essa página do servidor com o endereço IP 192.168.0.100.

Em vez de especificar os números das portas em /etc/rinetd.conf, você também pode usar os nomes dos serviços. Os nomes dos serviços estão armazenados em /etc/services, então, quando você abrir esse arquivo, verá que o serviço para a porta 80 é chamado www no Debian.

grep 80 /etc/services

server2:~# 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:~#

Então você poderia usar a seguinte configuração em /etc/rinetd.conf, que tem o mesmo efeito que a primeira:

vi /etc/rinetd.conf

| # # este é o arquivo de configuração para rinetd, o servidor de redirecionamento da internet # # você pode especificar regras globais de permissão e negação aqui # apenas endereços IP são correspondidos, nomes de host não podem ser especificados aqui # os caracteres curinga que você pode usar são * e ? # # permitir 192.168.2.* # negar 192.168.2.1? # # as regras de encaminhamento vêm aqui # # você pode especificar regras de permissão e negação após uma regra de encaminhamento específica # para aplicar apenas a essa regra de encaminhamento # # bindadress bindport connectaddress connectport 192.168.0.101 www 192.168.0.100 www # informações de registro logfile /var/log/rinetd.log # descomente a linha a seguir se você quiser o formato de registro estilo servidor web # logcommon |

E para fazer o rinetd escutar em todos os endereços IP que estão configurados no sistema onde está instalado, podemos usar 0.0.0.0 como o bindaddress:

vi /etc/rinetd.conf

| # # este é o arquivo de configuração para rinetd, o servidor de redirecionamento da internet # # você pode especificar regras globais de permissão e negação aqui # apenas endereços IP são correspondidos, nomes de host não podem ser especificados aqui # os caracteres curinga que você pode usar são * e ? # # permitir 192.168.2.* # negar 192.168.2.1? # # as regras de encaminhamento vêm aqui # # você pode especificar regras de permissão e negação após uma regra de encaminhamento específica # para aplicar apenas a essa regra de encaminhamento # # bindadress bindport connectaddress connectport 0.0.0.0 80 192.168.0.100 80 # informações de registro logfile /var/log/rinetd.log # descomente a linha a seguir se você quiser o formato de registro estilo servidor web # logcommon |

Depois de reiniciar o rinetd…

/etc/init.d/rinetd restart

… o rinetd deve agora escutar em todas as interfaces ( *:www):

netstat -tap

server2:~# netstat -tap
Conexões Ativas da Internet (servidores e estabelecidas)
Proto Recv-Q Send-Q Endereço Local Endereço Estrangeiro Estado PID/Nome do 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 148 server2.example.com:ssh ::ffff:192.168.0.3:4776 ESTABLISHED2409/0
server2:~#

3 Links

Share: X/Twitter LinkedIn

Receba novas postagens na sua caixa de entrada

Sem spam. Cancele a assinatura a qualquer momento.