[pve-devel] [PATCH proxmox-acme 1/1] Close the acme standalone connection after sending a response
Daniel Berteaud
daniel at firewall-services.com
Thu Oct 1 12:55:06 CEST 2020
----- Le 1 Oct 20, à 11:15, Fabian Grünbichler f.gruenbichler at proxmox.com a écrit :
> On September 30, 2020 4:09 pm, Daniel Berteaud wrote:
>> Without this, the first req get a response, but not the next ones as the
>> listeners stays busy
>> Fixes #3048
>>
>> Signed-off-by: Daniel Berteaud <daniel at firewall-services.com>
>> ---
>> src/PVE/ACME/StandAlone.pm | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/src/PVE/ACME/StandAlone.pm b/src/PVE/ACME/StandAlone.pm
>> index 0e2ece6..552c35c 100644
>> --- a/src/PVE/ACME/StandAlone.pm
>> +++ b/src/PVE/ACME/StandAlone.pm
>> @@ -55,8 +55,8 @@ sub setup {
>> } else {
>> $c->send_error(404, 'Not found.')
>> }
>> + $c->close();
>
> I think this is not right - we only end up looping/blocking on
> get_request if the client requested keep alive, in which case the server
> should obviously not close the connection..
>
> I guess we have to fork (up to some limit) on accept()? it's obviously
> not ideal that anybody can race with the LE validation attempts and
> block the single request handler ;)
Indeed, having a few more handlers could limit the risk of this happening.
>
> maybe you can change something in your apache config to close the
> connection (or rather, to propagate the connection closing from the
> actual client)? it looks like this can only affect you if
> - your apache proxy keeps the connection open
> - your apache proxy does not re-use the open connection
You're right, the issue was on my rev proxy, which didn't re-used keep-alived connexions as it should (it was an old httpd 2.2.3 on a CentOS 5 box, on which I had no control).
Switching my setup so it now runs behind a nginx proxypass works normaly without any modification
Sorry for not having looked at this more closely before posting ;-)
Cheers,
Daniel
--
[ https://www.firewall-services.com/ ]
Daniel Berteaud
FIREWALL-SERVICES SAS, La sécurité des réseaux
Société de Services en Logiciels Libres
Tél : +33.5 56 64 15 32
Matrix: @dani:fws.fr
[ https://www.firewall-services.com/ | https://www.firewall-services.com ]
More information about the pve-devel
mailing list