DMTG
Power Member
Ola amigos
Hoje venho apresentar-vos uma solução para aqueles que tem em casa o seu raspberry pi parado e querem dar o uso.
Para começar instalar no raspberry o sistema operativo
RASPBIAN WHEEZY
Apos instalação vamos instalar DONGLE 3G/4G HUAWEI
Todos os processos descritos devem ser feitos com root
Caso a vossa pen não tenha embutido o software interno de dialup devem instalar os seguintes programas para que o raspberry consiga fazer o dialup da ligação de internet
Configuração do ficheiro o ficheiro wvdial.conf (/etc/wvdial.conf) para MEO com pens HUAWEI
agora ir ao ficheiro
inserir o código
ir ao ficheiro
inserir antes
o seguinte instrução
faz arrancar automaticamente a pen assim que o raspberry reinicie
Agora vamos ativar o routing
ir ao ficheiro
e ativar o comando
depois vamos ativar o routing
Agora vamos atribuir um ip a porta rede do raspberry
ir ao ficheiro
e editar o seguinte
sendo que o address fica a vossa escolha
Agora vamos instalar DHCP no raspberry
vamos configurar o ficheiro
com o seguinte codigo
Agora vamos reencaminhar o trafego para a porta de rede
começando por instalar
Agora vamos criar um script NAT and forwarding na pasta /root/
Nome do ficheiro ipt.sh
vamos dar permissão para ser executado
vamos colocar estas definições no arranque basta fazer
ir ao ficheiro
inserir antes
Agora vamos criar uma ficheiro
inserir o seguinte codigo
vamos por ele executavel
Agora falta instalar proxy para poupar dados moveis fazendo alguma cache no raspberry
ir a pasta
renomear o ficheiro squid.conf para squidold.conf
e criar um novo com o nome squid.conf e colocar o seguinte
restart squid3
ir ao ficheiro ipt.sh e adicionar
exportar para o arranque
Pronto a funcionar
Se for uma pen com ip interno (192.168.8.1 ou algo do genero) nao é preciso instalar o ppp e wvdial
e fazer as seguintes alterações
no
/etc/network/interfaces
substituir
por
no ficheiro ipt.sh
substituir
por
adicionar o tambem
ex: 192.168.2.1:2525
no final voltar a executar o comando
ir ao ficheiro /etc/rc.local e retirar o codigo
Está operacional a funcionar
Qualquer questão não hesitem em perguntar
Hoje venho apresentar-vos uma solução para aqueles que tem em casa o seu raspberry pi parado e querem dar o uso.
Para começar instalar no raspberry o sistema operativo
RASPBIAN WHEEZY
Apos instalação vamos instalar DONGLE 3G/4G HUAWEI
Todos os processos descritos devem ser feitos com root
Código:
sudo apt-get install usb-modeswitch
Caso a vossa pen não tenha embutido o software interno de dialup devem instalar os seguintes programas para que o raspberry consiga fazer o dialup da ligação de internet
Código:
sudo apt-get install ppp
Código:
sudo apt-get install wvdial
Configuração do ficheiro o ficheiro wvdial.conf (/etc/wvdial.conf) para MEO com pens HUAWEI
Código:
[Dialer Defaults]
New PPPD = yes
Dial Command = ATDT
Dial Attempts = 3
Modem = /dev/ttyUSB0
Modem Type = Analog Modem
ISDN = 0
Baud = 115200
Username = tmn
Password = tmn
Init1 = ATZ
Init2 = AT&F E1 V1 X1 &D2 &C1 S0=0
[Dialer MEO]
Carrier Check = on
Auto Reconnect = on
Idle Seconds = 0
Phone = *99***1#
Stupid Mode = 1
Init3 = AT+CGDCONT=1,"IP","internet"
agora ir ao ficheiro
Código:
/etc/network/interface
Código:
auto ppp0
iface ppp0 inet wvdial
provider MEO
ir ao ficheiro
Código:
/etc/rc.local
Código:
exit 0
Código:
wvdial meo
Agora vamos ativar o routing
ir ao ficheiro
Código:
sudo nano /etc/sysctl.conf
Código:
net.ipv4.ip_forward=1
depois vamos ativar o routing
Código:
$ sudo sysctl -w net.ipv4.ip_forward=1
Agora vamos atribuir um ip a porta rede do raspberry
ir ao ficheiro
Código:
/etc/network/interfaces
e editar o seguinte
Código:
auto eth0
iface eth0 inet static
address 192.168.2.1
netmask 255.255.255.0
Agora vamos instalar DHCP no raspberry
Código:
sudo apt-get install isc-dhcp-server
vamos configurar o ficheiro
Código:
/etc/dhcp/dhcpd.conf
com o seguinte codigo
Código:
default-lease-time 600;
max-lease-time 7200;
ddns-update-style none;
# If this DHCP server is the official DHCP server for the local
# network, the authoritative directive should be uncommented.
authoritative;
log-facility local7;
subnet 192.168.2.0 netmask 255.255.255.0 {
range 192.168.2.50 192.168.2.150;
option broadcast-address 192.168.2.255;
option routers 192.168.2.1;
option subnet-mask 255.255.255.0;
default-lease-time 600;
max-lease-time 7200;
option domain-name "oquequisere.local";
option domain-name-servers 8.8.8.8, 8.8.4.4;
interface eth0;
}
Agora vamos reencaminhar o trafego para a porta de rede
começando por instalar
Código:
sudo apt-get install iptables
Agora vamos criar um script NAT and forwarding na pasta /root/
Nome do ficheiro ipt.sh
Código:
#!/bin/bash
LAN="eth0"
WAN="ppp0"
# flush tables
iptables -F
iptables -t nat -F
# apply routing
iptables -t nat -A POSTROUTING -o $WAN -j MASQUERADE
iptables -A FORWARD -i $WAN -o $LAN -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i $LAN -o $WAN -j ACCEPT
vamos dar permissão para ser executado
Código:
chmod +x ~/ipt.sh
sudo ~/ipt.sh
vamos colocar estas definições no arranque basta fazer
Código:
sudo sh -c "iptables-save > /etc/iptables.ipv4.nat"
ir ao ficheiro
Código:
/etc/rc.local
Código:
exit 0
Código:
/home/ipt.sh
Agora vamos criar uma ficheiro
Código:
/etc/network/if-up.d/iptables
Código:
#!/bin/bash
/sbin/iptables-restore < /etc/iptables.ipv4.nat
vamos por ele executavel
Código:
sudo chmod +x /etc/network/if-up.d/iptables
Agora falta instalar proxy para poupar dados moveis fazendo alguma cache no raspberry
Código:
sudo apt-get install squid3
ir a pasta
Código:
/etc/squid3/
e criar um novo com o nome squid.conf e colocar o seguinte
Código:
http_port 3128 transparent
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1140
refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
refresh_pattern . 0 20% 60
acl manager url_regex -i ^cache_object:// +i ^https?://[^/]+/squid-internal-mgr/
acl localnet src 192.168.2.0/24
acl localhost src 127.0.0.1/32
acl SSL_ports port 443
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl CONNECT method CONNECT
http_access allow manager localhost
http_access allow manager all
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localhost
http_access allow localnet
http_access deny all
# Resolve um problema com conexoes persistentes que ocorre com certos servidores,
# e que provoca delays no cache.
detect_broken_pconn on
# Provoca um ganho de performance ao usar conexoes Pipeline (requisicoes em paralelo)
pipeline_prefetch on
cache_mgr [email protected]
cache_mgr webmaster
mail_program mail
cache allow all
#Esta linha define quanto da memória RAM (no caso 128MB) será usada pelo cache: em um servidor dedicado é recomendado
#reservar 1/3 da memória RAM para o cache.
cache_mem 128 MB
#Esta linha é a que realmente define o tamanho total do cache em disco. O endereço refere a que diretório se deseja
#utilizar como cache, seguido do tamanho máximo do cache no disco (em MB) e os dois últimos números da linha
#indicam a quantidade de pastas e subpastas que o Squid utilizará para se organizar ao gravar o cache;
cache_dir ufs /var/spool/squid3 3072 16 256
#Esta linha define o tamanho máximo dos objetos na RAM. Defina um tamanho pequeno para que sejam salvos
#apenas páginas html na RAM e não downloads por exemplo, que devem ser salvos no disco.
maximum_object_size_in_memory 32 KB
#Define o tamanho máximo dos objetos no cache do disco. Aqui serão armazenados os downloads por exemplo.
#Se tem costume de baixar arquivos grandes, coloque um tamanho grande.
maximum_object_size 1536 MB
#Tamanho mínimo dos objetos no cache.
minimum_object_size 0 KB
#Essas linhas indicam que a partir do momento em que o cache atingir 90%,
#serão descartados arquivos mais antigos até que a porcentagem volte para um número abaixo de 80%.
cache_swap_low 80
cache_swap_high 90
#Também gosto de usar o DNS do google, por isso adiciona a linha abaixo
dns_nameservers 8.8.8.8 8.8.8.4
restart squid3
Código:
sudo /etc/init.d squid3 restart
ir ao ficheiro ipt.sh e adicionar
Código:
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128
exportar para o arranque
Código:
sudo sh -c "iptables-save > /etc/iptables.ipv4.nat"
Pronto a funcionar
Se for uma pen com ip interno (192.168.8.1 ou algo do genero) nao é preciso instalar o ppp e wvdial
e fazer as seguintes alterações
no
/etc/network/interfaces
substituir
Código:
auto ppp0
if inet ppp0 wvdial
provider meo
Código:
auto wwan0
iface wwan0 inet dhcp
no ficheiro ipt.sh
substituir
Código:
wan="ppp0"
Código:
wan="wwan0"
adicionar o tambem
Código:
# colocar huawei web interface disponivel
iptables -t nat -A PREROUTING -p tcp --dport 2525 -j DNAT --to-destination 192.168.8.1:80
no final voltar a executar o comando
Código:
sudo sh -c "iptables-save > /etc/iptables.ipv4.nat"
ir ao ficheiro /etc/rc.local e retirar o codigo
Código:
wvdial meo
Está operacional a funcionar
Qualquer questão não hesitem em perguntar
Última edição: