做一个内涵丰富、身体健康、思想开放、有毅力的能力者

Tinyproxy1.18.14升级到1.11.0

起因

想给tinyproxy添加author认证,添加完配置之后,无法启动 ...。网上查阅资料后,发现1.18版本是没有这个功能的【之前是通过yum install tinyproxy 直接安装的】。
先确定自己的tinyproxy版本

tinyproxy -v

果然,还是需要搞起 ...

过程

# 获取安装包
wget https://github.com/tinyproxy/tinyproxy/releases/download/1.11.0/tinyproxy-1.11.0.tar.gz
# 这个过程实在是有点慢,直接从releases中下载后上传到文件中
# 解压安装包
tar -zxvf tinyproxy-1.11.0.tar.gz
# 进入安装文件夹
cd tinyproxy-1.11.0
# 编译并安装
./autogen.sh
./configure
make
make install

安装完成后,再次确定版本,并查看安装路径

 which tinyproxy

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

 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 the tinyproxy server
After=network.target
 
[Service]
Type=forking
PIDFile=/usr/local/var/run/tinyproxy/tinyproxy.pid
ExecStart=/usr/local/bin/tinyproxy -c /usr/local/etc/tinyproxy/tinyproxy.conf
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process
 
[Install]
WantedBy=multi-user.target

上面的配置文件直接仿照yum安装的1.8.3版的,会出现点问题,启动不了,因为tinyproxy配置文件里的log和pid文件不存在,得先通过以下命令创建。

mkdir -p /usr/local/var/run/tinyproxy
mkdir -p /usr/local/var/log/tinyproxy
touch /usr/local/var/log/tinyproxy/tinyproxy.log
touch /usr/local/var/run/tinyproxy/tinyproxy.pid

然后就可以正常使用service命令了。

service tinyproxy start    # 启动
service tinyproxy stop     # 停止
service tinyproxy restart  # 重启
service tinyproxy status   # 状态
 
# 将tinyproxy服务设置开机自启
sudo systemctl enable tinyproxy

问题

  1. Failed to parse PID from file /usr/local/var/run/tinyproxy/tinyproxy.pid: Invalid argument
    因为之前版本没有停止并卸载PID文件依旧存在,最简单的方法就是重启
  2. ./autogen.sh Permession问题
    chmod +x 解决授权就可以

添加新评论