Page MenuHomePhabricator

Set "https_upgrade" configuration flag for domainproxy to enforce HTTPS upgrade for GET|HEAD requests
Closed, ResolvedPublic

Description

Follow the implementation of T102367: Migrate tools.wmflabs.org to https only (and set HSTS) for domainproxy (*.wmflabs.org shared proxy)

  • 2020-08-18:
  • 2021-02-02:
    • Close the POST loophole, set the HSTS header to 366 days
    • Announce the change to cloud-announce@

Original task description:
"add a https-only option to dynamicproxy"

dynamicproxy (what labs projects in wmflabs.org use to have https) (module dynamicproxy in puppet),

does https and http but does not have an option yet to enforce https and proto redirect http->https

we want that for T107627 and in general for all tools using this.

also see T102367

Event Timeline

Dzahn raised the priority of this task from to Needs Triage.
Dzahn updated the task description. (Show Details)
Dzahn added projects: SRE, Cloud-VPS.
Dzahn subscribed.
Restricted Application added subscribers: StudiesWorld, Aklapper. · View Herald Transcript
chasemp triaged this task as Medium priority.Dec 7 2015, 8:33 PM

My guess is that @Dzahn was asking for a per-proxy feature flag when he originally wrote this task. I think a better solution today actually would be to enable the same kind of http->https redirects for GET & HEAD requests that we did for Toolforge in the patch @Krenair linked. This leaves the "POST loophole" open, but that is a problem that we can address later (possibly as a part of the loosely planned wmflabs.org -> wmcloud.org domain conversion).

Yea, that's true. It's been a long time since i wrote that and i had a per-proxy feature in mind. I am ok with closing this ticket if there is a better global solution nowadays.

bd808 renamed this task from add a https-only option to dynamicproxy to Set "https_upgrade" configuration flag for domainproxy to enforce HTTPS upgrade for GET|HEAD requests.Apr 16 2020, 11:20 PM
bd808 updated the task description. (Show Details)
bd808 removed projects: Traffic, SRE.

Change 620122 had a related patch set uploaded (by BryanDavis; owner: Bryan Davis):
[operations/puppet@production] domainproxy: enforce TLS by default

https://gerrit.wikimedia.org/r/620122

We really never saw any problems of note when we enabled this same functionality for tools.wmflabs.org. It feels safe to me to merge and deploy this and follow up with an email to cloud-announce@ letting folks know that it was done. We should do one things differently this time however. We should also set a date at which we will close the POST loophole from the start. Maybe something like 6 months later?

Here's my strawman timeline and communications plan:

  • week of 2020-08-17:
  • 2021-02-01:
    • Close the POST loophole, set the HSTS header to 366 days
    • Announce the change to cloud-announce@

Change 620122 merged by Andrew Bogott:
[operations/puppet@production] domainproxy: enforce TLS by default

https://gerrit.wikimedia.org/r/620122

bd808 set Due Date to Feb 1 2021, 11:00 PM.
bd808 removed a project: Patch-For-Review.
bd808 moved this task from Inbox to Watching on the cloud-services-team (Kanban) board.

Change 661140 had a related patch set uploaded (by BryanDavis; owner: Bryan Davis):
[operations/puppet@production] domainproxy: Perform HTTPS redirects unconditionally

https://gerrit.wikimedia.org/r/661140

Change 661140 merged by Andrew Bogott:
[operations/puppet@production] domainproxy: Perform HTTPS redirects unconditionally

https://gerrit.wikimedia.org/r/661140