Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >Ubuntu部署squid代理服务器

Ubuntu部署squid代理服务器

作者头像
drunkdream
发布于 2020-01-02 07:51:10
发布于 2020-01-02 07:51:10
3.7K00
代码可运行
举报
文章被收录于专栏:醉梦轩醉梦轩
运行总次数:0
代码可运行

0x00 前言

squid是一款高性能的代理缓存服务器,常用来部署HTTP(S)代理服务器。本文是在Ubuntu上使用squid部署HTTP(S)代理服务器的方法总结。

使用的Ubuntu版本是:Ubuntu 16.04 x64

0x01 安装和配置

使用如下命令安装squid

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
apt install squid -y

安装后,会在/etc/squid目录下生成默认的配置文件squid.conf,需要对其做一些自定义的修改.

修改默认端口

http_port 3128这行中的3128修改为期望的端口号,比如8080,或是非常用端口,这样可以避免服务被shodan之类的搜索引擎探测到。

允许外部访问

squid默认只能从本地访问,是因为它设置了http_access allow localhost

但正常情况下,我们都是需要从外部访问的,这就需要添加以下两行配置:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
acl net src 0.0.0.0/0
http_access allow net

表示接收任意外部地址。

允许CONNECT所有端口

squid默认只可以CONNECT443端口,如果要开放所有端口,需要注释掉http_access deny CONNECT !SSL_ports这行。

修改安全端口

squid默认策略只允许代理访问以下端口:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
acl Safe_ports port 80        # http
acl Safe_ports port 21        # ftp
acl Safe_ports port 443        # https
acl Safe_ports port 70        # gopher
acl Safe_ports port 210        # wais
acl Safe_ports port 1025-65535    # unregistered ports
acl Safe_ports port 280        # http-mgmt
acl Safe_ports port 488        # gss-http
acl Safe_ports port 591        # filemaker
acl Safe_ports port 777        # multiling http

因此,会有部分端口无法访问,直接返回403 Forbidden。如果需要访问这些端口,可以增加以下配置:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
acl Safe_ports port 1-1024

不允许访问本地网络

squid默认允许访问本地(localhost)服务,但建议去掉#http_access deny to_localhost的注释

允许所有访问

如果觉得以上操作过于繁琐,在不考虑安全性的情况下,也可以修改http_access deny allhttp_access allow all

设置访问密码

为了安全,我们通常会给代理服务器设置密码。

先安装htpasswd工具,使用如下命令:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
apt install apache2-utils -y

创建密码文件:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
htpasswd -c /etc/squid/passwd proxy_username

squid.conf中添加以下内容:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
auth_param basic program /usr/lib/squid/basic_ncsa_auth /etc/squid/passwd

0x02 启动squid服务

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
systemctl start squid
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-01-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
使用Docker容器快速部署常用服务
温馨提示: Linux modprobe命令用于自动处理可载入模块,modprobe可载入指定的个别模块,或是载入一组相依的模块。
全栈工程师修炼指南
2022/09/29
1.2K0
Docker安装Squid代理服务
有两台服务器,一台可以翻墙,一台不能,现在想使用那台能翻墙的服务器做代理服务器,网上搜一下教程,发现使用 docker部署 squid比较简单,于是记录下使用过程。
CoderJia
2024/10/18
3170
Docker安装Squid代理服务
HTTPS代理服务器搭建与配置
代理相当于一个中介,我们委托中介去帮我们做一些事情,我们在幕后操作就OK了。代理的类型大致分为:
Tommonkey
2023/02/27
3.7K1
01 . Squid原理配置和使用
代理服务器有多种类型,一般意义上常分为标准正向代理服务器,透明代理服务器,反向代理服务器.
iginkgo18
2020/09/27
8.9K0
01 . Squid原理配置和使用
代理服务器搭建和加密传输区别_如何自己搭建ip代理服务器
使用squid运行在服务端做代理和缓存的功能,使用stunnel运行在客户端做与squid加密传输的功能
全栈程序员站长
2022/10/05
6160
如何在 Ubuntu 18.04 上安装 Squid代理服务器
Squid 是一个功能全面的缓存代理服务器,它支持著名的网络协议像 HTTP,HTTPS,FTP 等等。将 Squid 放在网页服务器的前端,通过缓存重复请求,过滤网络流量等,可以极大地提高服务器的性能。
雪梦科技
2020/05/11
6.2K0
如何在 Ubuntu 18.04 上安装 Squid代理服务器
Ubuntu配置ADSL + Squid + Iptables代理服务器
一台双网卡服务器,安装Ubuntu Server 12.04,网卡 eth0 空置,eth1连接局域网,IP 192.168.1.1/24,先连接了宽带路由器。
星哥玩云
2022/07/03
9750
如何在 CentOS 7上安装 Squid代理服务器
Squid 是一个功能全面的缓存代理服务器,它支持著名的网络协议像 HTTP,HTTPS,FTP 等等。将 Squid 放在网页服务器的前端,通过缓存重复请求,过滤网络流量等,可以极大地提高服务器的性能。
雪梦科技
2020/05/11
13.1K1
如何在 CentOS 7上安装 Squid代理服务器
squid+apache实现缓存加速「建议收藏」
本实例是squid和apache在同一台机器上,squid做前端反向代理。port为80,apache作为后端web,port为81
全栈程序员站长
2022/07/07
6100
squid+apache实现缓存加速「建议收藏」
「技术架构」设置Squid转发代理或者正向代理
如果您正在阅读这篇文章,您可能会因为缺少与Squid相关的信息而感到沮丧,Squid是一种非常流行的转发代理。这些令人沮丧的事情包括:在小的软件修订之后出现的重大的可用性变化,对幕后发生的事情的误解,以及真正糟糕的文档。这是一个全面的入门,它将使你和鱿鱼。
架构师研究会
2019/11/11
2K0
「技术架构」设置Squid转发代理或者正向代理
何在 Debian 10 Linux 上安装和配置 Squid 代理
Squid 是一个功能齐全的缓存代理,支持流行的网络协议,如 HTTP , HTTPS , FTP 等。它可用于通过缓存重复请求,过滤 Web 流量和访问地域限制内容来提高 Web 服务器的性能。
星哥玩云
2022/07/28
4.5K0
何在 Debian 10 Linux 上安装和配置 Squid 代理
Centos7下使用Squid快速搭建带认证的HTTP代理服务器
在centos下很容易就可以搭建好一个HTTP代理服务器,搭建一个socks5代理更是简单的不用说!
老高的技术博客
2022/12/28
2.2K0
如何在 Ubuntu 18.04 上安装和配置 Squid 代理
Squid 是一个功能齐全的缓存代理,支持流行的网络协议,如 HTTP , HTTPS , FTP 等。 Squid 主要用于通过缓存重复请求,过滤 Web 流量和访问地理限制内容来提高 Web 服务器的性能。
星哥玩云
2022/07/28
3.3K0
如何在 Ubuntu 18.04 上安装和配置 Squid 代理
万字长文带你了解最常用的开源 Squid 代理服务器
Squid:是一个高性能的代理缓存服务器,Squid 支持 FTP、gopher、HTTPS 和 HTTP协议。和一般的代理缓存软件不同,Squid用一个单独的、非模块化的、I/O驱动的进程来处理所有的客户端请求,作为应用层的代理服务软件,Squid 主要提供缓存加速、应用层过滤控制的功能。
杰哥的IT之旅
2020/06/18
4.2K0
万字长文带你了解最常用的开源 Squid 代理服务器
Squid代理服务器
1、squid代理: 缓存网页,减少重复请求,加快访问速度,隐藏真实ip 代理的分类: 传统代理:使用Internet和内网,客户端需明确指定代理服务器。 透明代理:使用于内网访问外网,指定代理服务器,但必须指定网关,网管配置iptables策略,将端口重定向到代理服务器端口。 2、squid和nat的区别: NAT:工作在网络层,通过转换地址转发数据包,实现内外网之间通信。 应用代理:工作在应用层,通过缓存提供服务,不进行数据包转发,主要实现web缓存服务。 3、squid的安装 ./configure
L宝宝聊IT
2018/06/20
3.3K0
Squid安装配置工作记录
背景环境:开发人员不能上外网,但又有一些比较特殊的站点需要用到,所有用squid进行透明代理上网,之前想到haproxy,后来查阅资料貌似haproxy只能转发不能代理上网。
星哥玩云
2022/06/29
6950
Linux基础入门教程-使用Squid部署代理缓存服务
Squid是Linux系统中最为流行的一款高性能代理服务软件,通常作为Web网站的前置缓存服务,能够代替用户向网站服务器请求页面数据并进行缓存。Squid服务配置简单、效率高、更能丰富,可以基于多种条件禁止用户访问存在威胁或不适宜的网站资源,因此可以保护企业内网的安全,提升用户的网络体验,帮助节省网络带宽.
星哥玩云
2022/07/14
2.6K0
使用Squid部署代理服务
Squid是Linux系统中最为流行的一款高性能代理服务软件,通常用作Web网站的前置缓存服务,能够代替用户向网站服务器请求页面数据并进行缓存.简单来说,Squid服务程序会按照收到的用户请求向网站源服务器请求页面,图片等所需的数据,并将服务器返回的数据存储在运行Squid服务程序的服务器上.当有用户再请求相同的数据时,则可以直接将存储服务器本地的数据交付给用户,这样不仅减少了用户的等待时间,还缓解了网站服务器的负载压力.
王瑞MVP
2022/12/28
1.4K0
squid代理服务器的ACL访问控制及日志分析
squid服务的ACL访问控制: squid提供了强大的代理控制机制,通过合理设置ACL并进行限制,可以针对源地址、目标地址、访问的URL路径、访问的时间等各种条件进行过滤。
小手冰凉
2019/09/10
2.8K0
squid代理服务器的ACL访问控制及日志分析
Squid缓存代理服务器安装部署
1、代理的工作机制 作为应用层的代理服务软件,Squid主要提供缓存加速和应用层过滤控制的功能。当客户机通过代理来请求Web页面时,指定的代理服务器会先检查自己的缓存,如果缓存中已经有客户机需要访问的页面,则直接将缓存中的页面内容反馈给客户机;如果缓存中没有客户机需要访问的页面,则由代理服务器向Internet发送访问请求,当获得返回的Web页面以后,将网页数据保存到缓存中并发送给客户机。 HTTP代理的缓存加速对象主要是文字、图像等静态Web元素。使用缓存机制后,当客户机在不同的时候访问同一Web元素,或者不同的客户机访问相同的Web元素时,可以直接从代理服务器的缓存中获得结果。这样就大大减少了向Internet重复提交Web请求的过程,提高了客户机的Web访问响应速度。 由于客户机的Web访问请求实际上是由代理服务器来代替完成的,从而可以隐藏用户的真实IP地址,起到一定的保护作用。另一方面,代理服务器担任着类似“经纪人”的角色,所以有机会针对要访问的目标、客户机的地址、访问的时间端进行过滤控制。
星哥玩云
2022/07/26
1.5K0
Squid缓存代理服务器安装部署
相关推荐
使用Docker容器快速部署常用服务
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验