CentOS搭建 浏览器代理服务器–tinyproxy或者squid

发布于 2021-05-13  2000 次阅读


来源:https://blog.csdn.net/weixin_39736913/article/details/111116010

实际工作中碰到的问题,抓取 QCC 网站,会有多个机器同时抓取。但是 cookie 不能频繁更换IP,否则会封号需要修改密码。所以登陆就需要相应机器IP进行登陆操作。自建代理,然后使用 selenium + 代理进行登陆操作。

CentOS 自建代理

2fdf911ad83b54ef494218da7f848511.png

1、安装 squid

yum -y install squid

2、 改为开机启动

systemctl enable squid.service

3、修改配置:

vim  /etc/squid/squid.conf
#允许的客户端ip
acl allcomputers src all
#配置用户名密码,后面会生成passwords文件
auth_param basic program /usr/lib64/squid/basic_ncsa_auth /etc/squid/passwords
acl authenticated proxy_auth REQUIRED
http_access allow authenticated
# 添加以下改成高匿模式,这样就可以完全避免被识别出来
request_header_access X-Forwarded-For deny all
request_header_access From deny all
request_header_access Via deny all

这里说明一下/usr/lib64/squid/basic_ncsa_auth /etc/squid/passwords这两个是文件,前面的安装了squid就已经存在,后面的需要自己生成。

4、找到http_access deny all并注释掉

#http_access deny all
# 修改一下默认的3128端口
http_port 3601

5、用户名密码认证

使用的是htpasswd命令

yum install httpd-tools

sudo htpasswd -bc  /etc/squid/passwords 用户名 密码
sudo chmod o+r /etc/squid/passwords

6、检查squid配置是否正确

squid -z

可能会有下面的错误

bd798a9aadf67edef1771935dbcfc2d2.png

在配置文件 /etc/squid/squid.conf 中去掉下面这行的注释

#cache_dir ufs /var/spool/squid 100 16 256

7、重新执行命令,启动这个服务

systemctl restart squid.service

如果是腾讯云或者阿里云,需要打开相应的安全组端口。

8、查看日志

tail -f  /var/log/squid/access.log
tail -f /var/log/squid/cache.log
1c24e6788a40283b0a66c1c975325d43.png

9、测试

selenium + 插件代理

 

++++++++++++++++++++++++++++++++++++++++++++++++++++

 

 

来源:https://www.cnblogs.com/6324/p/12516047.html

服务器情况

有A、B、C三台服务器,都在同一个网段,AB不可联网,C可连接互联网。

搭建过程

1、C 服务器搭建代理服务器

yum -y install tinyproxy
vim /etc/tinyproxy/tinyproxy.conf

修改代理服务器端口为8899

Port 8888

注释

#Allow 127.0.0.1

去掉注释

DisableViaHeader Yes

启动启动 TinyProxy

systemctl start tinyproxy.service

更多命令

systemctl restart tinyproxy.service 
systemctl stop tinyproxy.service 
systemctl status tinyproxy.service 
systemctl enable tinyproxy.service 

关闭防火墙或开放端口访问

/etc/init.d/iptables stop

开放端口访问

iptables -A INPUT -p tcp --dport 8888 -j ACCEPT

重启防火墙

/etc/init.d/iptables restart

 

A、B服务器Teelnet C 8899端口测试

A、B服务器设置代理上网

编辑~/.bashrc

Copy
~/.bashrc

添加

# add proxy for network
export http_proxy="192.168.0.3:8899"
export https_proxy="192.168.0.3:8899"
export ftp_proxy=$http_proxy

刷新环境变量

source ~/.bashrc

测试A、B连接互联网

curl www.baidu.com

Docker 设置代理

创建配置文件

mkdir -p /etc/systemd/system/docker.service.d
vi /etc/systemd/system/docker.service.d/http-proxy.conf

编辑配置文件(新增如下内容)

[Service]
Environment="HTTP_PROXY=10.10.17.20:8899"
Environment="NO_PROXY=localhost,127.0.0.0/8,*.mirror.aliyuncs.com"

重启

systemctl daemon-reload
systemctl restart docker
systemctl show docker --property Environment