平时对这些小软件关注度不高,很多功能不错的我都不知道,这个是有个人推荐给我的,试了下的确简单好用,那我就写个简单教程好了!
同时把制作在线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
- Port 是代理服务器的监控端口,默认是8888,这里建议改为25,25是邮件端口 墙不限速;
- Timeout 是超时时间,单位 ms(毫秒),如果要做公共的代理服务器建议设置低于300;
- MaxClients 最大客户端链接数,也就是同时最多 100 个IP链接此代理服务器。
- Allow 是服务器的IP限制,需要把这个Allow 127.0.0.1注释掉(前面加“#”号,
#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制作方法)
责任声明:本站一切资源仅用作交流学习,请勿用作商业或违法行为!如造成任何后果,本站概不负责!