美文网首页
服务器SSH隧道联网设置

服务器SSH隧道联网设置

作者: 多一点儿空气 | 来源:发表于2020-11-19 01:19 被阅读0次

    地址:https://www.jianshu.com/p/5e84046de28c
    部分服务器集群运行在局域网环境,无法联网,使用conda或pip时需在本地下载安装包上传再安装。可设置本机http监听端口,通过SSH隧道的反向代理功能实现服务器联网,下载各种安装包。


    1. 本地联网电脑设置

    需安装http代理软件,Ubuntu系统可使用TinyProxy,Windows系统则使用WProxy。

    WProxy下载地址

    i. Ubuntu系统( 或使用win10的WSL1子系统 )

    使用sudo apt-get install tinyproxy命令安装TinyProxy代理服务器,修改/etc/tinyproxy/tinyproxy.conf第23行Port监听端口(示例为20810),注释第212行Allow 127.0.0.1允许所有IP连接。运行sudo service tinyproxy start启动TinyProxy代理服务器。

    ii. Windows系统

    使用WProxy软件设置http代理。


    WProxy软件界面
    WProxy软件http代理配置界面

    2. 服务器端设置

    i. 若服务器可以连接本地电脑(在同一局域网)

    示例192.168.26.151为本地电脑IP,在本地电脑防火墙设置中开放20810端口外部连接权限。

    环境变量中设置代理

    export http_proxy=http://192.168.26.151:20810
    export https_proxy=http://192.168.26.151:20810
    export ftp_proxy=http://192.168.26.151:20810
    

    可添加至.bashrc文件中,该代理设置会影响所有可通过http代理联网的软件命令,也可以分别针对conda、pip、wget设置代理。

    conda

    在服务器用户根目录下新建.condarc文本文件,写入代理IP及端口,最后五行为设置使用国内镜像及显示包来源。

    proxy_servers:
      http: http://192.168.26.151:20810
      https: http://192.168.26.151:20810
    channels:
      - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
      - conda-forge
      - defaults
    show_channel_urls: true
    

    pip

    在pip命令后添加--proxy="192.168.26.151:20810"使用临时代理,或在服务器用户根目录下新建.pip文件夹,在文件夹中新建pip.conf文本文件,写入代理IP及端口,最后一行为设置使用国内镜像。

    [global]
    proxy=192.168.26.151:20810
    index-url=https://mirrors.aliyun.com/pypi/simple
    

    wget

    在wget命令后添加-e "http_proxy=192.168.26.151:20810"使用临时代理,或在服务器用户根目录下新建.wgetrc文件,写入代理IP及端口。

    # You can set the default proxies for Wget to use for http, https, and ftp.
    # They will override the value in the environment.
    https_proxy = http://192.168.26.151:20810
    http_proxy = http://192.168.26.151:20810
    ftp_proxy = http://192.168.26.151:20810
    # If you do not want to use proxy at all, set this to off.
    use_proxy = on
    

    ii. 若服务器无法连接本地电脑

    利用ssh的隧道的反向代理功能将本地http监听端口转移到服务器。


    Xshell隧道端口转发设置

    命令行参数为

    ssh -gnNTf -R 20814:localhost:20814 test@10.68.0.111

    代理配置中的IP改为127.0.0.1,同时可设置conda和pip使用国内镜像。

    环境变量中设置代理

    export http_proxy=http://127.0.0.1:20810
    export https_proxy=http://127.0.0.1:20810
    export ftp_proxy=http://127.0.0.1:20810
    

    conda

    proxy_servers:
      http: http://127.0.0.1:20810
      https: http://127.0.0.1:20810
    channels:
      - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
      - conda-forge
      - defaults
    show_channel_urls: true
    

    pip

    [global]
    proxy=127.0.0.1:20810
    index-url=https://mirrors.aliyun.com/pypi/simple
    

    wget

    # You can set the default proxies for Wget to use for http, https, and ftp.
    # They will override the value in the environment.
    https_proxy = http://127.0.0.1:20810
    http_proxy = http://127.0.0.1:20810
    ftp_proxy = http://127.0.0.1:20810
    # If you do not want to use proxy at all, set this to off.
    use_proxy = on
    

    3. 使用SOCKS代理

    conda、pip及wget无法直接使用SOCKS代理,可安装tsocks工具,在服务器用户根目录下新建.tsocks.conf文件,写入SOCKS类型、代理IP及端口。

    server = 127.0.0.1
    server_type = 5
    server_port = 20810
    

    在需使用代理的命令前添加tsocks即可。

    相关文章

      网友评论

          本文标题:服务器SSH隧道联网设置

          本文链接:https://www.haomeiwen.com/subject/ebitiktx.html