centos7下搭建高匿HTTP代理

更新日期: 2018-12-30阅读量: 2989标签: 代理

一、一般适用情况
1、两台都有外网IP,一台服务器请求资源通过另外一个服务器,本文重点讲第一种。
2、两台服务器,其中一台服务器只有内网IP,另外一台服务器有公网和内网IP。


二、前提

# 确认服务器端ip_forward转发开启
echo 1 > /proc/sys/net/ipv4/ip_forward
ip_forward需要设定为1
sysctl -a |grep -w ip_forward
net.ipv4.ip_forward = 1


客户端配置

export https_proxy=http://服务端内网ip:3128


三、下载

centos
yum install squid

ubuntu
sudo apt-get install squid3  


修改配置文件

vim /etc/squid/squid.conf  #修改配置文件

#允许的客户端ip
acl allcomputers src 0.0.0.0/0.0.0.0
#配置用户名密码,后面会生成passwords文件
auth_param basic program /usr/lib/squid3/basic_ncsa_auth /etc/squid3/passwords
auth_param basic realm proxy
acl authenticated proxy_auth REQUIRED
http_access allow authenticated allcomputer


找到http_access deny all并注释掉

#http_access deny all


最好修改一下默认的3128端口,因为这个端口是默认的,很容易被网络上的代理爬虫探测到。

http_port 8828


用户名密码认证(如果没有htpasswd命令需要下载)

网络上有很多专门爬免认证的代理的爬虫,如果我们自己搭建的代理服务器不加认证的话,会被这些爬虫探测到然后沦为了免费代理。
使用htpasswd来创建passwords文件,htpasswd命令在软件包apache2-utils中

sudo htpasswd -c -d /etc/squid3/passwords 自定义用户名
sudo chmod o+r /etc/squid3/passwords

#centos7
systemctl restart squid.service

#centos6
sudo service squid3 start
或者
etc/init.d/squid start

加入全局环境变量 将我们的代理配置上:
vim  /etc/profile  #(注意备份)
#export http_proxy="http://用户名:密码@代理IP:代理端口"
export http_proxy="http://xxxx:xxxxxxxx@172.21.0.14:8888"

#在客户端验证
curl -l "http://www.baidu.com"
#在服务端查看日志
squid3的访问日志文件在/var/log/squid3/access.log

tail -f /var/log/squid3/access.log

[root@VM_0_14_centos ~]# tailf /var/log/squid/access.log 
1546068808.417    174 172.21.0.10 TCP_MISS/502 4163 GET http://www.abc.com/ - HIER_DIRECT/199.181.132.250 text/html
1546068810.082     11 172.21.0.10 TCP_MISS/502 4163 GET http://www.abc.com/ - HIER_DIRECT/199.181.132.250 text/html 


来自:https://www.cnblogs.com/zhaojingyu/p/10197411.html


站长推荐

1.云服务推荐: 国内主流云服务商,各类云产品的最新活动,优惠券领取。地址:阿里云腾讯云华为云

链接: https://www.fly63.com/article/detial/1730

Nginx 反向代理返回结果为空的问题

现在有一个 Web 项目,前端是使用 Vue.js 开发的,整个前端需要部署到 K8S 上,后端和前端分开,同样也需要部署到 K8S 上,因此二者需要打包为 Docker 镜像。对前端来说,打包 Docker 就遇到了一个问题:跨域访问问题。

使用Nginx反向代理google,做谷歌搜索镜像

梯子有点慢。如果用VPS直接转发给谷歌,应该会快一些。实验结果也确实是如此,尽管我用的是同一个服务器。Nginx 需要支持 sub_module ,也就是编译时有 --with-http_sub_module 。

通过nginx反向代理来调试代码

现在公司项目都是前后端分离的方式开发,有些时候由于某些新需求开发或者 bug 修改,想要让前端直接连到我本地开发环境进行调试,而前端代码我并没有,只能通过前端部署的测试环境进行测试

node.js代理访问

本地开发,代理访问,防止跨域(一般通过webpack配置代理即可),特殊情况如携带一些自定义的登录cookie则需要通过自己写node,作为一种server中间层,单线程异步可以缓解服务器压力

vue proxy代理跨域

changeOrigin的属性值为一个布尔值,如果设置为true,那么本地会虚拟一个NODE服务端接收你的请求并代你发送该请求(中间件)。[本质上是本地开了一个服务器dev-server,所有的请求都通过这里转发出去。]

Vue多环境代理配置

多人协作模式下,修改代理比较麻烦,而且很容易某个开发人员会修改了vue.config.js文件后提交了。第一,很容易引起冲突。 第二,很容易出现代理错误,需要排查。而且现在微服务盛行

NodeJS中配置请求代理服务器

大佬让我换个机器重新装一下,但是因为我的里面用到了一个图片处理库 sharp 装起来很烦,然后就研究研究能不能搞个代理服务器。

vue proxy跨域代理https

vue-cli里面的proxyTable要怎么代理https?看的网络上面都是http的,不知道该如何设置。如果直接设置https://**,就会报错,报的是未定义的错误

node怎么做反向代理?

在实际工程开发中,会有前后端分离的需求。使用node.js反向代理的目的:实现前后端分离,前端减少路径请求的所需的路由文件。

Nginx反向代理之动静分离

我们已经知道了什么是正向代理与反向代理,这次我们就讲一下Nginx的动静分离的案例,其实质运用的就是反向代理,专门用一台服务器代理服务器上的图片资源。

点击更多...

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!