Configuração de Servidor · 8 min read · Oct 28, 2025

Gateway NAT, Iptables, Redirecionamento de Portas, Configuração de DNS e DHCP - Servidor Ubuntu 8.10

Gateway NAT, Iptables, Redirecionamento de Portas, Configuração de DNS e DHCP - Servidor Ubuntu 8.10

Então você está muito pobre para comprar outro roteador caro e quer fazer as coisas você mesmo. Você encontrou o tutorial certo! Este tutorial mostrará como configurar um roteador Ubuntu 8.10 com NAT, redirecionamento de portas, um servidor DNS e um servidor DHCP.

Por que Ubuntu, você pergunta?

Não só o Ubuntu é um ótimo sistema operacional, como também é muito flexível e poderoso o suficiente para permitir que você comece a funcionar rapidamente! Nota: Reinicie seu computador após cada etapa. Isso garantirá que tudo esteja funcionando corretamente.

Algumas das coisas básicas que vamos precisar são…

DHCP – dhcp3-server
DNS – bind9
iptables – incluído /w ubuntu

Primeiro as coisas

Você vai precisar de 2 placas de rede. Pegue sua primeira placa de rede e conecte sua conexão WAN a ela. Você deve saber qual placa de rede é essa, eth0, eth1, etc… Se você não souber qual é, tente e erre, meu amigo.

Vamos apenas dizer que sua placa WAN será eth0 ( se for eth1, faça tudo igual, mas ajuste sua configuração de acordo). Queremos localizar o arquivo /etc/network/interfaces. Faça um VI no arquivo, como

sudo vi /etc/network/interfaces

Você deve ver no arquivo ( se você não tiver nada configurado ainda):

# Este arquivo descreve as interfaces de rede disponíveis em seu sistema
# e como ativá-las. Para mais informações, veja interfaces(5).
# A interface de rede de loopback
auto lo
iface lo inet loopback

Vamos adicionar isso ao arquivo. Como uma observação, se você não souber como usar o VI, use o nano ou aprenda VI.

auto eth0
iface eth0 inet dhcp

O código auto eth0 diz ao eth0 para iniciar na inicialização, semelhante a executar

sudo ifconfig eth0 up

O código iface eth0 inet dhcp diz à interface eth0 para procurar um servidor DHCP e obter suas informações a partir daí. Isso é importante se você estiver conectado a um modem a cabo, pois você vai querer obter um IP público do seu ISP.

O próximo passo é configurar sua placa de rede eth1. Esta será sua placa “LAN”.

Se você se lembra, nossa configuração /etc/network/interfaces parecia com

# Este arquivo descreve as interfaces de rede disponíveis em seu sistema
# e como ativá-las. Para mais informações, veja interfaces(5).
# A interface de rede de loopback
auto lo
iface lo inet loopback
# A interface de rede primária
auto eth0
iface eth0 inet dhcp

Vamos entrar novamente no arquivo interfaces e adicionar mais algumas linhas:

sudo vi /etc/network/interfaces

Adicione estas linhas ao final do arquivo.

auto eth1
iface eth1 inet static
        address         172.17.207.121
        netmask         255.255.255.0
        broadcast       172.17.207.255
        network         172.17.207.0

Isso apenas lhe dá um endereço IP estático para seu servidor na sua placa LAN.

Seu arquivo agora deve parecer assim.

# Este arquivo descreve as interfaces de rede disponíveis em seu sistema
# e como ativá-las. Para mais informações, veja interfaces(5).
# A interface de rede de loopback
auto lo
iface lo inet loopback
# A interface de rede primária
auto eth0
iface eth0 inet dhcp
auto eth1
iface eth1 inet static
        address         172.17.207.121
        netmask         255.255.255.0
        broadcast       172.17.207.255
        network         172.17.207.0

Agora, antes que nos esqueçamos, vamos editar seu arquivo /etc/hosts.

sudo vi /etc/hosts

Faça o arquivo parecer como o meu, embora se você chamar seu servidor de userve ou myserver, você pode mudar isso.

Note também o nome de domínio asus.local, é uma boa ideia usar o seu, como mydomain.local, mas você pode usar o que eu tenho para fins de aprendizado.

Usamos .local porque é fácil de lembrar e não é público, então não interferiremos em nada.

127.0.0.1       localhost server.localhost
172.17.207.121  server.asus.local server asus.local

Agora que temos nossas interfaces configuradas, vamos instalar e configurar um servidor DHCP. Para instalar o servidor DHCP, execute o comando

sudo apt-get install dhcp3-server

Vamos editar o arquivo dhcpd.conf. Comece executando o comando

sudo vi /etc/dhcp3/dhcpd.conf

Agora, se houver algo nesse arquivo, REMOVA.

Copie e cole isso no seu arquivo, depois escreva e saia.

ddns-update-style none;
option domain-name "whatever.local"; //mude isso para algo que você queira.local, como mydomain.local
option domain-name-servers 172.17.207.121, 24.92.226.41; //você também pode querer mudar esse segundo servidor DNS para o servidor DNS local do seu ISP
option routers 172.17.207.121;
default-lease-time 42300;
max-lease-time 84600;
authoritative;
log-facility local7;
subnet 172.17.0.0 netmask 255.255.255.0 {
        range 172.17.207.1 172.17.207.100; //você pode expandir o intervalo apenas mudando .100 para .254 ou algo assim
}

Agora execute o comando

sudo /etc/init.d/dhcp3-server start

Isso iniciará seu servidor DHCP e podemos rotular esta parte como CONCLUÍDA.

Passando para… DNS

Bind é o pacote DNS que usaremos. Para instalar isso, basta executar

sudo apt-get install bind9

Isso fará o download e instalará nosso servidor bind.

Comece executando o comando

vi /etc/bind/named.conf

Em seguida, remova tudo no arquivo e procure meus comentários, geralmente indicados por //.

// Este é o arquivo de configuração primário para o servidor DNS BIND chamado. // Por favor, leia /usr/share/doc/bind9/README.Debian.gz para informações sobre a // estrutura dos arquivos de configuração BIND no Debian, *ANTES* de personalizar // este arquivo de configuração. // Se você está apenas adicionando zonas, por favor, faça isso em /etc/bind/named.conf.local include "/etc/bind/named.conf.options"; // prime o servidor com conhecimento dos servidores raiz zone "." { type hint; file "/etc/bind/db.root"; }; // seja autoritativo para as zonas de encaminhamento e reversas do localhost, e para // zonas de broadcast conforme RFC 1912 zone "asus.local" { //mude asus.local para o que você nomeou seu domínio, como mydomain.local type master; file "/etc/bind/zones/asus.local.db"; //este arquivo ou pasta não existe, então precisaremos criá-lo }; zone "207.17.172.in-addr.arpa" { type master; file "/etc/bind/zones/rev.207.17.172.in-addr.arpa";//este arquivo não existe, então também precisaremos criá-lo }; zone "localhost" { type master; file "/etc/bind/db.local"; }; zone "127.in-addr.arpa" { type master; file "/etc/bind/db.127"; }; zone "0.in-addr.arpa" { type master; file "/etc/bind/db.0"; }; zone "255.in-addr.arpa" { type master; file "/etc/bind/db.255"; }; include "/etc/bind/named.conf.local";

Antes de podermos criar os dois arquivos asus.local.db e rev.207.17.172.in-addr.arpa, precisamos editar outro arquivo. Então

sudo vi /etc/bind/named.conf.options

Remova tudo no arquivo e use isso…

options {
        directory "/var/cache/bind";
        // Se houver um firewall entre você e os servidores de nomes que você deseja
        // conversar, pode ser necessário corrigir o firewall para permitir múltiplas
        // portas para conversar.  Veja http://www.kb.cert.org/vuls/id/800113
        // Se seu ISP forneceu um ou mais endereços IP para servidores de nomes estáveis,
        // você provavelmente deseja usá-los como encaminhadores.
        // Descomente o bloco a seguir e insira os endereços substituindo
        // o espaço reservado de todos os 0's.
         forwarders {
          24.92.226.41; //muito importante, mude isso para o(s) servidor(es) DNS LOCAL do seu ISP
      24.92.224.40;
         };
        auth-nxdomain no;    # conforme RFC1035
        listen-on-v6 { any; };
};

Preste atenção aos comentários, eles dizem para você MUDAR nosso(s) endereço(s) de encaminhadores para o(s) DNS do seu ISP LOCAL.

Em seguida, vá para o diretório bind:

cd /etc/bind/
sudo mkdir zones
cd zones
sudo vi asus.local.db

(ou use seu nome de domínio, como mydomain.local.db.)

Uma vez que você esteja no arquivo asus.local.db ou no arquivo mydomain.local.db (o que você chamou), copie e cole isso, faça as alterações apropriadas para o nome do seu domínio.

$ORIGIN .
$TTL 4000 ;
asus.local.     IN SOA  server.asus.local. admin.asus.local. (
2007031001      ; serial
28800           ; refresh
3600            ; retry
604800          ; expire
38400           ; min
)
                NS      server.asus.local.
$ORIGIN asus.local.
                IN      A       172.17.207.121
www             IN      A       172.17.207.121 //um exemplo
server          IN      A       172.17.207.121 //um exemplo
macpro          IN      A       172.17.207.4   //um exemplo

Se você fizer um nslookup macpro, você receberá 172.17.207.4 como resposta, então mude os nomes de domínio e IPs de acordo com suas configurações.

Em seguida, vamos editar o arquivo rev.207.17.172.in-addr.arpa que ainda não existe. Mas ele existirá assim que o salvamos. Então, supondo que você ainda esteja na pasta zones:

vi rev.207.17.172.in-addr.arpa

Copie e cole o que eu tenho aqui, fazendo as alterações apropriadas.

$ORIGIN .
$TTL 28800      ; 8 horas
207.17.172.IN-ADDR.ARPA IN SOA server.asus.local. admin.asus.local. (
                                2008110601 ; serial
                                28800      ; refresh (8 horas)
                                7200       ; retry (2 horas)
                                604800     ; expire (1 semana)
                                86400      ; mínimo (1 dia)
                                )
                        NS      server.asus.local.
$ORIGIN 207.17.172.IN-ADDR.ARPA.
4                     PTR    macpro.asus.local.

Então agora, se você fizer uma pesquisa reversa em 172.17.207.4, você obterá macpro.asus.local.

Agora execute o comando para iniciar o named:

sudo /etc/init.d/named start

Se não iniciar, verifique os logs em /var/logs.

Por último, mas não menos importante, IPTABLES

Primeiro, precisamos editar o sysctl.conf na pasta /etc/, então:

sudo vi /etc/sysctl.conf

Descomente a linha 28. Isso significa remover o # na frente dela. A linha deve ser net.ipv4.ip_forward=1

Em seguida, vamos para o rc.local:

sudo vi /etc/rc.local

Adicione estas duas linhas ao final do arquivo:

/sbin/iptables -P FORWARD ACCEPT
/sbin/iptables --table nat -A POSTROUTING -o eth0 -j MASQUERADE

Isso configurará seu gateway usando iptables. Você pode usar iptables para tornar isso mais seguro do que esta configuração básica.

Para redirecionar portas, você pode adicionar algo assim ao final do arquivo rc.local.

/sbin/iptables -t nat -A PREROUTING -p tcp -i eth0 -d jgibbs.dyndns.org --dport 3389 -j DNAT --to 172.17.207.4:3389

A longa linha acima irá redirecionar todo o tráfego de entrada na porta 3389 para o IP 172.17.207.4, para que eu possa acessar a área de trabalho remota do meu Windows de fora da minha rede.

Você pode fazer isso com quaisquer portas que desejar.

REINICIE!

Além disso, relate quaisquer problemas e eu corrigirei este tutorial com atualizações. Obrigado, Jeremy user gibbsj.

Share: X/Twitter LinkedIn

Receba novas postagens na sua caixa de entrada

Sem spam. Cancele a assinatura a qualquer momento.