解锁无限可能:将V2Ray打造为强大的HTTP代理,畅享开放互联网体验!
背景
由于GFW的限制, 由于技术资料的查询,要是没有goole确实比较难受.所以大家一般有翻墙工具,从ss/ssr,到现在的v2ray,用了v2ray之后确实不用担心被封的问题,但是日常必需要开v2ray的客户端,才能科学上网.如果是手机的话,是没法用的,因为手机没有v2ray的客户端.还有就是各种远程依赖包的下载,比如python/github/goole等国外的依赖包,没法直接用v2ray,需要开代理才可以.如果是本地还好,开启v2ray客户端,默认会在本地启动http代理.但是仅限于本地局域网.如果涉及到跨网或者服务端的话,那就暂时没法了.(当然开远程映射可以解决,但是你要确保你的客户端随时在线)
有没有1种方法能不能讲v2ray转换http代理提供服务?
当然有!!! 参考如下
步骤
(1)配置文件定义
config.json
修改accounts、users即可
{
"log": {
"access": "",
"error": "",
"loglevel": "error"
},
"inbounds": [
{
"tag": "socks-in",
"port": 1080,
"listen": "::",
"protocol": "socks",
"settings": {
"auth": "password",
"udp": true,
"ip": "127.0.0.1",
"accounts": [
{
"user": "admin",
"pass": "xxxxxxxxxxx"
}
]
}
},
{
"tag": "http-in",
"port": 8123,
"listen": "::",
"protocol": "http",
"settings": {
"timeout": 0,
"accounts": [
{
"user": "admin",
"pass": "xxxxxxxxxxx"
}
],
"allowTransparent": false,
"userLevel": 0
}
}
],
"outbounds": [
{
"protocol": "vmess",
"settings": {
"vnext": [
{
"address": "x.x.x",
"port": 22227,
"users": [
{
"email": "admin@v2ray.com",
"id": "23dsdasaeawwd-33ddsda-46d4-878f-d12312313123",
"alterId": 0,
"security": "auto"
}
]
}
]
},
"streamSettings": {
"network": "tcp"
},
"mux": {
"enabled": true
},
"tag": "proxy"
},
{
"protocol": "freedom",
"tag": "direct",
"settings": {
"domainStrategy": "UseIP"
}
}
],
"dns": {
"servers": [
"223.5.5.5",
"localhost"
]
},
"routing": {
"domainStrategy": "IPIfNonMatch",
"rules": [
{
"type": "field",
"ip": [
"geoip:private",
"geoip:cn"
],
"outboundTag": "direct"
},
{
"type": "field",
"domain": [
"geosite:cn"
],
"outboundTag": "direct"
}
]
}
}
(2)启动docker服务
docker在config.json同级目录
docker run --name v2 -v $PWD:/etc/v2ray -p 58888:8123 -d --restart=always --cpus 1 -m 512MB registry.cn-guangzhou.aliyuncs.com/mgpublic/v2ray-official:latest
(3)使用代理科学上网
1.临时设置代理
export http_proxy=http://huanggm:password@v2.abc.com:58888/
export https_proxy=http://huanggm:password@v2.abc.com:58888/
export ftp_proxy=http://huanggm:password@v2.abc.com:58888/
2.永久设置
将以上配置追加到/etc/profile即可,只针对某个用户而言,则修改 ~/.bash_profile 文件
3.curl命令行临时设置代理
#查询IP
curl -U huanggm:password -x v2.abc.com:58888 -L ip.sb
curl -U huanggm:password -x v2.abc.com:58888 -L ipinfo.io
curl -U huanggm:password -x v2.abc.com:58888 -L ip.tool.lu
curl -U huanggm:password -x v2.abc.com:58888 -L myip.ipip.net
curl -x "http://huanggm:password@v2.abc.com:58888 " "http://httpbin.org/ip"
4.直接在pip时设置代理
pip3 install –proxy http://代理地址:代理端口号 软件名称
5.yum代理设置
/etc/yum.conf
添加以下内容
proxy=http://代理服务器IP地址:端口号
proxy_username=代理服务器用户名
proxy_password=代理服务器密码
6.git代理设置
git config --global https.proxy https://proxyuser:proxypassword@ip/域名:port
git config --global http.proxy http://proxyuser:proxypassword@ip/域名:port
7.代理配置中的一些特殊字符
! --> %21 # --> %23 $ --> %24 & --> %26 ' --> %27
( --> %28 ) --> %29 * --> %2A + --> %2B , --> %2C
/ --> %2F : --> %3A ; --> %3B = --> %3D ? --> %3F
@ --> %40 [ --> %5B ] --> %5D
例如:
代理账户:admin
代理密码:admin@33ssdsad 其中@为特殊字符
代理服务器: http://192.168.1.100:8080
进行全局代理的时候,需要按照如下配置