May 4, 2024, 11:22 p.m. | jax

DEV Community dev.to

前言

之前在Linux服务器安装过tinyproxy用于ip代理,但是yum安装的话,版本最高只到1.8.3,是不支持账号密码验证的,也就是说要么限制ip,不然任何人都能连。而到了1.10.0就支持Basic HTTP Authentication了,但是得通过编译安装。目前Github上最新的是1.11.1,本文是安装的简要教程。


Tinyproxy介绍及yum安装教程见:使用Tinyproxy搭建HTTP(S)代理。


安装及配置

如果通过yum安装过1.8.3版本,得先卸载掉。


yum erase tinyproxy

以下是从Github下载安装最新版的命令。





获取安装包

wget https://github.com/tinyproxy/tinyproxy/releases/download/1.11.0/tinyproxy-1.11.0.tar.gz





解压安装包

tar -zxvf tinyproxy-1.11.0.tar.gz





进入安装文件夹

cd tinyproxy-1.11.0





编译并安装

./configure

make

make install

安装完成后可用以下命名查看路径和版本。





查看路径

which tinyproxy

/usr/local/bin/tinyproxy





查看版本,最新1.11.0

tinyproxy -v

tinyproxy 1.11.0

修改配置文件,下面是安装后配置文件位置。


vi /usr/local/etc/tinyproxy/tinyproxy.conf

基本的配置可以见之前那篇文章,主要说下不同。





将下面直接注释掉,允许所有ip访问




Allow 127.0.0.1




Allow ::1




设置用户名密码

BasicAuth username password





顺便将下面两行取消注释,后面有用到

PidFile "/usr/local/var/run/tinyproxy/tinyproxy.pid"

LogFile "/usr/local/var/log/tinyproxy/tinyproxy.log"

保存配置文件后,使用下面的命令启动。





指定配置文件启动(后台启动)

tinyproxy -c /usr/local/etc/tinyproxy/tinyproxy.conf

启动后就可以测试下





不加验证参数不会正常返回

curl -x http://127.0.0.1:8888 www.baidu.com





正常返回

curl -x http://username:password@127.0.0.1:8888 www.baidu.com

以上就是简要安装与配置,但是为了方便管理服务,得添加到系统服务。


添加到系统服务





新建tinyproxy.service文件

vi /usr/lib/systemd/system/tinyproxy.service





贴入以下代码

[Unit]

Description=Startup script for …

.conf etc http install linux local log password run tar tar.gz tinyproxy username var

Information Security Engineers

@ D. E. Shaw Research | New York City

Technology Security Analyst

@ Halton Region | Oakville, Ontario, Canada

Senior Cyber Security Analyst

@ Valley Water | San Jose, CA

Security Operations Manager-West Coast

@ The Walt Disney Company | USA - CA - 2500 Broadway Street

Vulnerability Analyst - Remote (WFH)

@ Cognitive Medical Systems | Phoenix, AZ, US | Oak Ridge, TN, US | Austin, TX, US | Oregon, US | Austin, TX, US

Senior Mainframe Security Administrator

@ Danske Bank | Copenhagen V, Denmark