1

Я хочу подключить свой мобильный телефон через OpenVPN к моей домашней сети по двум причинам:
Сначала я хочу получить доступ к нескольким услугам дома со своего мобильного телефона.
Во-вторых, телефон должен использовать домашний интернет по соображениям безопасности в открытых беспроводных сетях.

Поскольку мой маршрутизатор не имеет общедоступного IP-адреса, Raspberry Pi в домашней сети должен подключиться как клиент с сервером OpenVPN с публичным адресом (корневым сервером, которым я владею).

Поэтому я хочу создать следующую сеть: Ссылка на изображение

Я понял, что VPN-сервер, Raspberry и мобильный телефон могут общаться друг с другом (пинг и сервисы). Но я не смог подключиться к домашней сети или Интернету через домашний маршрутизатор.

Это мои конфиги:

Домашняя сеть - 192.168.2.0, VPN - 10.8.0.0.

Сервер:

server 10.8.0.0 255.255.255.0
port 1194
proto udp
dev tun
ca ./easy-rsa2/keys/ca.crt
cert ./easy-rsa2/keys/server.crt
key ./easy-rsa2/keys/server.key
dh ./easy-rsa2/keys/dh2048.pem
ifconfig-pool-persist ipp.txt
client-to-client
push "route 192.168.2.0 255.255.255.0"
client-config-dir ccd
route 192.168.2.0 255.255.255.0

user nobody
group nogroup
persist-key
persist-tun

Малина:

client
port 1194
proto udp
dev tun
remote example.com 1194
nobind
ca ca.crt
cert pi.crt
key pi.key
ns-cert-type server
remote-cert-tls server
push "route 192.168.2.0 255.255.255.0"
route 192.168.2.0 255.255.255.0

persist-key
persist-tun
resolv-retry infinite

Малина в пзд:

iroute 192.168.2.0 255.255.255.0

Телефон:

client
port 1194
proto udp
dev tun
remote example.com 1194
nobind
ca ca.crt
cert phone.crt
key phone.key
ns-cert-type server
remote-cert-tls server
route 192.168.2.0 255.255.255.0

persist-key
persist-tun
resolv-retry infinite

Как можно реализовать такой проект? Или хотя бы две вещи выше с другой настройкой?

Редактировать: Я понял проблему: папка ccd должна быть на стороне сервера, а не на клиенте ...
Даже если сейчас у меня немного другое решение, это также должно решить проблему для этой установки.

1 ответ1

2

Это не то решение, которое вы опубликовали в своем редакторе, хотя это было абсолютно необходимо для вашей настройки. Реальная проблема была правильно диагностирована @Sergei, но есть гораздо более простой способ ее реализации: добавить маршрут к внешнему клиенту, телефону, через малину, на маршрутизаторе.

Вы сказали, что используете ccd, поэтому у телефона будет статический внутренний IP-адрес, скажем, 10.8.0.55. Затем на роутере добавьте следующий маршрут:

ip route add 10.8.0.55/32 via Raspberry.Pi.IP.Address

если сервер OpenVPN не размещен малиной, или

ip route add 10.8.0.0/24 via Raspberry.Pi.IP.Address

если сервер находится на рашпиле пи.

Разница между этими двумя командами заключается в том, что в первом случае через rasp pi может быть доступен только телефон, следовательно, маршрут предназначен для одного клиента, доступного через него, в то время как во второй команде вся сеть OpenVPN может быть достигнута через rasp число Пи.

Это проще, потому что вам нужно изменить только один компонент, маршрутизатор, а не все отдельные машины в вашей сети.

И, кстати, первое решение, предложенное Сергеем, решительно не самое простое, поскольку оно включает в себя переключение с маршрутизируемого на мостовой OpenVPN, а не просто использование домашней сети для подсети OpenVPN, как вы, кажется, верите.

Вот и все.

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