Я только что установил следующую настройку на Raspberry Pi v3, его IP 192.168.1.2:

  1. Сначала я установил PiHole
  2. Затем я установил PiVPN
  3. Сделал одну настройку в /etc/openvpn/server.conf: я закомментировал существующие dhcp-options и добавил push "dhcp-option DNS 192.168.1.2" , где 192.168.1.2 - это PiHole_IP
  4. Я создал один сертификат для своего телефона

Я могу подключиться со своего телефона к VPN, но если я пытаюсь открыть какой-либо веб-сайт, я не получаю никакого ответа. Если я пытаюсь найти клиента в локальной сети, я тоже не получаю ответа.

Ниже приведен журнал, взятый из открытого приложения vpn моего телефона:

2018-02-10 14:02:41 1

2018-02-10 14:02:41 ----- OpenVPN Start -----
OpenVPN core 3.2 ios arm64 64-bit PT_PROXY built on Oct  3 2018 06:35:04

2018-02-10 14:02:41 Frame=512/2048/512 mssfix-ctrl=1250

2018-02-10 14:02:41 UNUSED OPTIONS
4 [resolv-retry] [infinite] 
5 [nobind] 
6 [persist-key] 
7 [persist-tun] 
10 [verify-x509-name] [server_HASH] [name] 
14 [verb] [3] 

2018-02-10 14:02:41 EVENT: RESOLVE

2018-02-10 14:02:41 Contacting [MY_EXTERNAL_IP]:1194/UDP via UDP

2018-02-10 14:02:41 EVENT: WAIT

2018-02-10 14:02:41 Connecting to [MY_DNS_NAME]:1194 (MY_EXTERNAL_IP) via UDPv4

2018-02-10 14:02:41 EVENT: CONNECTING

2018-02-10 14:02:41 Tunnel Options:V4,dev-type tun,link-mtu 1570,tun-mtu 1500,proto UDPv4,comp-lzo,cipher AES-256-CBC,auth SHA256,keysize 256,key-method 2,tls-client

2018-02-10 14:02:41 Creds: UsernameEmpty/PasswordEmpty

2018-02-10 14:02:41 Peer Info:
IV_GUI_VER=net.openvpn.connect.ios 3.0.2-894
IV_VER=3.2
IV_PLAT=ios
IV_NCP=2
IV_TCPNL=1
IV_PROTO=2
IV_LZO_STUB=1
IV_COMP_STUB=1
IV_COMP_STUBv2=1
IV_AUTO_SESS=1


2018-02-10 14:02:42 VERIFY OK : depth=1
cert. version     : 3
serial number     : A7:A9:F2:46:05:5B:BD:D8
issuer name       : CN=ChangeMe
subject name      : CN=ChangeMe
issued  on        : 2018-10-10 16:04:51
expires on        : 2028-10-07 16:04:51
signed using      : RSA with SHA-256
RSA key size      : 4096 bits
basic constraints : CA=true
key usage         : Key Cert Sign, CRL Sign


2018-02-10 14:02:42 VERIFY OK : depth=0
cert. version     : 3
serial number     : 01
issuer name       : CN=ChangeMe
subject name      : CN=server_HASH
issued  on        : 2018-10-10 16:05:10
expires on        : 2028-10-07 16:05:10
signed using      : RSA with SHA-256
RSA key size      : 4096 bits
basic constraints : CA=false
key usage         : Digital Signature, Key Encipherment
ext key usage     : TLS Web Server Authentication


2018-02-10 14:02:42 SSL Handshake: TLSv1.2/TLS-ECDHE-RSA-WITH-AES-256-GCM-SHA384

2018-02-10 14:02:42 Session is ACTIVE

2018-02-10 14:02:42 EVENT: GET_CONFIG

2018-02-10 14:02:42 Sending PUSH_REQUEST to server...

2018-02-10 14:02:42 OPTIONS:
0 [dhcp-option] [DNS] [192.168.1.2] 
1 [block-outside-dns] 
2 [redirect-gateway] [def1] 
3 [route-gateway] [10.8.0.1] 
4 [topology] [subnet] 
5 [ping] [1800] 
6 [ping-restart] [3600] 
7 [ifconfig] [10.8.0.2] [255.255.255.0] 
8 [peer-id] [0] 
9 [cipher] [AES-256-GCM] 


2018-02-10 14:02:42 PROTOCOL OPTIONS:
  cipher: AES-256-GCM
  digest: SHA256
  compress: COMP_STUB
  peer ID: 0

2018-02-10 14:02:42 EVENT: ASSIGN_IP

2018-02-10 14:02:42 NIP: preparing TUN network settings

2018-02-10 14:02:42 NIP: init TUN network settings with endpoint: MY_EXTERNAL_IP

2018-02-10 14:02:42 NIP: adding IPv4 address to network settings 10.8.0.2/255.255.255.0

2018-02-10 14:02:42 NIP: adding (included) IPv4 route 10.8.0.0/24

2018-02-10 14:02:42 NIP: redirecting all IPv4 traffic to TUN interface

2018-02-10 14:02:42 NIP: adding DNS 192.168.1.2

2018-02-10 14:02:42 Connected via NetworkExtensionTUN

2018-02-10 14:02:42 LZO-ASYM init swap=0 asym=1

2018-02-10 14:02:42 Comp-stub init swap=1

2018-02-10 14:02:42 EVENT: CONNECTED MY_DNS_NAME.com:1194 (MY_EXTERNAL_IP) via /UDPv4 on NetworkExtensionTUN/10.8.0.2/ gw=[/]

Это server.conf который я немного изменил, добавив / удалив параметры dhcp, как указано выше:

dev tun
proto udp
port 1194
ca /etc/openvpn/easy-rsa/pki/ca.crt
cert /etc/openvpn/easy-rsa/pki/issued/server_HASH.crt
key /etc/openvpn/easy-rsa/pki/private/server_HASH.key
dh none
ecdh-curve secp384r1
topology subnet
server 10.8.0.0 255.255.255.0
# Set your primary domain name server address for clients
#push "dhcp-option DNS 1.1.1.1"
#push "dhcp-option DNS 1.0.0.1"
push "dhcp-option DNS 192.168.1.2"
# Prevent DNS leaks on Windows
push "block-outside-dns"
# Override the Client default gateway by using 0.0.0.0/1 and
# 128.0.0.0/1 rather than 0.0.0.0/0. This has the benefit of
# overriding but not wiping out the original default gateway.
push "redirect-gateway def1"
client-to-client
keepalive 1800 3600
remote-cert-tls client
tls-version-min 1.2
tls-crypt /etc/openvpn/easy-rsa/pki/ta.key
cipher AES-256-CBC
auth SHA256
compress lz4
user nobody
group nogroup
persist-key
persist-tun
crl-verify /etc/openvpn/crl.pem
status /var/log/openvpn-status.log 20
status-version 3
syslog
verb 3
#DuplicateCNs allow access control on a less-granular, per user basis.
#Remove # if you will manage access by user instead of device. 
#duplicate-cn
# Generated for use by PiVPN.io

Кроме того, я вижу, что PiHole получает запросы от IP 10.0.8.2, которые не блокируются. Я не уверен, с чего начать устранение неполадок и с нетерпением жду каких-либо советов и указаний :-)

1 ответ1

3

В дополнение к удалению DNS-серверов Google по умолчанию и push-опции «dhcp-option DNS 192.168.1.2» в server.conf, что вы уже сделали, выполните следующие действия:

  • Перейдите в /etc/dnsmasq.d и создайте новый файл, например custom.conf (sudo nano custom.conf), со следующим содержимым:

    listen-address=127.0.0.1, 192.168.1.2, 10.8.0.1
    

    где 192.168.1.2 - это адрес вашего Pi-hole DNS, а 10.8.0.1 - это шлюз PiVPN.

    Это гарантирует, что если Pi-hole обновится, изменения в других файлах conf не будут перезаписаны.

  • Перезапустите службу OpenVPN, запустив

    sudo service openvpn restart
    

Теперь, когда вы подключаетесь к PiVPN от своих клиентов, вы должны иметь доступ к Интернету, а Pi-hole должен фильтровать всю рекламу.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .