Re: [Acme] Issuing certificates based on Simple HTTP challenges

Julian Dropmann <julian@dropmann.org> Wed, 16 December 2015 01:45 UTC

Return-Path: <julian@dropmann.org>
X-Original-To: acme@ietfa.amsl.com
Delivered-To: acme@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 97D6B1A1A19 for <acme@ietfa.amsl.com>; Tue, 15 Dec 2015 17:45:05 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.001
X-Spam-Level:
X-Spam-Status: No, score=-2.001 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, SPF_PASS=-0.001] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id sm2-VlHAqNIq for <acme@ietfa.amsl.com>; Tue, 15 Dec 2015 17:45:03 -0800 (PST)
Received: from mail-wm0-x231.google.com (mail-wm0-x231.google.com [IPv6:2a00:1450:400c:c09::231]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 574101A19F7 for <acme@ietf.org>; Tue, 15 Dec 2015 17:45:03 -0800 (PST)
Received: by mail-wm0-x231.google.com with SMTP id l126so18481467wml.1 for <acme@ietf.org>; Tue, 15 Dec 2015 17:45:03 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=dropmann.org; s=dkim1; h=references:mime-version:in-reply-to:content-type :content-transfer-encoding:message-id:cc:from:subject:date:to; bh=lN7pzmdmyevAJHJ3m5u2AzIt4QkkEX6sCdIaVzhRITc=; b=GSNGjJ6uXYhd7L7ZYXPVqrX0Ywn4Ry7+jnpfVCHp+qR27hkcPanN11BiOskkkHZTrK SXtDybNTQbyva3P/fJ2bciON0vF5cCOMCZzStVM2ZzpUsGhPPULEh2B4OVSV6icTfnoT xTEpcn7eAzBBfnkJ5fDMnj0RD7NXij1YhSZMs=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:references:mime-version:in-reply-to:content-type :content-transfer-encoding:message-id:cc:from:subject:date:to; bh=lN7pzmdmyevAJHJ3m5u2AzIt4QkkEX6sCdIaVzhRITc=; b=PrkYkpEw4pfeYouxVjaHz+8dcFbWpHXtJd89J3VZsSptz8ybPVaMOK87tbBW6yPKpy jDovN2F1DsxCIqmBeyJlsn5aEO+B7mld9JxAjzg29GLXX9hW0bV9lEnNZezTnuiolsPl sydJWJfHNhwk49m6rGLxbjEcl8gMJKsAj1K/llIZH+dvAUByee0ePQhfp8fmoPdzeA8C CU5KQvk2Bglfv+4D6js4pSGF2W+KvrUThYLXYUYbxxB6J13WBn0EUnkykWFowx/eMYtM 6zF5G/+sOAaXH4QqVGuYcYAbzgDf1nHY9bveaZkDeJVrlfOlMeq7TXvUNjUk5zc/sSMs lD3w==
X-Gm-Message-State: ALoCoQkbl45A2tbHSBQepPJoMXjJJZSS2Mxp4dpH/fauq+GUv9wPEHaIizqQ90UzrA4yqUgKBdPlhDVqmcPDJ9MiKaYLHhndSg==
X-Received: by 10.194.201.134 with SMTP id ka6mr48476142wjc.116.1450230301799; Tue, 15 Dec 2015 17:45:01 -0800 (PST)
Received: from ?IPv6:2003:4d:ec1e:4200:605e:5c4:793b:496c? (p2003004DEC1E4200605E05C4793B496C.dip0.t-ipconnect.de. [2003:4d:ec1e:4200:605e:5c4:793b:496c]) by smtp.gmail.com with ESMTPSA id da10sm3727370wjb.22.2015.12.15.17.44.59 (version=TLSv1/SSLv3 cipher=OTHER); Tue, 15 Dec 2015 17:45:00 -0800 (PST)
References: <CAF+SmEpOLoaREymVhi=qOUg2opz1vKzzNp6tGrDTZAjYSKFDkg@mail.gmail.com> <566F15DC.7090607@wyraz.de> <6B677A87-C6A0-485E-80DF-24960D585F46@coderanger.net> <566F2CB5.90402@wyraz.de> <89774336-0BA6-48FC-821D-1E8F3ED9AC14@coderanger.net> <566F4701.7050308@wyraz.de> <F3DA31B1-B27C-4C63-8ED4-6D27D46FF282@coderanger.net> <C2C239F2-E8A7-499B-BE52-3A48EA92B86D@dropmann.org> <BF7F8411-3E83-4A1F-B3A1-4C37DC8B4618@coderanger.net> <3CDE1749-3143-49EE-BD66-0AE4A8CC4175@dropmann.org> <566FDAB7.2030403@cs.tcd.ie> <56700F68.3040103@wyraz.de> <56701904.2070009@cs.tcd.ie> <56702EFA.1050008@wyraz.de> <13B5E9A8-E9CE-4018-8A9D-7856CBF06B4F@coderanger.net> <CAMm+Lwhvf+nRVV38q1U1DKm1WStV1UJv4+EJ_zvq0G_Tb25S9w@mail.gmail.com> <2761E0B2-8DCC-4150-813F-8CAB756C0392@coderanger.net>
Mime-Version: 1.0 (1.0)
In-Reply-To: <2761E0B2-8DCC-4150-813F-8CAB756C0392@coderanger.net>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
Message-Id: <174B082E-2721-41AE-992D-2937DCCB74CB@dropmann.org>
X-Mailer: iPhone Mail (13C75)
From: Julian Dropmann <julian@dropmann.org>
Date: Wed, 16 Dec 2015 02:44:59 +0100
To: Noah Kantrowitz <noah@coderanger.net>
Archived-At: <http://mailarchive.ietf.org/arch/msg/acme/2Y1_vqAMUM57ayrlfwKpW5mFztM>
Cc: "acme@ietf.org" <acme@ietf.org>
Subject: Re: [Acme] Issuing certificates based on Simple HTTP challenges
X-BeenThere: acme@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Automated Certificate Management Environment <acme.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/acme>, <mailto:acme-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/acme/>
List-Post: <mailto:acme@ietf.org>
List-Help: <mailto:acme-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/acme>, <mailto:acme-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 16 Dec 2015 01:45:05 -0000

> On 15 Dec 2015, at 20:41, Noah Kantrowitz <noah@coderanger.net> wrote:
> 
> 
>> On Dec 15, 2015, at 9:48 AM, Phillip Hallam-Baker <phill@hallambaker.com> wrote:
>> 
>> 
>> 
>>> On Tue, Dec 15, 2015 at 12:25 PM, Noah Kantrowitz <noah@coderanger.net> wrote:
>>> 
>>> On Dec 15, 2015, at 7:17 AM, Michael Wyraz <michael@wyraz.de> wrote:
>>> 
>>> Stephen,
>>>> Yes, I understand that and didn't actually refer to LE at all in my mail.
>>> I'm sorry if I missunderstood you with that.
>>> 
>>>> Basically, IMO only after we first get a "now" that works
>>> We have a working HTTP-01 spec, implementation and CA. What's missing
>>> for "a 'now' that works"?
>>> 
>>>> Personally the optional thing in which I'm much more interested is a
>>>> simple put-challenge-in-DNS one where the CA pays attention to DNSSEC,
>>>> since that's the use-case I have and that would provide some better
>>>> assurance to the certs acquired via acme. I can see that there might
>>>> also be value for some (other) folks in SRV if it means no need to
>>>> dynamically change DNS. But, if someone is saying "we must all do
>>>> these more complex things for security reasons" then they are, in this
>>>> context, wrong. And my mail was reacting to just such a statement.
>>> Why not just placing a static public key to DNS that is allowed to sign
>>> ACME requests for this domain? Simple, no need for dynamic updates (yes,
>>> it's standardized for years but AFAIK not seen very often in real world
>>> scenarios).
>> 
>> Anything that makes deployment _harder_ than the current LE client is a move in the wrong direction. UX matters, with security more than just about anything else. Unless you can propose a user flow to go with this change, no amount of hypothetical correctness is worth having a tool no one will use.
>> 
>> Harder for whom?
>> 
>> The current scheme isn't going to work for any geolocation based systems and is a terrible fit for enterprise.
> 
> I think this is a bit of a red herring on a few fronts. You can use http-01 or similar strategies on a widely-replicated system, it is just annoying because you need to push the challenge response file to a bunch of places. If the geo-distributed piece is a CDN, the system is already designed to smash caches effectively so that is handled. Still, that is gross and a lot of work, but fortunately there is already a DNS challenge in the works that will help for some cases. It requires centralized command and control systems to use effectively, but that matches the structure of a lot of these big, distributed setups. The case we haven't covered is where you have a complex distributed setup but want to run the challenge on the edges. I question how many people want to do that but I agree it is non-zero and an http-srv-01 challenge type would help cover that (or fold it in to http-02 as an optional thing). The objection from myself and some others is the suggestion that we mandate DNS changes to use http-01 or tls-sni-01 because of the risk of a rogue HTTP server validating certs unexpectedly. Making that level of interaction with DNS required is a major UX change and will drastically reduce the number of people that will use LE and similar services.
> 
> --Noah

The target users are server admins right?
In order to set up their services, they should be familiar with DNS.
To use the current mechanism they already need to configure the A record. So whats the big difference? Instead of an A record they need to use an SRV record. So technically only the record type changes. Nothing else. How is that even a higher level of interaction?

There are other services requiring admins to create DNS records (Google Apps for example). They are being used.