Я новичок в OpenVPN. Я установил сервер OpenVPN, к которому клиенты могут подключаться в Ubuntu 18.04. Я добавил маршруты, чтобы весь сетевой трафик проходил через сервер. Клиенты Windows могут подключаться, и у них есть доступ ко всем локальным ресурсам и Интернету. Когда я подключаюсь к клиенту Linux, у меня есть доступ только к серверу 10.8.0.1, нет интернета, и я не вижу других серверов или клиентов в локальной сети. Вот мои файлы конфигурации. Я удалил комментарии.
server.conf
port 1194
proto tcp
;proto udp
;dev tap
dev tun
;dev-node MyTap
ca ca.crt
cert server.crt
key server.key # This file should be kept secret
dh dh.pem
;topology subnet
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist /var/log/openvpn/ipp.txt
;server-bridge 10.8.0.4 255.255.255.0 10.8.0.50 10.8.0.100
;server-bridge
push "route 10.8.0.1 255.255.255.255"
push "route 10.8.0.0 255.255.255.0"
push "route 172.168.0.21 255.255.255.255"
push "route 172.168.0.0 255.255.254.0"
;client-config-dir ccd
;client-config-dir ccd
;route 10.9.0.0 255.255.255.252
;learn-address ./script
push "redirect-gateway def1"
push "dhcp-option DNS 172.168.0.20"
push "dhcp-option DOMAIN bdlfire.local"
push "dhcp-option SEARCH bdlfire.local"
client-to-client
;duplicate-cn
keepalive 10 120
tls-auth ta.key 0 # This file is secret
key-direction 0
cipher AES-256-CBC
auth SHA256
;compress lz4-v2
;push "compress lz4-v2"
;comp-lzo
;max-clients 100
user nobody
group nogroup
persist-key
persist-tun
status /var/log/openvpn/openvpn-status.log
;log /var/log/openvpn/openvpn.log
;log-append /var/log/openvpn/openvpn.log
verb 3
;mute 20
explicit-exit-notify 0
Windows config client.ovpn
client
;dev tap
dev tun
;dev-node MyTap
proto tcp
;proto udp
remote xx.xx.xxx.xxx 1194
;remote my-server-2 1194
;remote-random
nobind
;user nobody
;group nobody
persist-key
persist-tun
;http-proxy-retry # retry on connection failures
;http-proxy [proxy server] [proxy port #]
;mute-replay-warnings
cert client3.crt
key client3.key
remote-cert-tls server
tls-auth ta.key 0
key-direction 1
cipher AES-256-CBC
auth SHA256
verb 3
;mute 20
redirect-gateway
Linux config client.conf
client
;dev tap
dev tun
proto tcp
;proto udp
remote xx.xx.xxx.xxx 1194
;remote my-server-2 1194
;remote-random
resolv-retry infinite
nobind
;user nobody
;group nobody
persist-key
persist-tun
;http-proxy-retry # retry on connection failures
;http-proxy [proxy server] [proxy port #]
;mute-replay-warnings
ca ca.crt
cert client1.crt
key client1.key
remote-cert-tls server
tls-auth ta.key 0
key-direction 1
cipher AES-256-CBC
auth SHA256
verb 3
;mute 20
redirect-gateway
Любая помощь будет принята с благодарностью. Спасибо, Карл
Я попытался запустить команду route и получил ответ.
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 10.8.0.5 128.0.0.0 UG 0 0 0 tun0
default _gateway 0.0.0.0 UG 20600 0 0 wlp7s0
10.8.0.0 10.8.0.5 255.255.255.0 UG 0 0 0 tun0
10.8.0.1 10.8.0.5 255.255.255.255 UGH 0 0 0 tun0
10.8.0.5 0.0.0.0 255.255.255.255 UH 0 0 0 tun0
67.89.211.183 _gateway 255.255.255.255 UGH 0 0 0 wlp7s0
128.0.0.0 10.8.0.5 128.0.0.0 UG 0 0 0 tun0
link-local 0.0.0.0 255.255.0.0 U 1000 0 0 wlp7s0
172.168.0.0 10.8.0.5 255.255.254.0 UG 0 0 0 tun0
172.168.0.21 10.8.0.5 255.255.255.255 UGH 0 0 0 tun0
192.168.0.0 0.0.0.0 255.255.255.0 U 600 0 0 wlp7s0
Это то, чего мне следует ожидать?
Ваши клиентские конфигурации не используют pull
для получения значений, отправленных с сервера. Возможно, версия для Windows по умолчанию использует pull
.
Для клиента OpenVPN требуются права root или администратора. Установка клиента сообщества в Windows автоматически добавляет OpenVPN в качестве службы, что позволяет ему проталкивать маршруты.
В некоторых дистрибутивах Linux OpenVPN как клиент не запускается от имени пользователя root и, следовательно, не может продвигать маршруты соответствующим образом при подключении.
1267] Вы можете подтвердить это, запросив маршруты вашего клиентского Linux-сервера при подключении к OpenVPN (с помощью программы route
), а маршруты для отправки не отображаются.