Compartilhar internet do ubuntu para um roteador. (resolvido)

Iniciado por cajaboy, 07 de Setembro de 2013, 09:55

tópico anterior - próximo tópico

cajaboy

Na interface gráfica diz rede não gerenciável a eth0. mesmo com o led da lan piscando indicando que está conectado, não passa para o roteador. Será a placa de rede? Pois ele está pingando normal.
No meu funcionou. Acho que vou partir para o hardware, pois pode ter alguma coisa a ver quando jogo o:
"auto lo eth0 wlan0" no interfaces
e reinicio não tem conexão nenhuma, desaparece a interface gráfica do network manager no painel, o que pode ser hardware, placa de rede não gerencia.
Baixe seu ubuntu, ou derivados aqui: http://releases.ubuntu.com/
"Porque há um só Deus, e um só Mediador entre Deus e os homens, Jesus Cristo homem." 1 Timóteo 2:5

NOOB Saibot

Isso é normal amigo, se a eth0 estiver configurada no /etc/network/interfaces, tu não vai conseguir
gerenciar pela interface gráfica ( Network Maneger)

Arthur Bernardes

Mas essa é a intenção, a interface da rede local será o Gateway, não pode ser gerenciada pelo NM. Cajaboy, na sua máquina deu certo o compartilhamento? Então, eleminaremos o problema ser na configuração.

NOOB Saibot

Cajaboy, tomei a liberdade de adaptar o tutorial que sigo para configurar um Gateway quando preciso.
Está 100% funcional, acabei de testar todos os parâmetros.

Obs. A rede que saí pelo eth0 não tem dhcp a menos que configure um no Gateway ou até mesmo no roteador, então todas as máquinas que
forem se conectar precisam de um IP manual

Espero que ajude, se não servir, pelo menos outras pessoas do fórum podem se interessar

Ubuntu 12.04 IPv4 Gateway
sudo nano /etc/network/interfaces
auto lo
iface lo inet loopback

   auto wlan0                   # aqui tu coloca os parâmetros corretos da rede
   iface wlan0 inet static
   address 10.20.30.77
   netmask 255.255.255.0
   gateway 10.20.30.1
   dns-nameservers 8.8.8.8
   

   auto eth0                # essa rede não pode estar na mesma faixa de rede que a primeira.
  iface eth0 inet static
   address 172.20.1.1
   netmask 255.255.255.0
   
Habilitar encaminhamento IPv4 .
sudo nano /etc/sysctl.conf
descomentar a linha
# net.ipv4.ip_forward=1
deixar assim
net.ipv4.ip_forward=1
Rode o comando para configurar iptable
iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE
Para salvar configurações do iptables
sudo iptables-save | sudo tee /etc/iptables.sav

Adicionar no rc.local, para iniciar parâmetros do iptables após reboot (antes do exit)  
iptables-restore < /etc/iptables.sav

Reinicie o servidor

Arthur Bernardes

#34
Esse é bem simples mesmo.

Mas ele escolhe o que ele quer.

Mandei um artigo bem simples pra ele.

Cajaboy, não posso falar que o Script está errado, nem as interfaces, porque aqui uso isso, e funciona nas mil maravilhas, com Proxy Autenticado.

cajaboy

Vou testar a placa de rede do cliente e fazer novamente os procedimentos. e postarei o resultado. É, na minha máquina deu 100% funcional do jeito que o Arthur Bernardes ensinou. Não tem erro. De qualquer forma postarei o resultado quando for a casa do cliente.
Baixe seu ubuntu, ou derivados aqui: http://releases.ubuntu.com/
"Porque há um só Deus, e um só Mediador entre Deus e os homens, Jesus Cristo homem." 1 Timóteo 2:5

cajaboy

1 Me respondam uma coisa, iptables e ufw tem alguma diferença? pois uso o ufw.
2 Com o comando "sudo gedit /etc/ufw/sysctl.conf" tenho o mesmo aquivo, então é só descomentar, concordam?
3 É normal o NM fica buscando conexão ao iniciar o PC com aquela mensagem chata que parece que nao vai iniciar, sem aparecer nada de NM no plugin inidicador?

Estou pensando em fazer o seguinte: Fazer a primeira parte do NOOB Saibot para configurar o interfaces e o firewall com as explicações do Arthur pra ver o que dá. Afinal de contas, a primeira coisa a fazer é configurar o interfaces e depois rotear pelo ufw-firewall, é nesta linha o raciocínio?
Baixe seu ubuntu, ou derivados aqui: http://releases.ubuntu.com/
"Porque há um só Deus, e um só Mediador entre Deus e os homens, Jesus Cristo homem." 1 Timóteo 2:5

zekkerj

CitarMe respondam uma coisa, iptables e ufw tem alguma diferença? pois uso o ufw.
Iptables e ufw são front-ends para o Netfilter. Vc pode escolher qual dos dois usar.

CitarCom o comando "sudo gedit /etc/ufw/sysctl.conf" tenho o mesmo aquivo, então é só descomentar, concordam?
Mesmo arquivo que o quê?

CitarÉ normal o NM fica buscando conexão ao iniciar o PC com aquela mensagem chata que parece que nao vai iniciar, sem aparecer nada de NM no plugin inidicador?
Se não aparece nada, como você sabe que é o NM que está buscando conexão?
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

cajaboy

#38
Mesmo arquivo que o quê?
"sudo gedit /etc/ufw/sysctl.conf" é o mesmo que "sudo nano /etc/sysctl.conf"

Quando vc edita o interfaces que alguma coisa dá errado, o NM fica buscando rede na inicialização do Ubuntu e demoooooora para iniciar. Aparece que é ele que está buscando rede, em vez de iniciar logo de uma vez.

Vou dá como resolvido, usei o primeiro tópico do Arthur Bernardes com uma pequena alteração.

Script do Arthur:
Código: sudo gedit /etc/init.d/firewall

#!/bin/bash
#### Declarando variáveis ####
# Interface da Internet:
ifinternet="wlan0"
# Interface da Rede Local
iflocal="eth0"
# IP da Internet
ip_internet="10.11.0.2"
# IP da Rede Local
rede_local="192.168.0.0/24"
#### Função "start" ####
iniciar(){
## Limpa todas as regras ##
iptables -F
iptables -t nat -F
iptables -t mangle -F
## Carrega módulos ##
modprobe ip_tables
modprobe iptable_mangle
modprobe iptable_nat
## Habilita roteamento no kernel ##
echo 1 > /proc/sys/net/ipv4/ip_forward
## Compartilha a internet ##
iptables -t nat -A POSTROUTING -o $ifinternet -j MASQUERADE
echo 1 > /proc/sys/net/ipv4/conf/default/rp_filter
#### Regras de Firewall ####
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -i $iflocal -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p udp --dport 80 -j ACCEPT
iptables -A FORWARD -i lo -j ACCEPT
iptables -A FORWARD -i $iflocal -j ACCEPT
iptables -A FORWARD -p tcp --dport 22 -j ACCEPT
iptables -A FORWARD -p tcp --dport 80 -j ACCEPT
iptables -A FORWARD -p udp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --syn -s $rede_local -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
}
parar(){
iptables -F
iptables -F -t nat
}
status (){
iptables -L -v -n
}
case "$1" in
"start") iniciar ;;
"stop") parar ;;
"restart") parar; iniciar ;;
"status")status;;
*) echo "Use os parâmetros start, stop ou status"
esac

Em # IP da Internet você coloca o IP da sua máquina.

Depois roda sudo chmod +x /etc/init.d/firewall  para dá permissão ao script

Em interfaces você deve colocar assim:

em vez de deixar
auto lo
iface lo inet loopback
Coloca assim

"lembrando de verificar qual eth e wlan vc usa usando o ifconfig -a no terminal."

Código: sudo gedit /etc/network/interfaces

auto lo eth0 wlan0

iface lo inet loopback

#### Rede Local 1 "eth0" ####

iface eth0 inet static
address 192.168.1.1
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255

Reinicie o eth0 com sudo service networking restart

Inicie o serviço do firewall com sudo service firewall start

Abra as configurações do roteador, mude seu endereço IP para 192.168.0.254, e configure o servidor DHCP do roteador para:

Start IP Address: 192.168.1.100
End IP Address:: 192.168.1.200
Default Gateway: 192.168.1.1
Primary DNS: 8.8.8.8
Secondary DNS: 8.8.4.4

Se tudo deu certo, rode esse comando para o serviço iniciar junto com o Ubuntu
sudo update-rc.d firewall start 99 2 3 4 5 . stop 0 1 6

Aqui no meu deu certo assim.
Baixe seu ubuntu, ou derivados aqui: http://releases.ubuntu.com/
"Porque há um só Deus, e um só Mediador entre Deus e os homens, Jesus Cristo homem." 1 Timóteo 2:5

zekkerj

Citar"sudo gedit /etc/ufw/sysctl.conf" é o mesmo que "sudo nano /etc/sysctl.conf"

Ah, tá... realmente, é o mesmo arquivo que vc está editando. Só muda o editor que vc usa (um é gráfico, o outro é modo texto, AFAIK).
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

Arthur Bernardes