软件代理大全

59次阅读
没有评论

共计 2107 个字符,预计需要花费 6 分钟才能阅读完成。

日常工作中经常会遇到因生产网段无法访问外网而带来的设置代理需求,本文整理了大部分工具、软件的代理设置姿势。

下文以 PROTOCOL 表示代理协议, USERNAME 表示代理用户名,PASSWORD 表示代理密码,HOST 表示代理地址,PORT 表示代理端口,请根据实际情况替换这些占位符。如果未设置 USERNAME 和 PASSWORD,省略即可。

Linux 系统

若系统为 Linux 系统,可修改 /etc/environment~/.bashrc 等文件来设置代理:

export http_proxy=PROTOCOL://USERNAME:PASSWORD@HOST:PORT
export https_proxy=PROTOCOL://USERNAME:PASSWORD@HOST:PORT

在开启系统代理后,大部分软件均会使用这些代理,但仍有部分软件还需要单独设置,若需要单独设置,可参考本文其他设置。

SSH

修改 ~/.ssh/config,对特定 Host 进行配置,如下是对 Git 服务器设置代理:

Host git.xxxx.corp.com
    HostName git.xxxx.corp.com
    User xxx
    IdentityFile  ~/.ssh/id_rsa
    ProxyCommand  /usr/bin/nc -v -X PROTOCOL -P USERNAME -x HOST:PORT %h %p

其中 -X 指定了协议,目前有如下几个值:

  • 4:表示 socks4
  • 5:表示 socks5
  • CONNECT:表示 https

若未指定则默认为 socks5。如为 sock5 协议,则 ProxyCommand 可写为 ProxyCommand /usr/bin/nc -v -x HOST:PORT %h %p

修改 SSH 配置后,会对许多使用 SSH 服务的应用均生效,如 git。

Git

git 默认提供了 git 和 https 两种协议,若使用 git 协议可参考 SSH 部分设置。这里说下 https 协议的代理设置。

编辑 ~/.gitconfig,增加如下配置:

[http]
[http "https://github.com"]
    proxy = PROTOCOL://USERNAME:PASSWORD@HOST:PORT

或执行如下命令进行设置:

git config --global http.proxy PROTOCOL://USERNAME:PASSWORD@HOST:PORT

Maven

参考 Configuring a proxy,编辑 ~/.m2/settings.xml,增加如下配置:


    
        example-proxy
        true
        PROTOCOL
        HOST
        PORT
        USERNAME
        PASSWORD
        www.google.com|*.github.com|*.apache.org
    

Golang

Golang 可以使用系统代理。
如果仅仅只想修改模块下载地址,可使用 go env -w GOPROXY=https://goproxy.cn,direct 设置为从 goproxy.cn 下载模块。

npm

设置代理

  • http proxy
    • 开启:npm config set proxy socks5://127.0.0.1:1080,若设置了 HTTP_PROXYhttp_proxy 环境变量,request 库将遵循环境变量代理设置。
    • 取消:npm config delete proxy
  • https proxy
    • 开启:npm config set https-proxy sock5://127.0.0.1:1080,若设置了 HTTPS_PROXYhttps_proxyHTTP_PROXYhttp_proxy 环境变量,make-fetch-happen 库将遵循代理设置
    • 取消:npm config delete https-proxy
  • noproxy
    • 开启:npm config set noproxy localhost,127.0.0.*
    • 取消:npm config delete noproxy

或编辑 ~/.npmrc

proxy=socks5://127.0.0.1:1080
https-proxy=socks5://127.0.0.1:1080
// or
// https_proxy=socks5://127.0.0.1:1080

设置 registry

registry 默认值为 https://registry.npmjs.org/,国内用户在使用时可指定为 https://registry.npmmirror.com

  • 临时使用:npm install x --registry=https://registry.npmmirror.com
  • 持久使用:npm config set registry https://registry.npmmirror.com
  • 恢复官方 registry:npm config set registry https://registry.npmjs.org
  • 查看 registry:npm config get registry

cnpm

使用 cnpm 来代表 npm

  1. 安装 cnpm:npm install -g cnpm --registry=https://registry.npmmirror.com
  2. 使用 cnpm:cnpm install x
正文完
 0
管理员
版权声明:本站原创文章,由 管理员 于2022-11-15发表,共计2107字。
转载说明:除特殊说明外本站文章皆由 CC-4.0 协议发布,转载请注明出处。
评论(没有评论)