推荐两个工具
一、TinyProxy
tinyproxy 是一个面向 POSIX 系统开发的轻量级的开源 HTTP/HTTPS 代理守护进程,其从底层开始进行设计,保证了在高速的同时体积依然很小。它很适合用于需要完整 HTTP 代理特性,但系统资源又不足以运行大型代理的场景,比如嵌入式部署。
特性
Tinyproxy 的体积很小,也仅需少量系统资源。在使用 glibc 时,内存占用一般大约 2 MB,而 CPU 占用会随着连接数量线性增长(具体取决于连接速度)。因此,Tinyproxy 可用在比较老旧的计算机上,或者用在基于Linux的路由器等网络设备上,而不会对设备性能造成明显的影响。
Tinyproxy 的构建和运行仅需一个最小化的 POSIX 环境。同时,它可以用其他附加库来添加额外功能。
Tinyproxy 允许进行 HTTPS 连接的转发,而且无需通过 CONNECT 方法以任何形式修改流量内容(请参阅ConnectPort指令)。
Tinyproxy 支持被配置为一个透明代理,使客户端无需进行任何配置即可使用代理。您也可以将其用作您网站的反向代理前端。
使用 AddHeader 指令,您可以向传出的流量里添加或插入 HTTP 标头信息。
如果您要构建自定义Web代理,可以轻松地修改Tinyproxy以满足您的自定义需求。 源码结构非常简单,遵循 KISS 原则。 因此,可以把它作为基础,来实现您可能需要Web代理执行的任何操作。
Tinyproxy具有隐私功能,可让您配置哪些HTTP标头可被允许通过,哪些HTTP标头应被阻止。 这使您既可以限制从HTTP服务器向Web浏览器发送的数据(例如COOKIE),也可以限制从Web浏览器到HTTP服务器发送的数据(例如版本信息)。
通过使用远程监视工具,您可以远程获知代理统计信息,从而确切了解代理的繁忙程度。
您可以配置Tinyproxy来实现 访问控制 ,从而仅允许来自特定子网或特定接口的请求,从而确保那些随机出现的、未经授权的人不能使用您的代理。
只需进行一些配置(具体而言,将Tinyproxy创建的文件设为由非root用户拥有,并让它在大于1024的端口上运行),就能让 Tinyproxy 在没有任何特殊权限的情况下运行,从而将系统受到破坏的风险降至最低。 此外,它的设计致力于防止缓冲区溢出。 代码结构的简单也确保了此类bug易于定位。
1、安装 TinyProxy
yum -y install tinyproxy
2、配置 TinyProxy
vim /etc/tinyproxy/tinyproxy.conf
修改 Port 端口,默认为 8888
Port 8888权限访问代理
#Allow 127.0.0.1
添加多段IP地址:
Allow 192.168.1.0/24
Allow 172.16.0.0/16
更多配置项
下面是列举一些配置文件默认的,不需要配置
PidFile “/var/run/tinyproxy/tinyproxy.pid”LogFile “/var/log/tinyproxy/tinyproxy.log”
LogLevel Info
MaxClients 100
MinSpareServers 5
MaxSpareServers 20
StartServers 10
3、启动 TinyProxy
systemctl start tinyproxy.servicesystemctl stop tinyproxy.service
systemctl enable tinyproxy.service
4、查看代理请求日志
tail -f /var/log/tinyproxy/tinyproxy.log二、Squid
Squid是一个高性能的代理缓存服务器,Squid支持FTP、gopher、HTTPS和HTTP协议。和一般的代理缓存软件不同,Squid用一个单独的、非模块化的、I/O驱动的进程来处理所有的客户端请求。
使用squid搭建http服务器
1. 安装Squid
yum install squid
2.编辑Squid
vi /etc/squid/squid.conf
3.设置Squid
最底部增加 如下
http_access allow all
然后 注释掉
http_access deny all
4.启动
systemctl start squid
centos7 设置代理
1.全局代理
vi /etc/profile
添加:
export http_proxy=http://192.168.5.46:3128
export https_proxy=http://192.168.5.46:3128
192.168.5.46是设置代理的服务器。3128是代理的端口2.yum代理
vi /etc/yum.conf
添加:
porxy=http://192.168.5.46:3128
3. docker 代理
mkdir -p /etc/systemd/system/docker.service.d
[root@node41 ~]# vi /etc/systemd/system/docker.service.d/http-proxy.conf
[Service]
Environment="HTTP_PROXY=http://192.168.5.46:3128"
[root@node41 ~]# vi /etc/systemd/system/docker.service.d/https-proxy.conf[Service]
Environment="HTTPS_PROXY=http://192.168.5.46:3128"
systemctl restart docker
4. wget的代理
#打开/wgetrc文件 vim /etc/wgetrc #修改Proxy代理信息 http_proxy=http://192.168.5.46:3128
ftp_proxy=http://192.168.5.46:3128
网友回复