Squid 配置用于连接到 bitbucket 的最小设置

Squid 配置用于连接到 bitbucket 的最小设置

我正在尝试设置一个非常小的 squid 配置。我有一台主机(我们称之为 B),它上面连接着一台机器(A)。B 连接到互联网,A 没有,但 B 和 A 通过以太网电缆连接。我已经适应了这个答案为了我的目的,现在想在 B 上配置 squid 代理,以仅允许 A(本地 IP 为12.0.0.4)连接到一个域(bitbucket.company_name.com)。我的 squid 配置是

#Mminimum configuration:

acl A src 12.0.0.4
acl BitBucket dstdomain bitbucket.company_name.com

http_access allow A
http_access allow BitBucket
http_access deny all

# Squid normally listens to port 3128
http_port 3128

negative_ttl 0

当我启动服务器并通过 ssh 进入 A 时:

ssh -p 22022 -R 3129:localhost:3128 [email protected]

然后做

> git clone http://bitbucket.company_name.com/path/to/repo.git
Cloning into 'repo' ...
fatal: unable to access 'http://bitbucket.company_name.com/path/to/repo.git': Received HTTP code 403 from proxy after CONNECT

>
> wget http://bitbucket.company_name.com
--2022-06-23 09:41:53--  http://bitbucket.company_name.com
Connecting to 127.0.0.1:3129... connected.
Proxy request sent, awaiting response... 403 Forbidden
2022-06-23 09:41:53 ERROR 403: Forbidden.

我厌倦了在 SE 上阅读有关这个​​问题的文章,主要是这里,但我无法让它工作......

答案1

您是否已检查日志以查看是否有相关内容:

/var/log/squid/

Bitbucket 基于 java,为其运行反向代理非常麻烦,根据我的经验,即使是 nginx 或 apache 也是如此。

答案2

问题是,从 A 连接到代理时,您使用了错误的端口。您配置 Squid 监听的端口是 3128,但是从 A 连接时,您使用的是端口 3129。请尝试更改从 A 连接到 Squid 时的端口号:

ssh -p 22022 -R 3128:localhost:3128 [email protected]

相关内容