基于 Docker容器 的WARP 双栈出网 配置教程
source link: https://www.blueskyxn.com/202106/4629.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
本教程讲解的是基于宝塔面板和XSHELL手动配置Docker包,并非一键导入,由于相关法律法规问题,不会提供一键包,同时部分命令只发图,请自己改
选择Docker的原因
Docker容器中部署调试,比原主机更加安全,因为网络调试不当极其容易造成失联
同时在原机部署也会影响其他应用,而Docker可以在一定程度上进行隔离,且不用担心失联和干扰问题
同时Docker还能通过打包镜像来快速克隆
选择WARP的原因
WARP是CloudFlare 公司的一款保护隐私的代理程序,其大部分功能在中国大陆不可用,所以在中国大陆就别折腾了
WARP的IP相对各大机房IP来说,更优秀一点,但是同时也是跟TOR一样的公交车,如果IP管理比较严格反而不是好事
WARP在一定程度上被人们称为“原生IP”,可以“解锁流媒体”,且遍布全球各大地区(但并非所有有CFCDN的地区都有WARP)
WireGuard
如果内核5.X及以上基本内置了,其他版本请按照参考资料自行安装
Docker
可以参考2个京东羊毛的教程来安装,也可以用宝塔的Docker管理器
WGCF配置
wget https://github.com/ViRb3/wgcf/releases/download/v2.1.4/wgcf_2.1.4_linux_amd64
mv wgcf_2.1.4_linux_amd64 wgcf
chmod +x wgcf
./wgcf register
./wgcf generate
然后就能得到两个文件
为了方便,把这个profile.conf 改个名字
内容中的DNS自行改
Endpoint 必须改为如图所示
162.159.192.1:2408
Address 改为任意不冲突的保留(私有)地址就行
DOCKER环境构建
使用宝塔Docker管理器拉取Ubuntu镜像(本机系统无所谓)
或者SSH命令
docker pull ubuntu
激活一下WG
modprobe wireguard
运行Docker
docker run --restart=always -itd --name warp-docker --sysctl net.ipv6.conf.all.disable_ipv6=0 --privileged --cap-add net_admin --cap-add sys_module -p 14888:888 -v /etc/warp-docker:/usr/local/etc/v2ray -v /var/log/warp:/var/log/v2ray -v /etc/wg-docker:/etc/wireguard -v /lib/modules:/lib/modules ubuntu
888是docker内端口,14888是docker外端口
左边是外路径,右边是内路径
请根据实际情况修改,最后的modules千万不能动
WARP-DOCKER配置
连接Docker的SSH
docker exec -it warp-docker /bin/bash
安装点依赖包,注意有提示同步时间
apt update && apt install net-tools openresolv wireguard-tools vim lrzsz wget curl iproute2 unzip tzdata iputils-ping -y
本次选择手动配置,因为自动脚本失败了,如果你能自动成功,那就自动吧
从V2fly的项目中,获取发布包中的四个文件(一般为Linux-64)
cd对应路径,直接拖动文件到XSHELL里面就能自动上传到该位置
文件上传的路径如图所示,同时把这四个文件权限拉满
chmod +x "/usr/local/bin/v2ray"
chmod 777 "/usr/local/bin/v2ray"
chmod +x "/usr/local/bin/v2ctl"
chmod 777 "/usr/local/bin/v2ctl"
chmod +x "/usr/local/bin/geosite.dat"
chmod 777 "/usr/local/bin/geosite.dat"
chmod +x "/usr/local/bin/geoip.dat"
chmod 777 "/usr/local/bin/geoip.dat"
来到另外一个路径
把你配置好的Config.json用同样的方法上传上去【可以从其他配置好的机器复制来,格式都那样】
也可以用宝塔,之前已经把配置文件映射出来了
用命令运行看看
/usr/local/bin/v2ray -config /usr/local/etc/v2ray/config.json
没有报错,说明配置没啥问题
然后用nohup实现后台运行
nohup /usr/local/bin/v2ray -config /usr/local/etc/v2ray/config.json &
然后直接回车就行
Curl一下看看正常不正常
看来是可以了
注意Docker有点毛病,自启动啊,Service啊可能不能用,反正有问题就重新nohup运行一下
然后在容器的/etc/wireguard或者我映射到/etc/wg-docker的这个地方,把之前的wg0.conf上传进去
运行wgcf
wg-quick up wg0
然后检测下看看IP
显然已经是CF的人了
点击数:143
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK