V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
yestodayHadRain
V2EX  ›  问与答

有一个 openVPN 代理服务器网络的问题

  •  
  •   yestodayHadRain · 2022-01-04 10:56:11 +08:00 via iPhone · 1876 次点击
    这是一个创建于 1083 天前的主题,其中的信息可能已经有所发展或是发生改变。
    • 因为要对接银行的接口,所以之前找银行那边开了服务器的 ip 白名单。但是因为只开了一个,所以其他服务器包括客户端的请求都会被屏蔽。就想着在已经开了白名单的服务器上搭建一个 openVPN 服务代理本地和其他服务器的网络。

    • 现在 openVPN 服务已经搭建好了,本地链接上网络也会被服务器代理。但是遇到两个问题

    • 第一个问题是,其他服务器启动客户端链接 vpn 后。因为走了代理,ssh 链接会断掉,正常用户请求也打不进去,这个要如何处理呢?我试了下,y 通过云服务商的 VNC 可以登录进去,走 ip 访问其他服务器可以,但是域名不行,本地 ssh 链接服务器公网 ip 链接不上

    • 另一个问题是,一台服务器和我本地使用不同的证书链接 openvpn 服务,分配的内网 ip 居然是一样的。而且我在 openvpn-status.log 中只能看到服务器客户端的 ip ,看不到本地电脑的。但是本地电脑确实会走代理,好奇怪……

    服务端的配置

    local 0.0.0.0     
    port 9994     
    proto tcp     
    dev tun     
    ca /etc/openvpn/ca.crt      
    cert /etc/openvpn/server.crt       
    key /etc/openvpn/server.key  
    dh /etc/openvpn/dh.pem     
    server 10.8.0.0 255.255.255.0     
    ifconfig-pool-persist ipp.txt
    push "redirect-gateway def1 bypass-dhcp"      
    push "dhcp-option DNS 8.8.8.8"        
    client-to-client       
    keepalive 10 120       
    comp-lzo      
    max-clients 100     
    user openvpn       
    group openvpn      
    persist-key
    persist-tun
    status /var/log/openvpn/openvpn-status.log
    log         /var/log/openvpn/openvpn.log
    verb 3
    

    客户端的配置

    client
    dev tun
    proto tcp
    remote [openVPN server ip] 9994
    resolv-retry infinite
    nobind
    persist-key
    persist-tun
    ca ca.crt
    cert web.crt
    key web.key
    comp-lzo
    verb 3
    
    
    13 条回复    2022-01-05 10:50:27 +08:00
    yaott2020
        1
    yaott2020  
       2022-01-04 12:37:01 +08:00 via Android
    如果只是 tcp/udp ,建议使用代理,v2ray 可以考虑
    maobukui
        2
    maobukui  
       2022-01-04 12:51:57 +08:00   ❤️ 1
    第一个问题没看明白。
    第二个,多客户端接入,服务端开启 dhcp 。服务端配置中增加
    option duplicate_cn '1'
    yestodayHadRain
        3
    yestodayHadRain  
    OP
       2022-01-04 12:54:24 +08:00 via iPhone
    @maobukui 感谢大佬, 第一个问题就是我想在另外一台服务器里启动客户端,给服务器设置一个代理,但是启动客户端后 服务器的网络就出问题了,本地通过 ssh 链接不上服务器了
    yestodayHadRain
        4
    yestodayHadRain  
    OP
       2022-01-04 13:11:55 +08:00 via iPhone   ❤️ 1
    @maobukui 刚刚加了这个参数试了下,发现还是不行。只有我本地链接的话可以看到分配了内网 ip ,但是服务端的配置文件里看不到客户端分配的 ip
    sun2920989
        5
    sun2920989  
       2022-01-04 14:40:47 +08:00
    只是代理调用 api 的话,推荐一下 v2ray/xray 之类的软件,挺方便的.还可以按域名 ip 之类的设置规则.不影响其他的地方.
    yestodayHadRain
        6
    yestodayHadRain  
    OP
       2022-01-04 15:21:29 +08:00 via iPhone
    @sun2920989 可是想代理全局网络呀
    sun2920989
        7
    sun2920989  
       2022-01-04 15:34:38 +08:00
    @yestodayHadRain 不就是访问 api 么.为什么要代理全局网络呢.
    neroxps
        8
    neroxps  
       2022-01-04 17:05:26 +08:00
    1 层 1 层排查,先解决 3 层的问题再往上查

    VPN ping openvpn 服务器 IP 是否通,需要链接的应用是否和 openvpn 服务器在一起,如果不在一起那么路由是否可达?
    yestodayHadRain
        9
    yestodayHadRain  
    OP
       2022-01-04 17:13:21 +08:00 via iPhone
    @sun2920989 本地有银行的客户端还有其他应用都要走代理
    sun2920989
        10
    sun2920989  
       2022-01-04 17:26:11 +08:00
    @yestodayHadRain 走不了本机的 sock5 代理吗.或者试试反代然后修改 api 地址这个思路呢.当然 vpn 如果搞定了肯定也是可以的.
    defunct9
        11
    defunct9  
       2022-01-04 17:33:37 +08:00
    开 ssh ,让我上去看看
    yestodayHadRain
        12
    yestodayHadRain  
    OP
       2022-01-04 23:06:58 +08:00 via iPhone
    @defunct9 大佬方便加个联系方式吗?
    defunct9
        13
    defunct9  
       2022-01-05 10:50:27 +08:00
    搞定收工
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   882 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 22:00 · PVG 06:00 · LAX 14:00 · JFK 17:00
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.