【发布时间】:2020-09-19 12:56:21
【问题描述】:
我正在配置一个 haproxy 服务器以用于我的 Scrapy 刮板。刮板并不总是使用代理,因此自定义中间件不是一个令人愉快的解决方案。我已经在代理中配置了基本身份验证:
userlist basic-auth-list
group is-admin
user *username* password *passwd* groups is-admin
backend backend_name
acl devops-auth http_auth_group(basic-auth-list) is-admin
http-request auth realm devops unless devops-auth
并且能够通过它发送一个 curl 使用:curl -x proxy_ip:port -u username:pass url。 在我的刮刀中,我尝试过:
headers={'Proxy-Authorization': "user:pass encoding with base64"} 和
headers={"Authentication":"user:pass encoding with base64 --- base64 bc 这个标题上的文档说它应该是 base64 或它的变体"}
headers={"Authorization":"user:pass 用 sha-256 和 des 编码"}
headers={"Authorization":"Basic user:pass encoding with base64/sha-256/des --- 做这个 bc 代理可以让 pass 只在 sha-256 sha-512 md5 和 des 中加密我让用户传入 sha-256 和 des"}
headers={"授权": basic_auth_header(user,pass)}
meta={'proxy':'http://username:pass@ip:port'}
并且它们都返回 401 Authorization required。我还注意到,当我试图用我的 haproxy 卷曲时: curl -x proxy_ip:port --proxy-user 用户名:传递 url 或 curl -x 'http://username:pass@proxy_ip:port' 网址 我也得到了一个 401。它工作的唯一方法是使用 -u curl 选项,这是一个服务器身份验证。有人知道我如何将 haproxy 配置为也可以通过 --proxy-user 访问吗?
【问题讨论】:
标签: authentication proxy scrapy authorization haproxy