No connection adapters found


#1

I am trying to run Letsencrypt-auto installer. It asks for my email id and then it exits giving the following error:

An unexpected error occurred.
InvalidSchema: No connection adapters were found for ' https://acme-v01.api.letsencrypt.org/directory'
Please see the logfiles in /var/log/letsencrypt for more details.

These are the contents of the logfile

2015-11-05 07:33:39,747:DEBUG:letsencrypt.cli:Root logging level set at 30
2015-11-05 07:33:39,748:INFO:letsencrypt.cli:Saving debug log to /var/log/letsencrypt/letsencrypt.log
2015-11-05 07:33:39,748:DEBUG:letsencrypt.cli:letsencrypt version: 0.0.0.dev20151104
2015-11-05 07:33:39,748:DEBUG:letsencrypt.cli:Arguments: ['--agree-dev-preview', '--server', ' https://acme-v01.api.letsencrypt.org/directory']
2015-11-05 07:33:39,748:DEBUG:letsencrypt.cli:Discovered plugins: PluginsRegistry(PluginEntryPoint#apache,PluginEntryPoint#webroot,PluginEntryPoint#null,PluginEntryPoint#manual,PluginEntryPoint#standalone)
2015-11-05 07:33:39,753:DEBUG:letsencrypt.cli:Requested authenticator None and installer None
2015-11-05 07:33:40,323:DEBUG:letsencrypt.plugins.disco:Other error:(PluginEntryPoint#webroot): --webroot-path must be set
Traceback (most recent call last):
  File "/root/.local/share/letsencrypt/local/lib/python2.7/site-packages/letsencrypt/plugins/disco.py", line 103, in prepare
    self._initialized.prepare()
  File "/root/.local/share/letsencrypt/local/lib/python2.7/site-packages/letsencrypt/plugins/webroot.py", line 89, in prepare
    self.option_name("path")))
PluginError: --webroot-path must be set
2015-11-05 07:33:40,324:DEBUG:letsencrypt.display.ops:Multiple candidate plugins: * apache
Description: Apache Web Server - Alpha
Interfaces: IAuthenticator, IInstaller, IPlugin
Entry point: apache = letsencrypt_apache.configurator:ApacheConfigurator
Initialized: <letsencrypt_apache.configurator.ApacheConfigurator object at 0x7f2a357ce150>
Prep: True

* standalone
Description: Automatically use a temporary webserver
Interfaces: IAuthenticator, IPlugin
Entry point: standalone = letsencrypt.plugins.standalone:Authenticator
Initialized: <letsencrypt.plugins.standalone.Authenticator object at 0x7f2a357bcf10>
Prep: True
2015-11-05 07:33:43,425:DEBUG:letsencrypt.cli:Selected authenticator <letsencrypt_apache.configurator.ApacheConfigurator object at 0x7f2a357ce150> and installer None
2015-11-05 07:33:53,209:DEBUG:root:Sending GET request to  https://acme-v01.api.letsencrypt.org/directory. args: (), kwargs: {}
2015-11-05 07:33:53,218:DEBUG:letsencrypt.cli:Exiting abnormally:
Traceback (most recent call last):
  File "/root/.local/share/letsencrypt/bin/letsencrypt", line 11, in <module>
    sys.exit(main())
  File "/root/.local/share/letsencrypt/local/lib/python2.7/site-packages/letsencrypt/cli.py", line 1138, in main
    return args.func(args, config, plugins)
  File "/root/.local/share/letsencrypt/local/lib/python2.7/site-packages/letsencrypt/cli.py", line 479, in obtaincert
    le_client = _init_le_client(args, config, authenticator, installer)
  File "/root/.local/share/letsencrypt/local/lib/python2.7/site-packages/letsencrypt/cli.py", line 174, in _init_le_client
    acc, acme = _determine_account(args, config)
  File "/root/.local/share/letsencrypt/local/lib/python2.7/site-packages/letsencrypt/cli.py", line 161, in _determine_account
    config, account_storage, tos_cb=_tos_cb)
  File "/root/.local/share/letsencrypt/local/lib/python2.7/site-packages/letsencrypt/client.py", line 87, in register
    acme = _acme_from_config_key(config, key)
  File "/root/.local/share/letsencrypt/local/lib/python2.7/site-packages/letsencrypt/client.py", line 35, in _acme_from_config_key
    verify_ssl=(not config.no_verify_ssl))
  File "/root/.local/share/letsencrypt/local/lib/python2.7/site-packages/acme/client.py", line 60, in __init__
    self.net.get(directory).json())
  File "/root/.local/share/letsencrypt/local/lib/python2.7/site-packages/acme/client.py", line 599, in get
    self._send_request('GET', url, **kwargs), content_type=content_type)
  File "/root/.local/share/letsencrypt/local/lib/python2.7/site-packages/acme/client.py", line 581, in _send_request
    response = requests.request(method, url, *args, **kwargs)
  File "/root/.local/share/letsencrypt/local/lib/python2.7/site-packages/requests/api.py", line 50, in request
    response = session.request(method=method, url=url, **kwargs)
  File "/root/.local/share/letsencrypt/local/lib/python2.7/site-packages/requests/sessions.py", line 468, in request
    resp = self.send(prep, **send_kwargs)
  File "/root/.local/share/letsencrypt/local/lib/python2.7/site-packages/requests/sessions.py", line 570, in send
    adapter = self.get_adapter(url=request.url)
  File "/root/.local/share/letsencrypt/local/lib/python2.7/site-packages/requests/sessions.py", line 644, in get_adapter
    raise InvalidSchema("No connection adapters were found for '%s'" % url)
InvalidSchema: No connection adapters were found for ' https://acme-v01.api.letsencrypt.org/directory'

What should I do? I am running it on a server based on Ubuntu 14.04


#2

Anyway. I figured the issue. Its something to do with the syntax of the command. I used the official guide and used a cli.ini file and just used letsencrypt-auto to install. Worked.


#3

Glad you got it sorted out.
The issue with the command is one i came across also.
I figured out that if you copy the command and remove the linefeed, the line concatenator “” should be removed also.

./letsencrypt-auto --agree-dev-preview --server \
  https://acme-v01.api.letsencrypt.org/directory auth

vs
./letsencrypt-auto --agree-dev-preview --server https://acme-v01.api.letsencrypt.org/directory auth