使用内网环境下的代理讨论

我有一身绝佳的溜门撬锁技巧

环境

  • host: win10 ip:192.168.223.102 with shadowsocks 服务端口 1080
  • guest: centos7(vm虚拟机) ip:192.168.223.118
  • 桥接网络。。。。。。。。。。。

如果是nat转发,则可以把下文的代理地址替换为host的nat网关ip 类似 10.0.15.1

问题

host 已经配置sock5 代理 在 1080 端口,如何让guest虚拟机能够使用host代理?

方案

方案1 — proxychains

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
yum  install  gcc

wget --no-check-certificate https://github.com/pypa/pip/archive/1.5.5.tar.gz
tar zvxf 1.5.5.tar.gz    #解压文件
cd pip-1.5.5/
python setup.py install

yum install -y git

cd /opt
git clone https://github.com/haad/proxychains
cd proxychains/
./configure --sysconfdir=/usr/local/etc
make && make install
  • 配置文件位于 /opt/proxychains/src/proxychains.conf 需要拷贝 cp /opt/proxychains/src/proxychains.conf /etc/proxychains.conf
  • 配置: 在上述文件末尾修改 代理配置 (eg: socks5 192.168.223.2 1080

  • 调用方法: proxychains4 + 命令

方案2 — 添加环境变量代理

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
vi ~/.bash_profile  # or .bashrc  or .zshrc
#  末尾添加如下内容
export http_proxy=http://192.168.223.102:1080/   # host的shadowsocks服务支持http


# 如果使用代理的环境复杂还可以按需添加如下变量
export https_proxy=$http_proxy  #
export ftp_proxy=$http_proxy   # 内网常用ftp时最好不要加,有大坑
export rsync_proxy=$http_proxy   # 不懂
export no_proxy="localhost,127.0.0.1,localaddress,.localdomain.com"  # 不需要代理的东东

# 退出 vi
# 使应用生效(若不生效则重启shell 或者注销当前用户 或 sudo reboot)
source ~/.bash_profile  # 参见第一行
comments powered by Disqus