Linux代理

环境变量代理

普通代理

在命令行中代理

export all_proxy=http://127.0.0.1:8080
export all_proxy="socks5://127.0.0.1:1080"

要将代理环境变量提供给所有用户和所有应用程序,可将命令添加到脚本中,如:/etc/profile.d/proxy.sh,脚本必须有可执行限。

#!/bin/bash

local proxy=http://127.0.0.1:8080
export http_proxy="$proxy" \
       https_proxy=$proxy \
       ftp_proxy=$proxy \
       rsync_proxy=$proxy \
       HTTP_PROXY=$proxy \
       HTTPS_PROXY=$proxy \
       FTP_PROXY=$proxy \
       RSYNC_PROXY=$proxy
export no_proxy="localhost,127.0.0.1,localaddress,.localdomain.com"

curlpacman 代理

export all_proxy=http://127.0.0.1:8080

另外,还有一个名为proxyman-git(AUR)的工具,可以轻松配置系统范围的代理设置。 它还处理gitnpmDropbox等其他软件的代理配置。

set 		代理服务器设置
uset 		取消代理设置
list 		列出当前设置
configs 	列出可用的配置
load 		加载配置文件
delete 		删除个人资料
help 		显示此帮助

配置文件位置~/.config/proxyman/

例:

proxyman set
 Enter details to set proxy
 HTTP Proxy  Host 127.0.0.1
 HTTP Proxy  Port 8889
 Use auth - userid/password (y/n)? n
 Use same for HTTPS and FTP (y/n)? y
 No Proxy  (default localhost,127.0.0.1,192.168.1.1,::1,*.local)
Save profile for later use (y/n)? y
 Enter profile name  : v2ray_http
Saved to /home/eonun/.config/proxyman/v2ray_http.

 Select targets to modify
| 1 | All of them ... Don't bother me
| 2 | Terminal / bash / zsh (current user)
| 3 | /etc/environment
| 4 | apt/dnf (Package manager)
| 5 | Desktop settings (GNOME/Ubuntu/KDE)
| 6 | npm & yarn
| 7 | Dropbox
| 8 | Git
| 9 | Docker

Separate multiple choices with space
 ? 1
Setting proxy...
To activate in current terminal window
run source ~/.bashrc
To activate in current terminal window
run source ~/.zshrc
Done

保持通过代理 sudo

将以下行添加到sudo配置文件/etc/sudoers.d/05_proxy中:

Defaults env_keep += "*_proxy *_PROXY"

软件代理

proxychains

安装 proxychains-ng (既能代理socks,又能代理http),配置文件/etc/proxychains.conf

# socks5
socks5 127.0.0.1 8080
socks4 127.0.0.1 9050

# http
http 127.0.0.1 1080

使用 proxychains xxxx 通过代理运行程序 xxxx

添加环境变量来设置减少提示信息

PROXYCHAINS_QUIET_MODE=1

或使用 -q 选项来实现

tsocks

安装tsocks(只能代理socks),配置文件 /etc/tsocks.conf

server = 127.0.0.1
server_port = 8080
server_type = 5
default_user = ""
default_pass = ""

curl 和 pacman 代理

export all_proxy="socks5://your.proxy:1080"

浏览器代理

浏览器可使用软件代理进行代理,也可用插件代理

Firefox 自带代理功能

Chromium 可安装插件 SwitchyOmega (GitHub官网)