Tinyproxy支持权限校验Basic HTTP Authentication

简介: Tinyproxy支持权限校验Basic HTTP Authentication

tinyproxy版本1.8.3不支持账号密码验证,而新版本1.10.0支持


1、如果不需要鉴权,可以直接通过yum安装1.8版本


2、需要鉴权则要使用1.10版本,yum安装的最新版是1.8,只能通过源码安装


一、yum安装1.8.3

# 安装
$ yum install tinyproxy
$ tinyproxy -v
tinyproxy 1.8.3
# 启动 start|stop|status|restart
$ service tinyproxy start
# 卸载
$ yum erase tinyproxy

二、编译安装1.10.0

下载安装包页面

https://github.com/tinyproxy/tinyproxy/releases


找到最新版本

Version 1.10.0 (2020-05-20)


看到新版本的介绍,已经增加了验证


Add support for basic HTTP authentication

1、安装最新版


wget https://github.com/tinyproxy/tinyproxy/releases/download/1.10.0/tinyproxy-1.10.0.tar.gz
tar -zxvf tinyproxy-1.10.0.tar.gz
cd tinyproxy-1.10.0
# 编译安装
./configure && 
make && 
make install
$ which tinyproxy
/usr/local/bin/tinyproxy
$ tinyproxy -v
tinyproxy 1.10.0

如果发现tinyproxy的版本没有变化,则删除文件重新进行编译安装


2、修改配置

/etc/tinyproxy/tinyproxy.conf


# 注释掉这行,允许所有ip访问
# Allow 127.0.0.1
# 权限校验
BasicAuth user 123456

如果配置文件不存在,则搜索一下配置文件路径


$ find / -name tinyproxy.conf
# 拷贝一份配置文件
$ cp tinyproxy.conf /etc/tinyproxy/tinyproxy.conf

3、启动


# 启动(不采用后台启动,方便调试)
$ tinyproxy -d -c /etc/tinyproxy/tinyproxy.conf
# 指定配置文件启动(后台启动)
$ tinyproxy -c /etc/tinyproxy/tinyproxy.conf
# 杀掉进程
$ ps -ef|grep tinyproxy|grep -v grep|awk '{print "kill -9 "$2}'|sh

4、测试


# 不加验证参数不会正常返回
$ curl -x http://127.0.0.1:8888 www.baidu.com
Proxy Authentication Required
# 正常返回
$ curl -x http://user:123456@127.0.0.1:8888 www.baidu.com

遇到的问题

1、之前通过yum安装过1.8版本,又通过编译安装了1.10版本,版本号没有变化

解决:

将tinyproxy彻底删除后重新编译安装


$ find / -name tinyproxy

2、配置文件不生效

看下是不是有多份配置文件,最好通过-c指定配置文件


附:启动关闭管理脚本 service.sh


#!/bin/bash
# 启动命令
function start(){
    echo "start..."
    /usr/local/bin/tinyproxy -c /etc/tinyproxy/tinyproxy.conf
    echo "start successful" $(date "+%Y-%m-%d %H:%M:%S")
    return 0
}
# 停止命令
function stop(){
    echo "stop..."
    ps -ef|grep tinyproxy|grep -v grep|awk '{print "kill -9 "$2}'|sh
    echo "stop successful" $(date "+%Y-%m-%d %H:%M:%S")
    return 0
}
# 状态
function status(){
    ps -ef|grep tinyproxy|grep -v grep
    return 0
}
case $1 in
"status")
    status
    ;;
"start")
    start
    ;;
"stop")
    stop
    ;;
"restart")
    stop && start
    ;;
*)
    echo "请输入: start, stop, restart, status"
    ;;
esac

使用方式

bash service.sh start
bash service.sh stop
bash service.sh status
bash service.sh restart

相关文章
|
网络安全 数据安全/隐私保护
【已解决】mac端 sourceTree 解决remote: HTTP Basic: Access denied报错
又是在一次使用sourcetree拉取或者提交代码时候,遇到了sourcetree报错; 排查了一会,比如查看了SSH keys是否有问题、是否与sourcetree账户状态有问题等等,最终才发现并解决问题
|
JSON 安全 网络安全
超详细的用户认证、权限、安全原理详解(认证、权限、JWT、RFC 7235、HTTPS、HSTS、PC端、服务端、移动端、第三方认证等等)
超详细的用户认证、权限、安全原理详解(认证、权限、JWT、RFC 7235、HTTPS、HSTS、PC端、服务端、移动端、第三方认证等等)
3061 0
|
开发工具 数据安全/隐私保护 git
git 报错:remote: HTTP Basic: Access denied
git 报错:remote: HTTP Basic: Access denied
674 0
git 报错:remote: HTTP Basic: Access denied
Tinyproxy支持权限校验Basic HTTP Authentication
Tinyproxy支持权限校验Basic HTTP Authentication
330 0
Tinyproxy支持权限校验Basic HTTP Authentication
Tinyproxy支持权限校验Basic HTTP Authentication
355 0
|
7月前
|
安全 网络协议 Linux
Linux网络应用层协议展示:HTTP与HTTPS
此外,必须注意,从HTTP迁移到HTTPS是一项重要且必要的任务,因为这不仅关乎用户信息的安全,也有利于你的网站评级和粉丝的信心。在网络世界中,信息的安全就是一切,选择HTTPS,让您的网站更加安全,使您的用户满意,也使您感到满意。
220 18
|
7月前
|
网络安全 开发者
如何解决HTTPS协议在WordPress升级后对网站不兼容的问题
以上就是解决WordPress升级后HTTPS协议对网站的不兼容问题的方法。希望能把这个棘手的问题看成是学校的管理问题一样来应对,将复杂的技术问题变得更加有趣和形象,并寻觅出解决问题的方式。希望你的网站能在新的学期得到更好的发展!
217 19
|
7月前
|
JSON 安全 网络协议
HTTP/HTTPS协议(请求响应模型、状态码)
本文简要介绍了HTTP与HTTPS协议的基础知识。HTTP是一种无状态的超文本传输协议,基于TCP/IP,常用80端口,通过请求-响应模型实现客户端与服务器间的通信;HTTPS为HTTP的安全版本,基于SSL/TLS加密技术,使用443端口,确保数据传输的安全性。文中还详细描述了HTTP请求方法(如GET、POST)、请求与响应头字段、状态码分类及意义,并对比了两者在请求-响应模型中的安全性差异。
730 20
|
7月前
|
安全 网络协议 算法
HTTP/HTTPS与SOCKS5协议在隧道代理中的兼容性设计解析
本文系统探讨了构建企业级双协议隧道代理系统的挑战与实现。首先对比HTTP/HTTPS和SOCKS5协议特性,分析其在工作模型、连接管理和加密方式上的差异。接着提出兼容性架构设计,包括双协议接入层与统一隧道内核,通过协议识别模块和分层设计实现高效转换。关键技术部分深入解析协议转换引擎、连接管理策略及加密传输方案,并从性能优化、安全增强到典型应用场景全面展开。最后指出未来发展趋势将更高效、安全与智能。
278 1
|
监控 安全 搜索推荐
设置 HTTPS 协议以确保数据传输的安全性
设置 HTTPS 协议以确保数据传输的安全性