sks-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Sks-devel] Get SKS to listen on port 80


From: Phil Pennock
Subject: Re: [Sks-devel] Get SKS to listen on port 80
Date: Fri, 26 Aug 2016 00:19:50 +0000

On 2016-08-25 at 21:37 +0100, Danny Horne wrote:
> I've googled this and can't find an answer.  The SKS man page states -
> 
> -use_port_80
> Have the HKP interface listen on port 80, as well as the hkp_port.
> 
> I've added 'use_port_80:'  to sksconf but it doesn't listen on port 80

Port 80 is a privileged port, being numbered less than 1024.  On Unix
systems, by default, you require elevated privileges to be able to bind
to that port.

Dedicated web-servers typically start as root to do things like bind
ports before dropping privilege to a run-time user.  Since SKS is
"single-request-at-a-time", with no ability to handle concurrent
requests, one slow request by one user can slow everything down.  Thus
roughly everyone today puts a reverse proxy in front of SKS, to handle
the requests and get the SKS communication done as quickly as possible,
not blocking other requests.

You probably should not run SKS as root.  If you _really_ want to have
SKS directly bind port 80, then look into what your OS requires for
this.  On a Linux system, the `CAP_NET_BIND_SERVICE` capability should
suffice; if your filesystem permits capabilities, then:

    setcap cap_net_bind_service=+ep /path/to/executable/of/sks

But really, really truly, please just use a reverse proxy which can
handle caching, static assets, and batching access to the "real" SKS.

Many helpful instructions are in:

  https://bitbucket.org/skskeyserver/sks-keyserver/wiki/Peering

Regards,
-Phil



reply via email to

[Prev in Thread] Current Thread [Next in Thread]