月下博客

一键搭建HTTP代理服务器的小工具 ——Tiny Proxy (附在线PAC制作方法)

本文最后更新于 2018年9月20日 19:58 可能会因为没有更新而失效。如已失效或需要修正,请留言!

平时对这些小软件关注度不高,很多功能不错的我都不知道,这个是有个人推荐给我的,试了下的确简单好用,那我就写个简单教程好了!

同时把制作在线PAC文件的方法也写出来。

目前 HTTP明文代理 方式科学上网效果不如以前,防火墙针对性更强,如非必须,不推荐使用!

准备说明

我是以 Debian7 系统做教程的,其他系统未测试。

开始安装

apt-get update
apt-get install tinyproxy -y

然后刷刷刷的就安装完了。

配置说明

配置很简单,只要改一改代理端口和取消IP限制就行了。

打开配置文件,

vi /etc/tinyproxy.conf

然后找到下面几个参数

Port 8888
Timeout 600
MaxClients 100
Allow 127.0.0.1

然后重启Tiny,

/etc/init.d/tinyproxy restart
如果提示没有这个服务,就试试这个: sudo service tinyproxy restart

同时,如果你开了iptables防火墙,需要开放对应端口,自行替换 8888 为自己的代理服务器端口。

iptables -I INPUT -p tcp --dport 8888 -j ACCEPT
iptables -I INPUT -p udp --dport 8888 -j ACCEPT

# 如果要删除防火墙规则那么只需要把 -I 改成 -D即可
iptables -D INPUT -p tcp --dport 8888 -j ACCEPT
iptables -D INPUT -p udp --dport 8888 -j ACCEPT

然后,看一下端口是否开启:

netstat -lntp

输入完上面这个命令后,你会看到类似于下面这个信息,

tcp     0   0 0.0.0.0:25           0.0.0.0:*            LISTEN   3732/tinyproxy

看看你的代理服务器端口(比如8888、25)是不是存在。

在VPS上制作在线PAC文件

首先安装Caddy,

wget -N --no-check-certificate https://raw.githubusercontent.com/ToyoDAdoubiBackup/doubi/master/caddy_install.sh && chmod +x caddy_install.sh && bash caddy_install.sh install http.filemanager

安装Caddy成功后,继续新建一个虚拟主机文件夹,

mkdir /usr/local/caddy/www && mkdir /usr/local/caddy/www/pac

写入虚拟主机配置到 Caddy 配置文件,注意下面这几行要一起复制粘贴,不是一行一行复制!

# 以下全部内容是一个整体,是一个命令,全部复制粘贴到SSH软件中并一起执行!
echo ":80 {
 root /usr/local/caddy/www/pac
 gzip
}" > /usr/local/caddy/Caddyfile

上面的代码执行完后,启动Caddy即可。

/etc/init.d/caddy start

然后下载PAC文件到虚拟主机文件夹,

wget --no-check-certificate -P "/usr/local/caddy/www/pac" https://raw.githubusercontent.com/ToyoDAdoubiBackup/doubi/master/other/proxy.pac

编辑PAC文件

vi proxy.pac

I 键 进入编辑模式,找到第三行把 127.0.0.1 改成你的 VPS的IP

var proxy =  "PROXY 127.0.0.1:25;";

然后按 Esc 键 退出编辑模式,然后输入 :wq 保存并退出。

这时候你的在线PAC地址就是: http://你的VPS IP/proxy.pac

TinyProxy 使用方法

启动:/etc/init.d/tinyproxy start

停止:/etc/init.d/tinyproxy stop

重启:/etc/init.d/tinyproxy restart

重载:/etc/init.d/tinyproxy reload

查看端口:netstat -lntp

Caddy 使用方法

启动:/etc/init.d/caddy start

停止:/etc/init.d/caddy stop

重启:/etc/init.d/caddy restart

查看状态:/etc/init.d/caddy status


HTTP或者PAC的使用方法 偷懒不想截图,直接去看种便捷的全自动代理方式——PAC代理的使用方法吧。。

其他说明

启动显示成功,但是实际未运行

点击展开 查看更多

因为 服务脚本判断的问题,只判断了nohub是否运行 Caddy成功,但没有判断 Caddy 是否保持正常运行。

你可以理解为,nohub成功启动了 Caddy,但是 Caddy因为配置文件错误等原因,启动后又退出了。

所以这种情况下,你应该去查看启动日志:

tail -f /tmp/caddy.log

定时重启

经过大家反馈,发现在长时间运行并使用Tinyproxy后,负载会很高,所以需要定期重启释放内存和CPU。

点击展开 查看更多

打开定时任务设置,如果提示没有服务,请输入 apt-get install -y cron 安装。

crontab -e

I键后加入下面一行代码(不懂vi操作的请看这个:Linux中VIM编辑器的真 · 简单使用教程),然后按ESC键退出vi编辑模式,然后输入:wq保存并退出该文件。(这个是每天晚上3点0分重启)

0 3 * * * /etc/init.d/tinyproxy restart

crontab使用方法简单解释一下。

添加的命令需要一行一个,格式是分钟(0-59) 小时(0-23) 日期(1-31) 月份(1-12) 星期(0-7) 要执行的命令

如果要做成每三天的11点59分重启一下,就看下面这个代码(“*/”代表“每”

59 11 */3 * * /etc/init.d/tinyproxy restart
注意:日期中,如果某月没有31日,就不会执行;星期中,0和7都代表星期日;如果不需要设置值的请用“*”;所有数值都需要是整数!

开机启动

一些人可能需要开机启动,我就一起写上吧。

点击展开 查看更多

首先设置开机启动文件的权限,并打开该文件。

chmod +x /etc/rc.local
vi /etc/rc.local

然后在 exit 0 这一句代码的前面加上 下面这句代码。

/etc/init.d/tinyproxy start

然后按ESC键退出vi编辑模式,然后输入:wq保存并退出该文件,就完成了。

SendMail占用25端口问题

一些系统默认安装了SendMail服务来发邮件,但是正好会占用25、465、587这三个邮件端口,所以需要关闭这个软件。

点击展开 查看更多

使用下面这个命令就可以关闭了

/etc/init.d/sendmail stop

如果上面这个不行,试试下面这个命令。

sudo service sendmail stop

转载请超链接注明:月下博客 » 一键搭建HTTP代理服务器的小工具 ——Tiny Proxy (附在线PAC制作方法)
责任声明:本站一切资源仅用作交流学习,请勿用作商业或违法行为!如造成任何后果,本站概不负责!