Raspberry Pi 3 B como VPN Hotspot - Sem Internet no lado do cliente - Dois adaptadores Wi-Fi

0

Objetivo :

Rede doméstica - > wlan0 - > VPN - > wlan1 - > Hotspot

Jessie Raspbian com Pixel :

Usando o adaptador Wi-Fi embutido para conectar-se à minha rede doméstica, enquanto um externo como hostpot. Sem ethernet Eu tentei por mais de uma semana configurar o meu rpi 3 model b para usar uma VPN sobre o hostpot usando hostapd e muitas configurações do dhcp em vão.

Palavra de sabedoria : não é um novato ou um especialista

Eu pedi emprestado meus muitos artigos on-line, mas não há uma versão atualizada para trabalhar com o novo rpi 3 b. Eu vou fornecer-lhes como referência aqui.

O que funciona : wlan0 conectado à VPN da rede doméstica em Pi, com um IP estático atribuído a wlan1 Hostapd, driver isc-dhcp para o endereço IP instalado wlan1, sub-rede atribuída ao cliente.

O que não é : Hotspot feito de VPN no lado do cliente (celular)

Meu suspeito : iptables ou interfaces de rede ou dhcpcd.conf (localizado em / etc / dhcpcd.conf)

Cenário estranho : Se "# iface default inet dhcp" for adicionado às interfaces, o isc-dhcp falhará! Mesmo com o hash out eu recebo esse problema. Uma vez removido, tudo funcionou!

Ref : link

Configuração usada :

DHCPD : /etc/dhcp/dhcpd.conf:

subnet 192.168.42.0 netmask 255.255.255.0 {
    range 192.168.42.10 192.168.42.50;
    option broadcast-address 192.168.42.255;
    option routers 192.168.42.1;
    default-lease-time 600;
    max-lease-time 7200;
    option domain-name "local";
    option domain-name-servers 8.8.8.8, 8.8.4.4;
}

ISC-DHCP-Server : / etc / default / isc-dhcp-server:

INTERFACES="wlan1"

Hostapd : /etc/hostapd/hostapd.conf: (versão personalizada foi usada aqui)

interface=wlan1
driver=rtl871xdrv
ssid=Net
hw_mode=g
channel=6
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0
wpa=2
wpa_passphrase=Test123
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP

/ etc / default / hostapd:

DAEMON_CONF="/etc/hostapd/hostapd.conf"

Interface de rede : / etc / network / interfaces:

auto lo
iface lo inet loopback

iface eth0 inet manual

allow-hotplug wlan0
iface wlan0 inet manual
    wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

#allow-hotplug wlan1
iface wlan1 inet manual
#   wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

up iptables-restore < /etc/iptables.nat.vpn.secure

DHCPCD : /etc/dhcpcd.conf:

interface wlan1

static ip_address=192.168.42.1/24
static routers=192.168.42.1
static domain_name_servers=192.168.42.1

NAT : /etc/sysctl.conf:

net.ipv4.ip_forward=1

sh -c "echo 1 > /proc/sys/net/ipv4/ip_forward"

VPN :

iptables -A INPUT -i tun0 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
iptables -A INPUT -i tun0 -j DROP
iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE

sh -c "iptables-save > /etc/iptables.nat.vpn.secure"

Regras que não produzem efeito :

iptables -A FORWARD -i tun0 -o wlan1 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i wlan1 -o tun0 -j ACCEPT

Resultado :

VPN funciona em Pi. Hotspot funciona. Nenhuma internet no lado do cliente. O cliente, basicamente um telefone, recebe o IP correto com a máscara de sub-rede. Não é possível navegar na Internet.

O que está causando essa falha ?

    
por sudonow 19.11.2016 / 19:53

1 resposta

0

Sua regra MASQUERADE não deve ser aplicada na interface física do seu RPI, em vez de tun0 ? Você deseja que o tráfego de seus clientes VPN seja enviado para o IP do seu RPI, para que o roteador da sua casa possa responder a esse tráfego, através do seu RPI.

iptables --table nat --append POSTROUTING --src [network for your tun0] --out-interface wlan1 --jump MASQUERADE
    
por 19.11.2016 / 21:27