Alpaca 使用教程
1. 项目介绍
Alpaca 是一个为命令行工具设计的本地 HTTP 代理。它支持代理自动配置(PAC)文件和 NTLM 认证。Alpaca 允许你在不同的网络环境中使用命令行工具时,通过 PAC 文件来动态地设置代理,同时也能够处理 NTLM 认证,这在企业环境中尤其有用。
2. 项目快速启动
使用 Homebrew 安装(macOS)
如果你使用 macOS 并且已经安装了 Homebrew,可以通过以下命令安装 Alpaca:
brew tap samuong/alpaca
brew install samuong/alpaca/alpaca
启动 Alpaca 通过运行以下命令:
alpaca
或者使用 Homebrew 服务启动:
brew services start alpaca
使用 Go 安装
如果你已经安装了 Go 工具,可以通过以下命令安装 Alpaca:
go install github.com/samuong/alpaca/v2@latest
下载二进制文件
Alpaca 可以从 GitHub 发布页面下载。
从发行包安装
请参考官方文档进行从发行包的安装。
3. 应用案例和最佳实践
配置环境变量
为了使命令行工具通过 Alpaca 代理工作,通常需要设置 http_proxy
和 https_proxy
环境变量:
export http_proxy=http://localhost:3128
export https_proxy=http://localhost:3128
例如,你可以通过 Alpaca 代理使用 curl:
curl -s https://example.com
NTLM 认证
如果你需要使用 NTLM 认证,可以将你的凭据存储在环境变量中或系统钥匙串中。以下是如何在 Linux/GNOME 系统中将密码存储在钥匙串中的示例:
export NTLM_USERNAME="your-username"
export NTLM_DOMAIN="your-domain"
sudo apt install libsecret-tools
secret-tool store -c login -l "NTLM credentials" "service" "alpaca" "username" "$NTLM_USERNAME" "password" "your-password"
然后可以像平常一样启动 Alpaca。
网络切换
当从企业网络切换到公共 WiFi网络(或反之)时,PAC 文件中列出的代理可能无法访问。在这种情况下,Alpaca 会临时绕过父代理,直接发送请求,这样就不需要在网络之间切换时手动设置或取消设置 http_proxy
和 https_proxy
。
4. 典型生态项目
目前,Alpaca 项目主要是独立使用的,并没有一个广泛的生态项目列表。但是,任何需要通过命令行工具进行网络请求并且需要代理配置的项目都可以考虑集成 Alpaca。开发者可以根据实际需要,将 Alpaca 集成到自己的工具链中,以实现更好的网络代理管理。