最近需要给一台 Ubuntu 服务器配置全局代理,发现没有什么好办法,只能在上级路由哪里搭建全局翻墙才行,研究了一下 V2ray 的配置说明,将其部署成透明网关并且配置好分流、adblock,还可以链式代理。本文就是记录我如何实现这些功能的,哦,对了千万别碰 lede,别问我为什么。
如上所述,我需要让一台服务器自带翻墙,不需要配置任何东西就可以翻墙的那种程度,所以我就上网查,99% 的中文资料给的解决方案都是【软路由】不是我歧视这玩意,不管是家用环境还是生产环境,我是不敢使用软路由系统作为主力路由的,一旦出问题,就彻底断网,连上网找解决方案都不行(~~电脑上不了网复制不了命令~~)。
经过认真对比,我选择了透明网关,它和软路由有什么区别呢?打个比方家里只有三台上网设备、一只路由器、一只光猫。如下图所示:
这种情况下如果想要三台上网设备全部都全局翻墙,将路由器替换为软路由就是如下效果:
一旦软路由挂了,那所有上网设备都无法连接网络了,这种情况只能将软路由拿出来将路由器直接与上网设备直连来恢复网络。
而透明网关是这样的效果:
因为透明网关是将流量转发,在失效的时候可以直接使用更上级的网关,不需要修改物理线路,相较之下透明网关的方案更加简单安全。
最后,我使用一台 Ubuntu 虚拟机搭配 V2ray 这个神奇的网络工具,构建了一个非常好用的透明网关,能够实现全局\部分设备翻墙、国内外流量分流、广告屏蔽、链式代理。下面将详细记录我搭建的全部过程。
输入以下命令开启系统的IPV4转发功能:
echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf && sysctl -p
编辑 rc.local 文件 nano /etc/rc.local:
rc.local
nano /etc/rc.local
#!/bin/bash ifconfig eth0 【本机 IP】 netmask 255.255.255.0 route add default gw 【默认网关 IP or 路由器 IP】
添加上面的字段并保存,设置权限:
chmod 755 /etc/rc.local
curl -LROJ https://file.tstrs.me/software/v2ray/install-release.sh && bash install-release.sh
添加到系统服务并设置开机自启:
systemctl enable v2ray systemctl restart v2ray
修改限制 nano /etc/systemd/system/v2ray.service,在【Service】下面加一行:
nano /etc/systemd/system/v2ray.service
LimitNOFILE=1048576
wget -P /usr/local/bin https://file.tstrs.me/software/v2ray/geoip.dat && wget -P /usr/local/bin https://file.tstrs.me/software/v2ray/geosite.dat
其实这没什么好将的,我就 po 我正在使用的配置吧。
{ "dns": { "servers": [ { "address": "114.114.114.114", "port": 53, "domains": [ "geosite:cn" ] }, { "address": "1.1.1.1", "port": 53, "domains": [ "geosite:geolocation-!cn" ] } ] }, "inbounds": [{ "port": 【根据你的设置更改】, "protocol": "vmess", "settings": { "clients": [ { "id": "【根据你的设置更改】", "level": 1, "alterId": 64 } ] } }, { "port": 1080, "protocol": "socks", "settings": { "auth": "noauth", "udp": true } }, { "port": 12315, "protocol": "dokodemo-door", "settings": { "network": "tcp,udp", "followRedirect": true }, "sniffing": { "enabled": true, "destOverride": ["http", "tls"] } } ], "outbounds": [ { "tag": "proxy", "protocol": "vmess", "settings": { "vnext": [ { "address": "【根据你的设置更改】", "port": 【根据你的设置更改】, "users": [ { "id": "【根据你的设置更改】", "alterId": 【根据你的设置更改】 } ] } ] } }, { "protocol": "freedom", "settings": {}, "tag": "direct" }, { "protocol": "blackhole", "settings": {}, "tag": "adblock" } ], "routing": { "domainStrategy": "IPOnDemand", "rules": [ { "type": "field", "outboundTag": "adblock", "domain": ["geosite:category-ads"] }, { "type": "field", "outboundTag": "direct", "domain": ["geosite:cn"] }, { "type": "field", "outboundTag": "direct", "ip": [ "geoip:cn", "geoip:private" ] } ] } }
inbound 第一条规则是链式代理,如无需求请务必删除该规则。outbound 的规则就根据你正在使用的 V2ray 协议修改即可使用。
最后使用命令重新启动一下 V2ray :
service v2ray restart
输入以下命令使用 iptables 转发流量:
sudo iptables -t nat -N V2RAY sudo iptables -t nat -A V2RAY -d 192.168.0.0/16 -j RETURN sudo iptables -t nat -A V2RAY -p tcp -j REDIRECT --to-ports 12315 sudo iptables -t nat -A PREROUTING -p tcp -j V2RAY
如需将其开启自动配置好,请将其保存到 rc.local 文件中开机自启。
局域网内的主机将默认网关修改为透明网关所在的IP就可以实现本机全局自动翻墙,我上面的配置文件将国内流量国外流量自动分流了,并且遇到广告会自动屏蔽。客户端不需要做任何特殊设置即可使用。
如果想要实现全局域网都自动翻墙,那么修改路由器上的默认网关即可。
网络这块还挺好玩的,特别是 dokodemo-door 它可以中转各种各样的的流量。routing 部分也很有趣,我一台日本的 VPS 流量大速度快但是没解锁奈菲,看奈菲就会报错。香港的 VPS 呢,虽然解锁了奈菲但是来回切换梯子很麻烦,我就将奈菲的域名使用香港节点 outbound,其他的全部使用日本节点。
本来还想加上个免流,但家宽不能用 80、8080,索性作罢,下次再写吧。
advchange用来修改系统字体的,非常简单方便,修改完后注销重登陆即可看到效果。
在删除相册的时候还是有点恻隐之心的,毕竟辣么多年的照片要全删掉。
解决单用户模式重置密码的漏洞
KMS服务是微软针对大型企业设计的激活系统
本文就是一个详细的Mastodon安装教程
目录
热门标签
页面
更多语言
站点信息