Compartilhando Conexão 3G via Wireless no Linux

Como bem sabemos “A necessidade incita o conhecimento”, acho que li isso em algum livro :P. Bom, nos dias de hoje é normal vermos diversas pessoas portando um modem 3G e utilizando esse tipo de conexão, e essas mesmas pessoas já devem ter se perguntado algum dia como fazer para compartilha-la, ou ainda mais, via rede sem fio. Então neste Post vou mostrar como fazer isso no Ubuntu Linux.

Vamos lá!

1º) Abra um terminal e corra o comando abaixo:

$ sudo apt-get install dnsmasq

* Este comando irá baixar e instalar o Dnsmasq.

2º) Agora vamos editar o arquivo de configuração do dnsmasq. Indo em: sudo vim /etc/dnsmasq.conf e acrescentando as linhas abaixo:

#----------------------------------------------------------------
no-resolv
server=200.169.118.22
server=200.169.117.22
interface=wlan0
interface=lo
listen-address=192.168.254.1
listen-address=127.0.0.1
domain=escolha1.com
dhcp-range=192.168.254.50,192.168.254.150,12h
log-queries
log-dhcp
#----------------------------------------------------------------
:x

3º) Agora execute o comando abaixo, para iniciar o serviço:

$ sudo etc/init.d/dnsmasq start ou restart

4º) É hora de criar um Script para estabelecer uma rede local:

#---------------------------------------------------------------
sudo ifconfig wlan0 down
sudo iwconfig wlan0 mode ad-hoc
sudo iwconfig wlan0 channel 6
sudo iwconfig wlan0 essid "home"
sudo iwconfig wlan0 key 1234567890
sudo ifconfig wlan0 up
sudo ifconfig wlan0 up 192.168.254.1
#---------------------------------------------------------------
:x

OBS: Salve o arquivo como o nome que desejar, no meu caso chamei de minharede.sh.

5º) Agora execute no console o seguinte comando, que dará a permissão de execução do Script:

$ sudo chmod +x minharede.sh

Agora execute-o

$ ./minharede.sh

6º) Agora vamos substituir o valor de uma linha no arquivo sysctl.conf. Indo em: sudo vim /etc/sysctl.conf.

#---------------------------------
net.ipv4.ip_forward=0
para
net.ipv4.ip_forward=1
#---------------------------------
:x

7º) Bom, estamos quase lá. Feito tudo corretamente, chegou a hora do criarmos nosso Script de Firewall. Vou disponibilizar o meu para vocês se basearem.

#!/bin/bash
#-------------------------------------------------------------------------------------------------------#
# Script de Firewall para compartilhamento de conexão 3G
# Autor: Gleudson Junior
# gleudson.jr@gmail.com
# http://gleudson.blogspot.com
# Licenca: GNU/GPL
#-------------------------------------------------------------------------------------------------------#

#-----------------------------------------
# Ativando os modulos
#-----------------------------------------

echo "Estamos ativando os modulos"

/sbin/modprobe iptable_nat
/sbin/modprobe ip_conntrack
/sbin/modprobe ip_conntrack_ftp
/sbin/modprobe ip_nat_ftp
/sbin/modprobe ipt_LOG
/sbin/modprobe ipt_REJECT
/sbin/modprobe ipt_MASQUERADE
sleep 2
Aguarde ...

echo "Modulos ativados com sucesso"

#-------------------------------------------------------------------------------------
# Limpando todas as regras da tabela de Firewall
#--------------------------------------------------------------------------------------

echo "Estamos limpando todas regras das tabelas"

/sbin/iptables -F
/sbin/iptables -X
/sbin/iptables -F -t nat
/sbin/iptables -X -t nat
/sbin/iptables -F -t mangle
/sbin/iptables -X -t mangle
sleep 2
Aguarde ...

echo "limpeza realizada com sucesso"

#------------------------------------------------
# Ativando regra do DHCP
#------------------------------------------------

echo "Estamos ativando a regra do dhcp"

/sbin/iptables -I INPUT -i wlan0 -p udp --sport 67:68 --dport 67:68 -j ACCEPT
sleep 2
Aguarde ...

echo "regra do DHCP ativada com sucesso"

#---------------------------------------------------------------------------
# Ativando regra de mascaramento da rede
#---------------------------------------------------------------------------

OBS: Lembrem de seta a permissão de execução do arquivo e lógico, executa-lo.

$ sudo chmod 777 meufirewall.sh
$ ./meufirewall.sh

Bom é somente isso! ;)
Boa diversão e ótimo Carnaval a todos!

Fonte: http://smash-se.blogspot.com/2009/01/necessidade-faz-o-nerd.html

0 Response to "Compartilhando Conexão 3G via Wireless no Linux"