• 请不要在回答技术问题时复制粘贴 AI 生成的内容
roycestevie6761
V2EX  ›  程序员

本人网络小白,问个代理软件如何解决 https 证书的问题

  •  
  •   roycestevie6761 · Jan 15, 2023 · 6536 views
    This topic created in 1232 days ago, the information mentioned may be changed or developed.

    如题,之前一直在 windows 端用 Clash ,都是下载订阅然后开启代理直接用了。但是最近 linux 上也有用代理的需求,于是我也用 Clash ,但是开启之后,curl google 没问题,但是 git clone github 上的一些 releases ,就一直失败,提示 gnutls_handshake() failed: The TLS connection was non-properly terminated.

    有大佬知道解决方式吗

    16 replies    2023-07-27 23:04:30 +08:00
    A01514035
        1
    A01514035  
       Jan 15, 2023
    google 一下就有吧
    roycestevie6761
        2
    roycestevie6761  
    OP
       Jan 15, 2023
    这些都没有用,我都试过了
    roycestevie6761
        3
    roycestevie6761  
    OP
       Jan 15, 2023
    roycestevie6761
        4
    roycestevie6761  
    OP
       Jan 15, 2023
    @A01514035 这些我都看过,这方法没用,wget 也有这个问题
    roycestevie6761
        5
    roycestevie6761  
    OP
       Jan 15, 2023
    @A01514035 开代理后,python 的 pip 也会报 tls 错误,网上的方法都是说关代理,但是没查到不关代理怎么解决
    puck260
        6
    puck260  
       Jan 15, 2023
    我是经常挂着梯子,在 win 的环境 clone 不了,经常性的无法提交,查了查,是需要把端口开放给 git ,具体的指令:
    git config --global http.proxy 'socks5://127.0.0.1:7890',我是这样解决的
    puck260
        7
    puck260  
       Jan 15, 2023
    端口换成你 clash 的端口,win 默认是 7890 ,htpps 同理
    wangyu17455
        8
    wangyu17455  
       Jan 15, 2023
    1:proxychains
    2:export https_proxy
    3:clash tun 模式
    4:clash_meta iptables 模式
    5:试试 ssh 协议,这个阻断的少
    从上往下推荐程度依次降低
    ysc3839
        9
    ysc3839  
       Jan 15, 2023 via Android
    大概就是你的代理断开连接了。至于为什么断就不知道了。

    @puck260 Git 底层使用 curl 进行网络请求,而 curl 的代理设置中 socks5 会用本地 DNS 进行解析,可能会遇到 DNS 污染导致无法连接,应该改成 socks5h 使用远程解析 DNS 。
    roycestevie6761
        10
    roycestevie6761  
    OP
       Jan 15, 2023
    @puck260 我在 ubuntu 上用
    ```
    export http_proxy="http://127.0.0.1:7890"
    export https_proxy="http://127.0.0.1:7890"
    ```
    这应该是所有 http\https 都可以代理的吧,不需要 git 在单独设置了? 这点我不确定。

    在 windows 上用的话,Clash General 上有个专门打开代理终端的选项
    roycestevie6761
        11
    roycestevie6761  
    OP
       Jan 15, 2023
    @wangyu17455 感谢回答
    roycestevie6761
        12
    roycestevie6761  
    OP
       Jan 15, 2023
    @ysc3839 我换了一个好点的代理,突然就能用了,奇怪。
    roycestevie6761
        13
    roycestevie6761  
    OP
       Jan 15, 2023
    我又研究了一下。将 Clash 启动后,lsof -i:7890 ,发现没有人监听
    roycestevie6761
        14
    roycestevie6761  
    OP
       Jan 15, 2023
    我的 CloudStudio 中的一台机子
    ```
    ➜ clash ps -a
    PID TTY TIME CMD
    1557 pts/0 00:00:00 clash-linux-amd
    5307 pts/1 00:00:00 ps
    ➜ clash lsof -i:7890
    COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
    clash-lin 1557 root 8u IPv4 2435773225 0t0 TCP localhost:7890 (LISTEN)
    ```

    出现问题的腾讯云的机子。
    ```
    lighthouse@VM-4-4-ubuntu:~$ ps -a
    PID TTY TIME CMD
    2610 pts/2 00:00:00 clash-linux-amd
    3633 pts/14 00:00:00 orca-bash.sh
    3641 pts/14 00:00:00 sleep
    3645 pts/10 00:00:00 ps
    16667 pts/7 00:01:09 lumen
    26119 pts/25 00:00:49 cloudreve
    29314 pts/14 00:00:00 orca-bash.sh

    lighthouse@VM-4-4-ubuntu:~$ lsof -i:7890
    (没输出,奇怪)
    ```
    roycestevie6761
        15
    roycestevie6761  
    OP
       Jan 15, 2023
    lighthouse@VM-4-4-ubuntu:~$ sudo lsof -i tcp:7890
    COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
    clash-lin 22959 root 7u IPv4 161499315 0t0 TCP localhost:7890 (LISTEN)

    只有 sudo 才会出现这个 Clash 进程,但是 ps -a 没有,ps -A 有,说明这个 Clash 上几次终端的,可能是上几次乱用 sudo nohup 命令搞的,但是新 Clash 启动也不提示端口已经占用。把这个进程 kill 掉,重新启动 Clash 就行了,问题就此解决,受 @ysc3839 启发,我怎么也没想到 Clash 正常启动后端口没有正常监听的问题,他也不提示一下。
    roycestevie6761
        16
    roycestevie6761  
    OP
       Jul 27, 2023
    结帖
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5555 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 91ms · UTC 07:42 · PVG 15:42 · LAX 00:42 · JFK 03:42
    ♥ Do have faith in what you're doing.