如何在 Windows 7 上使用 OpenVPN 存取 LAN 共用?

如何在 Windows 7 上使用 OpenVPN 存取 LAN 共用?

我覺得我錯過了一些東西,因為我多年來一直在 Debian、Fedora 和 Macintosh 用戶端上使用 OpenVPN。存取我的 openvpn 伺服器所在的家庭 LAN 中的共用時從未遇到任何問題。

我可以毫無問題地存取 SMB、AFP 和 NFS。

但最近我在 Windows 7 用戶端上使用 OpenVPN,但無法存取任何共用。

例如,我的 Synology NAS 位址 nas.mylan.local 具有我列出的這三個共享,我可以登入其 Web 介面,從 Windows 用戶端使用 nas 和 nas.mylan.local 解析它,但我無法存取分享。

我嘗試過例如 \nas\Downloads、\nas.mylan.local\Downloads 並嘗試使用網路和共用中心發現它。

如果我指定直接路徑,我會收到登入提示,我完成此操作的 Windows 用戶端已 AD 連接到另一家公司,因此我輸入 \Username 來否定網域。

密碼在 Web GUI 中有效,但在共享提示中我收到一條錯誤訊息,內容類似於「使用者不允許從這台電腦存取」。

OpenVPN 使用的 Tap 裝置位於公共範圍內,因此我進入了 Windows 防火牆並嘗試將我的 LAN 位址和 VPN 位址新增至公用範圍規則中的 SMB 允許的公用 IP 清單中。

但沒有骰子。後來我還注意到 Windows 防火牆畢竟已經停用了。

我還嘗試進入範圍共享選項並設定允許公共範圍內的傳入共享請求。

Windows 7 和透過 OpenVPN 分享有什麼問題?我認為這是 Microsoft 的安全功能,它阻止我存取我的共享,因為所有其他客戶端都正常運作。

這是我已經使用了幾年的 openvpn 伺服器配置,在此之前它在 Debian 伺服器上略有不同。

server 10.8.0.0 255.255.255.0
port 1194
proto udp
dev tun0
comp-lzo
keepalive 10 120
tls-auth minserver_static.key 1

ifconfig-pool-persist ipp.txt
persist-key
persist-tun

user openvpn
group openvpn

push "redirect-gateway def1"
push "dhcp-option DNS 10.8.0.1"
push "dhcp-option DOMAIN domain.local"

ca ca.crt
cert minserver.crt
key minserver.key
dh dh2048.pem

#status /var/log/openvpn/openvpn-status.log
#log-append /var/log/openvpn.log
#verb 3

這是有問題的 Windows 7 用戶端配置。它和我的 linux、mac 和 android 配置完全一樣。我有生成配置的 bash 腳本和模板,但我在這裡省略了憑證和金鑰。

client
dev tun
proto udp
remote minserver 1194
resolv-retry infinite
nobind
persist-key
persist-tun
mute-replay-warnings
resolv-retry infinite
comp-lzo

push "redirect-gateway def1"
push "dhcp-option DNS 10.8.0.1"
push "dhcp-option DOMAIN domain.local"

# Comment this for the ovpn config
;tls-auth minserver_static.key 0
;ca ca.crt
;cert .crt
;key .key

<ca>
...
</ca>
...

我在伺服器上的 iptables 設定非常簡單,只有這些規則。

sudo firewall-cmd --add-service=openvpn
sudo firewall-cmd --permanent --zone=trusted --add-interface=tun0
sudo firewall-cmd --permanent --zone=trusted --add-masquerade
sudo firewall-cmd --permanent --direct --passthrough ipv4 -t nat -A POSTROUTING -s  10.8.0.0/24 -o enp2s0 -j MASQUERADE
sudo firewall-cmd --reload

我懷疑這是一個 openvpn 伺服器問題,很可能是 Windows 中的問題。

相關內容