Configurando DHCP

1. Configurando DHCP

Guilherme José Schneider
gjschneider92

(usa openSUSE)

Enviado em 13/07/2011 - 22:25h

Boa noite pessoal tudo bem?
Bem, estou tentando configurar um pequeno servidor DHCP, somente para receber a internet pela wlan e destribuir pela eth0.

Código:

ddns-update-style none;
default-lease-time 600;
max-lease-time 7200;
authoritative;

subnet 10.1.1.0 netmask 255.255.255.0 {
range 10.1.1.150 10.1.1.210;
option routers 10.1.1.5;
option domain-name-servers 8.8.8.8,8.8.4.4;
option broadcast-address 10.1.1.255;
}

Não estaria faltando alguma linha que diz que o sinal vem da wlan e sai pela eth0? Se não for essa a questão, o que eu estaria fazendo de errado?

Desde já agradeço.



  


2. Re: Configurando DHCP

Aline
aline.abreu

(usa Debian)

Enviado em 14/07/2011 - 00:07h

Você precisa fazer o encaminhamento pelo firewall, assim fica bem mais seguro.
Seu servidor tem duas placas de rede?

Aqui tem um exemplo de firewall com algumas coisas simples:

#!/bin/sh
############################################
# rc.firewall #
# Uso: rc.firewall start|stop|restart #
############################################

firewall_start() {
echo "==========================================="
echo "| :: SETANDO A CONFIGURAÇÃO DO IPTABLES :: |"
echo "==========================================="

# Limpa as regras
iptables -F INPUT
iptables -F OUTPUT
iptables -F FORWARD

echo "Limpando todas as regras ......................................................................[ OK ]"

# Definindo a polí­tica default das cadeias
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT

echo "Setando as regras padrão .....................................................................[ OK ]"

# Desabilitando o tráfego IP
echo "0" > /proc/sys/net/ipv4/ip_forward

echo "Setando ip_foward .............................................................................[ OK ]"

# Configurando a proteção anti-spoofing
for spoofing in /proc/sys/net/ipv4/conf/*/rp_filter; do
echo "1" > $spoofing
done

# Carregando os modulos do iptables
modprobe ip_tables
modprobe iptable_filter
modprobe iptable_mangle
modprobe iptable_nat
modprobe ipt_MASQUERADE
echo "Carregando módulos do iptables ...............................................................[ OK ]"

# Agora, vamos definir o que pode passar e o que não pode

# Cadeia de entrada
# LOCALHOST - ACEITA TODOS OS PACOTES
iptables -A INPUT -i lo -j ACCEPT

echo "Bloquenado pacote ICMP.........................................................................[ OK ]"
#Bloqueando pacote ICMP
iptables -A INPUT -p icmp -j ACCEPT


# Create a reject-and-log-SSH-Bruteforce chain to forward things to.
iptables -N REJECT-SSH
iptables -A REJECT-SSH -j DROP -m recent --rcheck --name SSH --seconds 60 --hitcount 10
iptables -A REJECT-SSH -j LOG --log-prefix SSH-Bruteforce:
iptables -A REJECT-SSH -j REJECT -p tcp --reject-with tcp-reset
iptables -A REJECT-SSH -j REJECT

# Kill SSH brute-force attacks. Allow only three connections per minute from any source.
iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m recent --update --name SSH --seconds 60 --hitcount 4 -j REJECT-SSH
iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m recent --set --name SSH


# Proteção contra ping da morte
# -------------------------------------------------------
iptables -A FORWARD -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT
# Proteção contra port scanners
# -------------------------------------------------------
iptables -N SCANNER
iptables -A SCANNER -m limit --limit 15/m -j LOG --log-level 6 --log-prefix "FIREWALL: port scanner: "
iptables -A SCANNER -j DROP
iptables -A INPUT -p tcp --tcp-flags ALL FIN,URG,PSH -i eth0 -j SCANNER
iptables -A INPUT -p tcp --tcp-flags ALL NONE -i eth0 -j SCANNER
iptables -A INPUT -p tcp --tcp-flags ALL ALL -i eth0 -j SCANNER
iptables -A INPUT -p tcp --tcp-flags ALL FIN,SYN -i eth0 -j SCANNER
iptables -A INPUT -p tcp --tcp-flags ALL SYN,RST,ACK,FIN,URG -i eth0 -j SCANNER
iptables -A INPUT -p tcp --tcp-flags SYN,RST SYN,RST -i eth0 -j SCANNER
iptables -A INPUT -p tcp --tcp-flags SYN,FIN SYN,FIN -i eth0 -j SCANNER
echo "Protecao Contra Ataque Hacker..................................................................[ OK ]"
echo "Bloqueando ps P2P..............................................................................[ OK ]"


# No iptables, temos de dizer quais sockets são validos em uma conexão
iptables -A INPUT -m state --state ESTABLISHED,RELATED,NEW -j ACCEPT
echo "Setando regras para INPUT .....................................................................[ OK ]"

################################
# Cadeia de reenvio (FORWARD).

# Primeiro, ativar o mascaramento (nat).
iptables -t nat -F POSTROUTING
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
echo "Ativando mascaramento de IP ...................................................................[ OK ]"

# Agora dizemos quem e o que pode acessar externamente
# No iptables, o controle do acesso a rede externa e feito na cadeia "FORWARD"

# PORTA 80 - ACEITA PARA A REDE LOCAL
iptables -A FORWARD -s 192.168.1.0 -p tcp --dport 80 -j DROP
echo "Bloqueando a Porta 80..........................................................................[ OK ]"

# PORTA 3128 - ACEITA PARA A REDE LOCAL
iptables -A FORWARD -p tcp --dport 3128 -j ACCEPT
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128

# PORTA 1723 - ACEITA PARA A REDE LOCAL
iptables -A FORWARD -p tcp --dport 1723 -j ACCETP

# PORTA 53 - ACEITA PARA A REDE LOCAL
iptables -A FORWARD -i eth0 -p udp --dport 53 -j ACCEPT

# PORTA 110 - ACEITA PARA A REDE LOCAL
iptables -A INPUT -i eth0 -p tcp --dport 110 -j ACCEPT
iptables -A FORWARD -i eth0 -p tcp --dport 110 -j ACCEPT

# PORTA 21 - ACEITA PARA A REDE LOCAL
iptables -A FORWARD -i eth0 -p tcp --dport 21 -j ACCEPT

#Habilitando porta de https
iptables -A FORWARD -i eth0 -p tcp --dport 4343 -j ACCEPT

# No iptables, temos de dizer quais sockets são válidos em uma conexão
iptables -A FORWARD -m state --state ESTABLISHED,RELATED,NEW -j ACCEPT
echo "Setando regras para FORWARD ...................................................................[ OK ]"

# Finalmente: Habilitando o trafego IP, entre as Interfaces de rede
echo "1" > /proc/sys/net/ipv4/ip_forward
echo "Setando ip_foward: ON .........................................................................[ OK ]"
echo "Firewall configurado com sucesso ..............................................................[ OK ]"
echo

}

firewall_restart() {
firewall_start
}

firewall_stop() {

echo "==========================================="
echo "| :: DESLIGANDO FIREWALL :: |"
echo "==========================================="

# Limpa as regras
iptables -F INPUT
iptables -F OUTPUT
iptables -F FORWARD
echo "Limpando todas as regras ......................................................................[ OK ]"

}

case "$1" in
'start')
firewall_start
;;
'stop')
firewall_stop
;;
'restart')
firewall_restart
;;
*)
firewall_start
esac


Neste caso a eth1 é a da rede interna e a eth0 da externa.

cole em um editor de textos, salve como firewall.sh no seu /etc

e execute o comando: /etc/firewall.sh start

Espero ter ajudado.

Aline


3. Re: Configurando DHCP

Guilherme José Schneider
gjschneider92

(usa openSUSE)

Enviado em 14/07/2011 - 08:18h

Tem sim, o sinal é ercebido pela wlan e enviado pela eth0. E isso é que não esta funcionando. Eu precisaria criar essas regras todas para criar um servidor simples?


4. Re: Configurando DHCP

Aline
aline.abreu

(usa Debian)

Enviado em 14/07/2011 - 14:27h

Meu firewall está com algumas regras se segurança.

Você obrigatoriamente tem que configurar o nat no seu firewall para que ele faça o encaminhamento dos pacotes.

Aline


5. Re: Configurando DHCP

Guilherme José Schneider
gjschneider92

(usa openSUSE)

Enviado em 14/07/2011 - 14:34h

Ok, vou dar uma olhada nessa parte.

Mtoo obrigado pela ajuda.

Abrass


6. Servidor DHCP

Márcio Carolino G. de Brito
marciocarolino

(usa Debian)

Enviado em 12/08/2011 - 12:50h

Uma observação importante é que sempre que configurar um servidor com duas placas de rede, você deve configurar o servidor DHCP para escutar apenas na placa da rede local. No Debian, esta configuração vai no arquivo "/etc/default/dhcp3-server". Procure pela linha:

INTERFACES=""

... e adicione a placa que o servidor DHCP deve escutar, como em:

INTERFACES="eth0"

Para que a configuração entre em vigor, basta reiniciar o serviço novamente.






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts