mirror of
https://github.com/certbot/certbot.git
synced 2026-08-01 02:35:06 +02:00
s/Let's Encrypt/Certbot
This commit is contained in:
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
"""Let's Encrypt client."""
|
"""Certbot client."""
|
||||||
|
|
||||||
# version number like 1.2.3a0, must have at least 2 parts, like 1.2
|
# version number like 1.2.3a0, must have at least 2 parts, like 1.2
|
||||||
__version__ = '0.6.0.dev0'
|
__version__ = '0.6.0.dev0'
|
||||||
|
|||||||
+3
-3
@@ -81,15 +81,15 @@ class Account(object): # pylint: disable=too-few-public-methods
|
|||||||
|
|
||||||
|
|
||||||
def report_new_account(acc, config):
|
def report_new_account(acc, config):
|
||||||
"""Informs the user about their new Let's Encrypt account."""
|
"""Informs the user about their new ACME account."""
|
||||||
reporter = zope.component.queryUtility(interfaces.IReporter)
|
reporter = zope.component.queryUtility(interfaces.IReporter)
|
||||||
if reporter is None:
|
if reporter is None:
|
||||||
return
|
return
|
||||||
reporter.add_message(
|
reporter.add_message(
|
||||||
"Your account credentials have been saved in your Let's Encrypt "
|
"Your account credentials have been saved in your Certbot "
|
||||||
"configuration directory at {0}. You should make a secure backup "
|
"configuration directory at {0}. You should make a secure backup "
|
||||||
"of this folder now. This configuration directory will also "
|
"of this folder now. This configuration directory will also "
|
||||||
"contain certificates and private keys obtained by Let's Encrypt "
|
"contain certificates and private keys obtained by Certbot "
|
||||||
"so making regular backups of this folder is ideal.".format(
|
"so making regular backups of this folder is ideal.".format(
|
||||||
config.config_dir),
|
config.config_dir),
|
||||||
reporter.MEDIUM_PRIORITY)
|
reporter.MEDIUM_PRIORITY)
|
||||||
|
|||||||
@@ -445,7 +445,7 @@ _ERROR_HELP = {
|
|||||||
"your domain, please ensure that the signature is valid.",
|
"your domain, please ensure that the signature is valid.",
|
||||||
"malformed":
|
"malformed":
|
||||||
"To fix these errors, please make sure that you did not provide any "
|
"To fix these errors, please make sure that you did not provide any "
|
||||||
"invalid information to the client, and try running Let's Encrypt "
|
"invalid information to the client, and try running Certbot "
|
||||||
"again.",
|
"again.",
|
||||||
"serverInternal":
|
"serverInternal":
|
||||||
"Unfortunately, an error on the ACME server prevented you from completing "
|
"Unfortunately, an error on the ACME server prevented you from completing "
|
||||||
@@ -453,7 +453,7 @@ _ERROR_HELP = {
|
|||||||
"tls":
|
"tls":
|
||||||
_ERROR_HELP_COMMON + " Additionally, please check that you have an "
|
_ERROR_HELP_COMMON + " Additionally, please check that you have an "
|
||||||
"up-to-date TLS configuration that allows the server to communicate "
|
"up-to-date TLS configuration that allows the server to communicate "
|
||||||
"with the Let's Encrypt client.",
|
"with the Certbot client.",
|
||||||
"unauthorized": _ERROR_HELP_COMMON,
|
"unauthorized": _ERROR_HELP_COMMON,
|
||||||
"unknownHost": _ERROR_HELP_COMMON,
|
"unknownHost": _ERROR_HELP_COMMON,
|
||||||
}
|
}
|
||||||
|
|||||||
+5
-5
@@ -1,4 +1,4 @@
|
|||||||
"""Let's Encrypt command line argument & config processing."""
|
"""Certbot command line argument & config processing."""
|
||||||
from __future__ import print_function
|
from __future__ import print_function
|
||||||
import argparse
|
import argparse
|
||||||
import glob
|
import glob
|
||||||
@@ -48,9 +48,9 @@ cli_command = "letsencrypt-auto" if fragment in sys.argv[0] else "certbot"
|
|||||||
SHORT_USAGE = """
|
SHORT_USAGE = """
|
||||||
{0} [SUBCOMMAND] [options] [-d domain] [-d domain] ...
|
{0} [SUBCOMMAND] [options] [-d domain] [-d domain] ...
|
||||||
|
|
||||||
The Let's Encrypt agent can obtain and install HTTPS/TLS/SSL certificates. By
|
Certbot can obtain and install HTTPS/TLS/SSL certificates. By default,
|
||||||
default, it will attempt to use a webserver both for obtaining and installing
|
it will attempt to use a webserver both for obtaining and installing the
|
||||||
the cert. Major SUBCOMMANDS are:
|
cert. Major SUBCOMMANDS are:
|
||||||
|
|
||||||
(default) run Obtain & install a cert in your current webserver
|
(default) run Obtain & install a cert in your current webserver
|
||||||
certonly Obtain cert, but do not install it (aka "auth")
|
certonly Obtain cert, but do not install it (aka "auth")
|
||||||
@@ -848,7 +848,7 @@ def _paths_parser(helpful):
|
|||||||
|
|
||||||
def _plugins_parsing(helpful, plugins):
|
def _plugins_parsing(helpful, plugins):
|
||||||
helpful.add_group(
|
helpful.add_group(
|
||||||
"plugins", description="Let's Encrypt client supports an "
|
"plugins", description="Certbot client supports an "
|
||||||
"extensible plugins architecture. See '%(prog)s plugins' for a "
|
"extensible plugins architecture. See '%(prog)s plugins' for a "
|
||||||
"list of all installed plugins and their names. You can force "
|
"list of all installed plugins and their names. You can force "
|
||||||
"a particular plugin by setting options provided below. Running "
|
"a particular plugin by setting options provided below. Running "
|
||||||
|
|||||||
+2
-2
@@ -1,4 +1,4 @@
|
|||||||
"""Let's Encrypt client API."""
|
"""Certbot client API."""
|
||||||
import logging
|
import logging
|
||||||
import os
|
import os
|
||||||
|
|
||||||
@@ -360,7 +360,7 @@ class Client(object):
|
|||||||
fullchain_path=fullchain_path)
|
fullchain_path=fullchain_path)
|
||||||
self.installer.save() # needed by the Apache plugin
|
self.installer.save() # needed by the Apache plugin
|
||||||
|
|
||||||
self.installer.save("Deployed Let's Encrypt Certificate")
|
self.installer.save("Deployed ACME Certificate")
|
||||||
|
|
||||||
msg = ("We were unable to install your certificate, "
|
msg = ("We were unable to install your certificate, "
|
||||||
"however, we successfully restored your "
|
"however, we successfully restored your "
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
"""Let's Encrypt user-supplied configuration."""
|
"""Certbot user-supplied configuration."""
|
||||||
import copy
|
import copy
|
||||||
import os
|
import os
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
"""Let's Encrypt constants."""
|
"""Certbot constants."""
|
||||||
import os
|
import os
|
||||||
import logging
|
import logging
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
"""Let's Encrypt client crypto utility functions.
|
"""Certbot client crypto utility functions.
|
||||||
|
|
||||||
.. todo:: Make the transition to use PSS rather than PKCS1_v1_5 when the server
|
.. todo:: Make the transition to use PSS rather than PKCS1_v1_5 when the server
|
||||||
is capable of handling the signatures.
|
is capable of handling the signatures.
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
"""Let's Encrypt display utilities."""
|
"""Certbot display utilities."""
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
"""Let's Encrypt Enhancement Display"""
|
"""Certbot Enhancement Display"""
|
||||||
import logging
|
import logging
|
||||||
|
|
||||||
import zope.component
|
import zope.component
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
"""Let's Encrypt display."""
|
"""Certbot display."""
|
||||||
import os
|
import os
|
||||||
import textwrap
|
import textwrap
|
||||||
|
|
||||||
|
|||||||
+7
-7
@@ -1,8 +1,8 @@
|
|||||||
"""Let's Encrypt client errors."""
|
"""Certbot client errors."""
|
||||||
|
|
||||||
|
|
||||||
class Error(Exception):
|
class Error(Exception):
|
||||||
"""Generic Let's Encrypt client error."""
|
"""Generic Certbot client error."""
|
||||||
|
|
||||||
|
|
||||||
class AccountStorageError(Error):
|
class AccountStorageError(Error):
|
||||||
@@ -14,7 +14,7 @@ class AccountNotFound(AccountStorageError):
|
|||||||
|
|
||||||
|
|
||||||
class ReverterError(Error):
|
class ReverterError(Error):
|
||||||
"""Let's Encrypt Reverter error."""
|
"""Certbot Reverter error."""
|
||||||
|
|
||||||
|
|
||||||
class SubprocessError(Error):
|
class SubprocessError(Error):
|
||||||
@@ -54,7 +54,7 @@ class FailedChallenges(AuthorizationError):
|
|||||||
|
|
||||||
# Plugin Errors
|
# Plugin Errors
|
||||||
class PluginError(Error):
|
class PluginError(Error):
|
||||||
"""Let's Encrypt Plugin error."""
|
"""Certbot Plugin error."""
|
||||||
|
|
||||||
|
|
||||||
class PluginEnhancementAlreadyPresent(Error):
|
class PluginEnhancementAlreadyPresent(Error):
|
||||||
@@ -66,15 +66,15 @@ class PluginSelectionError(Error):
|
|||||||
|
|
||||||
|
|
||||||
class NoInstallationError(PluginError):
|
class NoInstallationError(PluginError):
|
||||||
"""Let's Encrypt No Installation error."""
|
"""Certbot No Installation error."""
|
||||||
|
|
||||||
|
|
||||||
class MisconfigurationError(PluginError):
|
class MisconfigurationError(PluginError):
|
||||||
"""Let's Encrypt Misconfiguration error."""
|
"""Certbot Misconfiguration error."""
|
||||||
|
|
||||||
|
|
||||||
class NotSupportedError(PluginError):
|
class NotSupportedError(PluginError):
|
||||||
"""Let's Encrypt Plugin function not supported error."""
|
"""Certbot Plugin function not supported error."""
|
||||||
|
|
||||||
|
|
||||||
class StandaloneBindError(Error):
|
class StandaloneBindError(Error):
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
"""Let's Encrypt client interfaces."""
|
"""Certbot client interfaces."""
|
||||||
import abc
|
import abc
|
||||||
import zope.interface
|
import zope.interface
|
||||||
|
|
||||||
@@ -97,7 +97,7 @@ class IPluginFactory(zope.interface.Interface):
|
|||||||
|
|
||||||
|
|
||||||
class IPlugin(zope.interface.Interface):
|
class IPlugin(zope.interface.Interface):
|
||||||
"""Let's Encrypt plugin."""
|
"""Certbot plugin."""
|
||||||
|
|
||||||
def prepare():
|
def prepare():
|
||||||
"""Prepare the plugin.
|
"""Prepare the plugin.
|
||||||
@@ -130,7 +130,7 @@ class IPlugin(zope.interface.Interface):
|
|||||||
|
|
||||||
|
|
||||||
class IAuthenticator(IPlugin):
|
class IAuthenticator(IPlugin):
|
||||||
"""Generic Let's Encrypt Authenticator.
|
"""Generic Certbot Authenticator.
|
||||||
|
|
||||||
Class represents all possible tools processes that have the
|
Class represents all possible tools processes that have the
|
||||||
ability to perform challenges and attain a certificate.
|
ability to perform challenges and attain a certificate.
|
||||||
@@ -190,7 +190,7 @@ class IAuthenticator(IPlugin):
|
|||||||
|
|
||||||
|
|
||||||
class IConfig(zope.interface.Interface):
|
class IConfig(zope.interface.Interface):
|
||||||
"""Let's Encrypt user-supplied configuration.
|
"""Certbot user-supplied configuration.
|
||||||
|
|
||||||
.. warning:: The values stored in the configuration have not been
|
.. warning:: The values stored in the configuration have not been
|
||||||
filtered, stripped or sanitized.
|
filtered, stripped or sanitized.
|
||||||
@@ -230,7 +230,7 @@ class IConfig(zope.interface.Interface):
|
|||||||
|
|
||||||
|
|
||||||
class IInstaller(IPlugin):
|
class IInstaller(IPlugin):
|
||||||
"""Generic Let's Encrypt Installer Interface.
|
"""Generic Certbot Installer Interface.
|
||||||
|
|
||||||
Represents any server that an X509 certificate can be placed.
|
Represents any server that an X509 certificate can be placed.
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
"""Utilities for all Let's Encrypt."""
|
"""Utilities for all Certbot."""
|
||||||
import argparse
|
import argparse
|
||||||
import collections
|
import collections
|
||||||
import errno
|
import errno
|
||||||
|
|||||||
+4
-4
@@ -1,4 +1,4 @@
|
|||||||
"""Let's Encrypt main entry point."""
|
"""Certbot main entry point."""
|
||||||
from __future__ import print_function
|
from __future__ import print_function
|
||||||
import atexit
|
import atexit
|
||||||
import functools
|
import functools
|
||||||
@@ -38,14 +38,14 @@ logger = logging.getLogger(__name__)
|
|||||||
|
|
||||||
|
|
||||||
def _suggest_donation_if_appropriate(config, action):
|
def _suggest_donation_if_appropriate(config, action):
|
||||||
"""Potentially suggest a donation to support Let's Encrypt."""
|
"""Potentially suggest a donation to support Certbot."""
|
||||||
if config.staging or config.verb == "renew":
|
if config.staging or config.verb == "renew":
|
||||||
# --dry-run implies --staging
|
# --dry-run implies --staging
|
||||||
return
|
return
|
||||||
if action not in ["renew", "newcert"]:
|
if action not in ["renew", "newcert"]:
|
||||||
return
|
return
|
||||||
reporter_util = zope.component.getUtility(interfaces.IReporter)
|
reporter_util = zope.component.getUtility(interfaces.IReporter)
|
||||||
msg = ("If you like Let's Encrypt, please consider supporting our work by:\n\n"
|
msg = ("If you like Certbot, please consider supporting our work by:\n\n"
|
||||||
"Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate\n"
|
"Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate\n"
|
||||||
"Donating to EFF: https://eff.org/donate-le\n\n")
|
"Donating to EFF: https://eff.org/donate-le\n\n")
|
||||||
reporter_util.add_message(msg, reporter_util.LOW_PRIORITY)
|
reporter_util.add_message(msg, reporter_util.LOW_PRIORITY)
|
||||||
@@ -289,7 +289,7 @@ def _report_new_cert(cert_path, fullchain_path):
|
|||||||
# and say something more informative here.
|
# and say something more informative here.
|
||||||
msg = ("Congratulations! Your certificate {0} been saved at {1}."
|
msg = ("Congratulations! Your certificate {0} been saved at {1}."
|
||||||
" Your cert will expire on {2}. To obtain a new version of the "
|
" Your cert will expire on {2}. To obtain a new version of the "
|
||||||
"certificate in the future, simply run Let's Encrypt again."
|
"certificate in the future, simply run Certbot again."
|
||||||
.format(and_chain, path, expiry))
|
.format(and_chain, path, expiry))
|
||||||
reporter_util.add_message(msg, reporter_util.MEDIUM_PRIORITY)
|
reporter_util.add_message(msg, reporter_util.MEDIUM_PRIORITY)
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -14,7 +14,7 @@ def notify(subject, whom, what):
|
|||||||
|
|
||||||
"""
|
"""
|
||||||
msg = email.message_from_string(what)
|
msg = email.message_from_string(what)
|
||||||
msg.add_header("From", "Let's Encrypt renewal agent <root>")
|
msg.add_header("From", "Certbot renewal agent <root>")
|
||||||
msg.add_header("To", whom)
|
msg.add_header("To", whom)
|
||||||
msg.add_header("Subject", subject)
|
msg.add_header("Subject", subject)
|
||||||
msg = msg.as_string()
|
msg = msg.as_string()
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
"""Let's Encrypt client.plugins."""
|
"""Certbot client.plugins."""
|
||||||
|
|||||||
@@ -33,7 +33,7 @@ def pick_installer(config, default, plugins,
|
|||||||
|
|
||||||
def pick_authenticator(
|
def pick_authenticator(
|
||||||
config, default, plugins, question="How would you "
|
config, default, plugins, question="How would you "
|
||||||
"like to authenticate with the Let's Encrypt CA?"):
|
"like to authenticate with the ACME CA?"):
|
||||||
"""Pick authentication plugin."""
|
"""Pick authentication plugin."""
|
||||||
return pick_plugin(
|
return pick_plugin(
|
||||||
config, default, plugins, question, (interfaces.IAuthenticator,))
|
config, default, plugins, question, (interfaces.IAuthenticator,))
|
||||||
|
|||||||
+2
-3
@@ -80,7 +80,7 @@ class Reverter(object):
|
|||||||
|
|
||||||
if not backups:
|
if not backups:
|
||||||
logger.warning(
|
logger.warning(
|
||||||
"Let's Encrypt hasn't modified your configuration, so rollback "
|
"Certbot hasn't modified your configuration, so rollback "
|
||||||
"isn't available.")
|
"isn't available.")
|
||||||
elif len(backups) < rollback:
|
elif len(backups) < rollback:
|
||||||
logger.warning("Unable to rollback %d checkpoints, only %d exist",
|
logger.warning("Unable to rollback %d checkpoints, only %d exist",
|
||||||
@@ -112,8 +112,7 @@ class Reverter(object):
|
|||||||
if num:
|
if num:
|
||||||
backups = backups[:num]
|
backups = backups[:num]
|
||||||
if not backups:
|
if not backups:
|
||||||
logger.info("The Let's Encrypt client has not saved any backups "
|
logger.info("Certbot has not saved backups of your configuration")
|
||||||
"of your configuration")
|
|
||||||
|
|
||||||
return
|
return
|
||||||
# Make sure there isn't anything unexpected in the backup folder
|
# Make sure there isn't anything unexpected in the backup folder
|
||||||
|
|||||||
+3
-3
@@ -186,9 +186,9 @@ def relevant_values(all_values):
|
|||||||
class RenewableCert(object): # pylint: disable=too-many-instance-attributes
|
class RenewableCert(object): # pylint: disable=too-many-instance-attributes
|
||||||
"""Renewable certificate.
|
"""Renewable certificate.
|
||||||
|
|
||||||
Represents a lineage of certificates that is under the management
|
Represents a lineage of certificates that is under the management of
|
||||||
of the Let's Encrypt client, indicated by the existence of an
|
Certbot, indicated by the existence of an associated renewal
|
||||||
associated renewal configuration file.
|
configuration file.
|
||||||
|
|
||||||
Note that the notion of "current version" for a lineage is
|
Note that the notion of "current version" for a lineage is
|
||||||
maintained on disk in the structure of symbolic links, and is not
|
maintained on disk in the structure of symbolic links, and is not
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
"""Let's Encrypt Tests"""
|
"""Certbot Tests"""
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
"""Let's Encrypt Display Tests"""
|
"""Certbot Display Tests"""
|
||||||
|
|||||||
@@ -96,7 +96,7 @@ class ReverterCheckpointLocalTest(unittest.TestCase):
|
|||||||
self.reverter.register_file_creation(True, self.config2)
|
self.reverter.register_file_creation(True, self.config2)
|
||||||
self.reverter.register_file_creation(True, config3, config4)
|
self.reverter.register_file_creation(True, config3, config4)
|
||||||
|
|
||||||
# Simulate Let's Encrypt crash... recovery routine is run
|
# Simulate Certbot crash... recovery routine is run
|
||||||
self.reverter.recovery_routine()
|
self.reverter.recovery_routine()
|
||||||
|
|
||||||
self.assertFalse(os.path.isfile(self.config1))
|
self.assertFalse(os.path.isfile(self.config1))
|
||||||
|
|||||||
Reference in New Issue
Block a user