在CentOS上搭建Squid代理服务器详解
一、安装
首先,通过yum包管理工具安装Squid代理服务器和httpd–tools(用于生成密码文件):
yum install squid -y
yum install httpd-tools -y
二、生成密码文件
mkdir /etc/squid_user/
使用htpasswd
命令生成密码文件,例如,为用户名linjiusheng设置密码:
htpasswd -cd /etc/squid_user/passwords linjiusheng
三、测试密码文件
使用basic_ncsa_auth
工具测试密码文件,输入用户名和密码进行验证:
/usr/lib64/squid/basic_ncsa_auth /etc/squid_user/passwords
输入用户名和密码(例如linjiusheng szpython),如果提示OK,说明验证成功。按ctrl + c
打断测试。
四、配置Squid
vim /etc/squid/squid.conf
auth_param basic program /usr/lib64/squid/basic_ncsa_auth /etc/squid_user/passwords
auth_param basic realm proxy
acl authenticated proxy_auth REQUIRED
http_access allow authenticated
五、启动服务
systemctl start squid.service
停止服务:
systemctl stop squid.service
重启服务:
systemctl restart squid.service
六、删除用户
vim /etc/squid_user/passwords
七、日志
Squid的日志默认位于/var/log/squid/目录下。
八、测试代码
import requests
# 代理服务器的地址和端口
proxy_url = "http://your_proxy_server_ip:3128"
# 代理服务器的用户名和密码
proxy_username = "your_username"
proxy_password = "your_password"
# 目标网站的URL
target_url = "http://www.example.com"
# 构建代理配置
proxy_config = {
"http": proxy_url,
"https": proxy_url,
}
# 构建包含身份验证信息的HTTP代理头
proxy_auth = requests.auth.HTTPProxyAuth(proxy_username, proxy_password)
# 发送带有代理配置和身份验证的请求
try:
response = requests.get(target_url, proxies=proxy_config, auth=proxy_auth)
if response.status_code == 200:
print("请求成功!")
print(response.text)
else:
print(f"请求失败,状态码:{response.status_code}")
except requests.exceptions.RequestException as e:
print(f"发生异常:{e}")
替换your_proxy_server_ip
、your_username
和your_password
为你的代理服务器IP、用户名和密码。这个代码段演示了如何使用Python的requests
库发送通过Squid代理的HTTP请求。
原文地址:https://blog.csdn.net/linjiuxiansheng/article/details/134789643
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_42252.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。