代理服务器proxychains 编译安装和使用

代理服务器proxychains 编译安装和使用

平台

硬件平台:龙芯3A3000软件平台中标麒麟

下载源码

如果clone 不下来就下载zip 我就存在下载不动的情况

git clone https://github.com/rofl0r/proxychains-ng.git

这是我fork出来的版本,下面的安装操作都是在这个版本进行的,官方版本一直在更新

https://github.com/90geek/proxychains-ng.git

编译源码并安装

此处的prefix路径一定是/usr 如果换成其他会出现couldnt locate libproxychains4.so

./configure --prefix=/usr --sysconfdir=/etc

需要gcc环境

makemake installmake install-config

操作如下:

[root@localhost my]# cd proxychains-ng/ [root@localhost proxychains-ng]# ls AUTHORSconfig.makconfigureCOPYINGlibproxychains4.soMakefileproxychains4READMEsrctestsTODOtoolsVERSION [root@localhost proxychains-ng]# [root@localhost proxychains-ng]# ./configure --prefix=/usr --sysconfdir=/etc checking whether we have GNU-style getservbyname_r() ... yes checking whether we have pipe2() and O_CLOEXEC ... yes checking whether $CC defines __APPLE__ ... no checking whether $CC defines __FreeBSD__ ... no checking whether $CC defines __OpenBSD__ ... no checking whether $CC defines __sun ... no checking whether we can use -Wl,--no-as-needed ... yes checking whats the option to use in linker to set library name ... --soname Done, now run make && make install [root@localhost proxychains-ng]# [root@localhost proxychains-ng]# make cc -DSUPER_SECURE -DHAVE_GNU_GETSERVBYNAME_R -DHAVE_PIPE2 -Wall -O0 -g -std=c99 -D_GNU_SOURCE -pipe-DLIB_DIR=\"/usr/lib\" -DSYSCONFDIR=\"/etc\" -DDLL_NAME=\"libproxychains4.so\"-fPIC -c -o src/nameinfo.o src/nameinfo.c printf #define VERSION "%s"\n "$(sh tools/version.sh)" > src/version.h cc -DSUPER_SECURE -DHAVE_GNU_GETSERVBYNAME_R -DHAVE_PIPE2 -Wall -O0 -g -std=c99 -D_GNU_SOURCE -pipe-DLIB_DIR=\"/usr/lib\" -DSYSCONFDIR=\"/etc\" -DDLL_NAME=\"libproxychains4.so\"-fPIC -c -o src/version.o src/version.c cc -DSUPER_SECURE -DHAVE_GNU_GETSERVBYNAME_R -DHAVE_PIPE2 -Wall -O0 -g -std=c99 -D_GNU_SOURCE -pipe-DLIB_DIR=\"/usr/lib\" -DSYSCONFDIR=\"/etc\" -DDLL_NAME=\"libproxychains4.so\"-fPIC -c -o src/core.o src/core.c cc -DSUPER_SECURE -DHAVE_GNU_GETSERVBYNAME_R -DHAVE_PIPE2 -Wall -O0 -g -std=c99 -D_GNU_SOURCE -pipe-DLIB_DIR=\"/usr/lib\" -DSYSCONFDIR=\"/etc\" -DDLL_NAME=\"libproxychains4.so\"-fPIC -c -o src/common.o src/common.c cc -DSUPER_SECURE -DHAVE_GNU_GETSERVBYNAME_R -DHAVE_PIPE2 -Wall -O0 -g -std=c99 -D_GNU_SOURCE -pipe-DLIB_DIR=\"/usr/lib\" -DSYSCONFDIR=\"/etc\" -DDLL_NAME=\"libproxychains4.so\"-fPIC -c -o src/libproxychains.o src/libproxychains.c cc -DSUPER_SECURE -DHAVE_GNU_GETSERVBYNAME_R -DHAVE_PIPE2 -Wall -O0 -g -std=c99 -D_GNU_SOURCE -pipe-DLIB_DIR=\"/usr/lib\" -DSYSCONFDIR=\"/etc\" -DDLL_NAME=\"libproxychains4.so\"-fPIC -c -o src/allocator_thread.o src/allocator_thread.c cc -DSUPER_SECURE -DHAVE_GNU_GETSERVBYNAME_R -DHAVE_PIPE2 -Wall -O0 -g -std=c99 -D_GNU_SOURCE -pipe-DLIB_DIR=\"/usr/lib\" -DSYSCONFDIR=\"/etc\" -DDLL_NAME=\"libproxychains4.so\"-fPIC -c -o src/ip_type.o src/ip_type.c cc -DSUPER_SECURE -DHAVE_GNU_GETSERVBYNAME_R -DHAVE_PIPE2 -Wall -O0 -g -std=c99 -D_GNU_SOURCE -pipe-DLIB_DIR=\"/usr/lib\" -DSYSCONFDIR=\"/etc\" -DDLL_NAME=\"libproxychains4.so\"-fPIC -c -o src/hostsreader.o src/hostsreader.c cc -DSUPER_SECURE -DHAVE_GNU_GETSERVBYNAME_R -DHAVE_PIPE2 -Wall -O0 -g -std=c99 -D_GNU_SOURCE -pipe-DLIB_DIR=\"/usr/lib\" -DSYSCONFDIR=\"/etc\" -DDLL_NAME=\"libproxychains4.so\"-fPIC -c -o src/hash.o src/hash.c cc -DSUPER_SECURE -DHAVE_GNU_GETSERVBYNAME_R -DHAVE_PIPE2 -Wall -O0 -g -std=c99 -D_GNU_SOURCE -pipe-DLIB_DIR=\"/usr/lib\" -DSYSCONFDIR=\"/etc\" -DDLL_NAME=\"libproxychains4.so\"-fPIC -c -o src/debug.o src/debug.c cc -fPIC -Wl,--no-as-needed -ldl -lpthread -Wl,--soname,libproxychains4.so\ -shared -o libproxychains4.so src/nameinfo.o src/version.o src/core.o src/common.o src/libproxychains.o src/allocator_thread.o src/ip_type.o src/hostsreader.o src/hash.o src/debug.o cc -DSUPER_SECURE -DHAVE_GNU_GETSERVBYNAME_R -DHAVE_PIPE2 -Wall -O0 -g -std=c99 -D_GNU_SOURCE -pipe-DLIB_DIR=\"/usr/lib\" -DSYSCONFDIR=\"/etc\" -DDLL_NAME=\"libproxychains4.so\"-fPIC -c -o src/main.o src/main.c cc src/main.o src/common.o-o proxychains4 [root@localhost proxychains-ng]# sudo make install ./tools/install.sh -D -m 644 libproxychains4.so /usr/lib/libproxychains4.so ./tools/install.sh -D -m 755 proxychains4 /usr/bin/proxychains4 [root@localhost proxychains-ng]# sudo make install-config [root@localhost proxychains-ng]# sudo make install-config ./tools/install.sh -D -m 644 src/proxychains.conf /etc/proxychains.conf

配置proxychains

将最后一行的sock4 改为 sock5 代理地址和端口根据自己shadowsocks的设置来进行设置

sudo vi /etc/proxychains.conf

……

[ProxyList] 112 # add proxy here ... 113 # meanwile 114 # defaults set to "tor" 115 #socks4 127.0.0.1 9050 116 socks5127.0.0.1 1080 117

验证

首先使用curl 查看自己的IP地址,在终端中输入curl http://ipinfo.io[root@localhost my]# curl ipinfo.io { "ip": ""上网ip", "hostname": "lists.loongnix.org", "city": "Jinrongjie", "region": "Beijing", "country": "CN", "loc": "39.9122,116.3561", "org": "AS4808 China Unicom Beijing Province Network", "timezone": "Asia/Shanghai", "readme": "" }[root@localhost my]#使用proxychains 代理自己的终端proxychains4 curl http://ipinfo.io[root@localhost my]# proxychains4 curl ipinfo.io [proxychains] config file found: /etc/proxychains.conf [proxychains] preloading /usr/lib/libproxychains4.so [proxychains] DLL init: proxychains-ng 4.14-git-6-g86408cd [proxychains] Strict chain...127.0.0.1:1080...ipinfo.io:80...OK { "ip": "服务器ip", "hostname": "服务器ip.16clouds.com", "city": "Los Angeles", "region": "California", "country": "US", "loc": "34.0443,-118.2509", "org": "AS25820 IT7 Networks Inc", "postal": "90014", "timezone": "America/Los_Angeles", "readme": "" }[root@localhost my]#

终端代理

Linux Common

输入代理

export http_proxy=127.0.0.1:8123export https_proxy=127.0.0.1:8123

取消代理

unset http_proxyunset https_proxy

功能拓展

proxychains 可以代理你想代理的任何应用,只需要在终端中输入 proxychains4 firefox 就可以代理使用火狐,同理适用于其他应用