# `letsencrypt.plugins.standalone`

Standalone Authenticator.

class `letsencrypt.plugins.standalone.``ServerManager`(certs, http_01_resources)

  Bases: `object`

  Standalone servers manager.

  Manager for `ACMEServer` and `ACMETLSServer` instances.

  `certs` and `http_01_resources` correspond to `acme.crypto_util.SSLSocket.certs` and `acme.crypto_util.SSLSocket.http_01_resources` respectively. All created servers share the same certificates and resources, so if you’re running both TLS and non-TLS instances, HTTP01 handlers will serve the same URLs!

  class `_Instance`(server, thread)

    Bases: `tuple`

    `_asdict`()

      Return a new OrderedDict which maps field names to their values

    classmethod `_make`(iterable, new=<built-in method __new__ of type object at 0x8f8940>, len=<built-in function len>)

      Make a new _Instance object from a sequence or iterable

    `_replace`(_self, **kwds)

      Return a new _Instance object replacing specified fields with new values

    `server`

      Alias for field number 0

    `thread`

      Alias for field number 1

  `ServerManager.``run`(port, challenge_type)

    Run ACME server on specified `port`.

    This method is idempotent, i.e. all calls with the same pair of `(port, challenge_type)` will reuse the same server.

    Parameters:

    - port (int) – Port to run the server on.
    - challenge_type – Subclass of `acme.challenges.Challenge`, either `acme.challenge.HTTP01` or `acme.challenges.TLSSNI01`.

    Returns: | Server instance.
    Return type: | ACMEServerMixin

  `ServerManager.``stop`(port)

    Stop ACME server running on the specified `port`.

    Parameters: | port (int) –

  `ServerManager.``running`()

    Return all running instances.

    Once the server is stopped using `stop`, it will not be returned.

    Returns: | Mapping from `port` to `server`.
    Return type: | tuple

`letsencrypt.plugins.standalone.``supported_challenges_validator`(data)

  Supported challenges validator for the `argparse`.

  It should be passed as `type` argument to `add_argument`.

class `letsencrypt.plugins.standalone.``Authenticator`(*args, **kwargs)

  Bases: `letsencrypt.plugins.common.Plugin`

  Standalone Authenticator.

  This authenticator creates its own ephemeral TCP listener on the necessary port in order to respond to incoming tls-sni-01 and http-01 challenges from the certificate authority. Therefore, it does not rely on any existing server program.

  `supported_challenges`

    Challenges supported by this plugin.

  `perform2`(achalls)

    Perform achallenges without IDisplay interaction.