最低配置:

最低配置:

我想让我的网站只使用 https。我尝试了以下解决方案: Squid 反向代理重定向/重写 HTTP 到 HTTPS

acl PORT80 myport 80
acl MYSITE dstdomain foo.server.com
http_access deny PORT80 MYSITE
deny_info 301:https://foo.server.com%R MYSITE

就我而言:

acl PORT80 myport 80
acl MYSITE dstdomain www.asrtos.com
http_access deny PORT80 MYSITE
deny_info 301:https://www.asrtos.com%R MYSITE

这不起作用,因为浏览器仍然可以访问端口 80

我该怎么办?非常感谢您的帮助。

我的 squid.conf 文件是:

#
# Recommended minimum configuration:
#

debug_options ALL,1 33,2 28,9

acl localnet src 10.0.0.0/8 # RFC1918 possible internal network
acl localnet src 172.16.0.0/12  # RFC1918 possible internal network
acl localnet src 82.223.0.0/12  # RFC1918 possible internal network
acl localnet src 192.168.0.0/16 # RFC1918 possible internal network
acl localnet src fc00::/7       # RFC 4193 local private network range
acl localnet src fe80::/10      # RFC 4291 link-local (directly plugged) machines

acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl to_localhost dst 127.0.0.0/8
acl Safe_ports port 1025-65535  # unregistered ports

acl Safe_ports port 443 563 # https

acl CONNECT method CONNECT

#
# Recommended minimum Access Permission configuration:
#
# accept only SSL ports
http_access deny  !Safe_ports
http_access allow  Safe_ports

acl PORT80 myport 80
acl MYSITE dstdomain www.asrtos.com
http_access deny PORT80 MYSITE
deny_info 301:https://www.asrtos.com%R MYSITE

 http_access deny to_localhost

#
# INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS
#
https_port 443 accel cert=/etc/ssl/certs/asrtos.com_ssl_certificate.cer key=/etc/ssl/certs/_.asrtos.com_private_key.key cafile=/etc/ssl/certs/_.asrtos.com_ssl_certificate_INTERMEDIATE.cer defaultsite=workflow01.asrtos.com

 cache_peer 82.223.66.210 parent 80 0 no-query originserver name=hp # If you use one single computer, write this instead:
 http_port 3128 accel defaultsite=workflow01.asrtos.com vhost       # Doc config reverse proxy sous linux

# And finally deny all other access to this proxy
 http_access deny all

# Uncomment the line below to enable disk caching - path format is /cygdrive/<full path to cache folder>, i.e.
#cache_dir aufs /cygdrive/d/squid/cache 3000 16 256

# Leave coredumps in the first cache dir
coredump_dir /var/cache/squid

max_filedescriptors 3200

基础设施应如下:

https--[反向代理 SQUID]--http--[Domino 服务器]< - - >(Domino 数据库)

http 服务器是集成到 Domino 服务器的一部分。(Domino 服务器的一项任务)

Squid 反向代理和 Domino 服务器安装在同一台 Windows 2008 R2 机器上。互联网应用程序通过 Domino 服务器访问 Domino 数据库。

根据用户权限,domino 服务器发送登录表单来识别用户。所有用户权限的计算均由 domino 服务器自动完成。

在 http 模式下(非安全模式一切运行良好)。我必须安装安全模式,一切运行良好,但有一个例外:

当 Web 客户端发送此 URL 时:https://www.asrtos.com/database.nsf

服务器发送登录表单来检查用户权限,然后打开以下url: http://www.asrtos.com/database.nsf(非安全模式下相同的 URL)。

如果我手动修改 url:https://www.asrtos.com/database.nsf一切正常。但始终可以手动返回非安全模式:http://...

我无法访问集成到 Domino 服务器的 HTTP 任务。

所以我不知道如何在 Domino http 服务器内部进行重定向。

我希望可以在代理内部找到解决方案。

答案1

Squid 的此配置正确:

最低配置:

调试选项全部,0

acl localnet src 82.223.0.0/12 # RFC1918 可能的内部网络 acl localhost src 127.0.0.1/255.255.255.255 acl Safe_ports port 443 # https

cache_peer myServer.myDomain parent 8088 0 no-query originserver name=myServer.myDomain Front-End-Https: On # 如果您使用一台计算机,请改为这样写:https_port 443 accel cert=/etc/ssl/certs/myDomain_ssl_certificate.cer key=/etc/ssl/certs/_.myDomain_private_key.key cafile=/etc/ssl/certs/_.myDomain_ssl_certificate_INTERMEDIATE.cer defaultsite=myServer.myDomain http_port 80 accel defaultsite=myServer.myDomain

http_access 允许 Safe_ports

acl PORT80 端口80 http_access 拒绝 PORT80 denied_info 301:https://%H%R 端口80

http_access 拒绝所有 http_port 3128 透明 dns_nameservers 127.0.0.1

最大文件描述符 3200

相关内容