摘要
技术永远不在一个人手上,感谢这些人对我们作出的伟大贡献。
#wget https://storage.googleapis.com/golang/go1.5.linux-amd64.tar.gz #如果速度不行用本站地址
wget http://www.dwhd.org/script/tar_gz_bz2/go1.5.linux-amd64.tar.gz
tar xf go1.5.linux-amd64.tar.gz -C /usr/local
echo "export GOROOT=/usr/local/go
export PATH=\$PATH:\$GOROOT/bin
export GOPATH=/home/go" >/etc/profile.d/go.sh
. /etc/profile.d/go.sh
go get github.com/shell909090/goproxy
cd /home/go/src/github.com/shell909090/goproxy
go get github.com/miekg/dns
go get github.com/op/go-logging
mkdir -p /usr/local/goproxy/{bin,config}
echo "export PATH=\$PATH:/usr/local/goproxy/bin" > /etc/profile.d/goproxy.sh
. /etc/profile.d/goproxy.sh
go build -o /usr/local/goproxy/bin/goproxy github.com/shell909090/goproxy/goproxy
chmod +x /usr/local/goproxy/bin/goproxy
yum install lrzsz -y
sz /usr/local/goproxy/bin/goproxy.exe /usr/local/goproxy/bin/goproxy_x64.exe \
/home/go/src/github.com/shell909090/goproxy/debian/routes.list.gz#下载客户端到本地
1080U2B 毫无压力
本站已经编译好了各种版本
http://www.dwhd.org/goproxy/goproxy_linux_386
http://www.dwhd.org/goproxy/goproxy_linux_amd64
http://www.dwhd.org/goproxy/goproxy_windows_386.exe
http://www.dwhd.org/goproxy/goproxy_windows_amd64.exe
http://www.dwhd.org/goproxy/goproxy_darwin_386
http://www.dwhd.org/goproxy/goproxy_darwin_amd64
http://www.dwhd.org/goproxy/goproxy_freebsd_386
http://www.dwhd.org/goproxy/goproxy_freebsd_amd64
http://www.dwhd.org/goproxy/goproxy_arm
http://www.dwhd.org/goproxy/goproxy_arm64
各种平台交叉编译方法
GOOS=linux GOARCH=386 go build -o bin/goproxy_linux_386 github.com/shell909090/goproxy/goproxy
GOOS=darwin GOARCH=386 go build -o bin/goproxy_darwin_386 github.com/shell909090/goproxy/goproxy
GOOS=freebsd GOARCH=386 go build -o bin/goproxy_freebsd_386 github.com/shell909090/goproxy/goproxy
GOOS=windows GOARCH=386 go build -o bin/goproxy_windows_386.exe github.com/shell909090/goproxy/goproxy
GOOS=linux GOARCH=amd64 go build -o bin/goproxy_linux_amd64 github.com/shell909090/goproxy/goproxy
GOOS=darwin GOARCH=amd64 go build -o bin/goproxy_darwin_amd64 github.com/shell909090/goproxy/goproxy
GOOS=freebsd GOARCH=amd64 go build -o bin/goproxy_freebsd_amd64 github.com/shell909090/goproxy/goproxy
GOOS=windows GOARCH=amd64 go build -o bin/goproxy_windows_amd64.exe github.com/shell909090/goproxy/goproxy
GOOS=linux GOARCH=arm go build -o bin/goproxy_arm github.com/shell909090/goproxy/goproxy
GOOS=linux GOARCH=arm64 go build -o bin/goproxy_arm64 github.com/shell909090/goproxy/goproxy
真正的用法在下面~~
mkdir -p {/usr/local/goproxy/{bin,config},/tmp/goproxy}
cd /tmp/
echo "export PATH=\$PATH:/usr/local/goproxy/bin" > /etc/profile
source /etc/profile
if [ ! -x /usr/local/goproxy/bin/goproxy ]; then
[ "$(getconf LONG_BIT)" = "64" ] && wget -4cq http://www.dwhd.org/goproxy/goproxy_linux_amd64 -O /usr/local/goproxy/bin/goproxy
[ "$(getconf LONG_BIT)" = "32" ] && wget -4cq http://www.dwhd.org/goproxy/goproxy_linux_386 -O /usr/local/goproxy/bin/goproxy
/usr/local/goproxy/bin/goproxy
fi
UserName=`date +%s%N | sha256sum | base64 | head -c 16`
PassWord=`date +%s%N | sha256sum | base64 | head -c 16`
Key=`head -c 16 /dev/random | base64`
IPaddress=`curl -4s curlip.me|awk '{print $2;exit}'`
cat >/usr/local/goproxy/config/config.json<< EOF
{
"mode": "server",
"listen": ":5233",
"logfile": "",
"loglevel": "WARNING",
"adminiface": "127.0.0.1:5234",
"cipher": "aes",
"key": "$Key",
"passwd": {
"$UserName": "$PassWord"
}
}
EOF
cat >/tmp/goproxy/config.json<< EOF
{
"mode": "http",
"listen": ":5233",
"server": "$IPaddress:5233",
"logfile": "./goproxy.log",
"loglevel": "NOTICE",
"adminiface": "127.0.0.1:5234",
"dnsnet": "internal",
"cipher": "aes",
"key": "$Key",
"blackfile": "./routes.list.gz",
"username": "$UserName",
"password": "$PassWord"
}
EOF
wget http://www.dwhd.org/goproxy/routes.list.gz -O /tmp/goproxy/routes.list.gz
wget http://www.dwhd.org/goproxy/RunHiddenConsole.exe -O /tmp/goproxy/RunHiddenConsole.exe
yum install tofrodos -y
echo '@echo off
+>./goproxy.log
RunHiddenConsole ./goproxy.exe -config ./config.json' > /tmp/goproxy/GoProxy.bat
unix2dos -k /tmp/goproxy/GoProxy.bat
[ "$(getconf LONG_BIT)" = "32" ] && wget -4cq http://www.rarlab.com/rar/rarlinux-5.2.1.tar.gz
[ "$(getconf LONG_BIT)" = "64" ] && wget -4cq http://www.rarlab.com/rar/rarlinux-x64-5.2.1.tar.gz
tar xf rarlinux*.tar.gz && cd rar && make
rar a goproxy_client.rar goproxy