我使用的是ubuntu 16.04和apache服务器。
我尝试在以下条件下运行命令sudo certbot--apache
在运行Apache时
正在停止阿帕奇服务
-使用Apache默认配置文件中的端口80
-使用端口443
尽管如此,我还是无法成功设置SSL证书。在一些失败的尝试之后,我现在得到一个错误,如
我的域名是:
我运行了这个命令:
它产生了这样的输出:
我的Web服务器是(包括版本):
我的Web服务器运行的操作系统是(包括版本):
我的主机提供商(如果适用)是:
我可以在我的机器上登录到根外壳(是或否,或者我不知道):
我正在使用控制面板管理我的站点(否,或者提供控制面板的名称和版本):,我的域名是:www.quriousfly.io
我运行了以下命令:sudo certbot--apache
它产生了这样的输出:授权过程失败。Www.quriousfly.io(TLS-SNI-01):urn:acme:Error:Connection::服务器无法连接到客户端以验证域::Timeout
我的Web服务器是(包括版本):Apache2
我的Web服务器运行的操作系统是(包括版本):AWS-EC2上的Ubuntu 16.04
我的主机提供商(如果适用)是:Namecheap
我可以在我的机器上登录到根外壳(是或否,或者我不知道):可以
我正在使用控制面板管理我的站点(否,或者提供控制面板的名称和版本):不,您正在使用TLS-SNI授权,但连接到端口443(HTTPS)失败:
$telnet www.quriousfly.io 443
尝试13.126.72.26...
切换到使用端口80的http-01授权,很抱歉对此进行了干预。
我也有同样的问题。如何切换到使用http-01?有一个参数--首选--Challenges可能会对此有所帮助。
因此,请尝试运行certbot,并添加--首选-Challenges http,byteamp:
有一个参数--首选--挑战可能会对此有所帮助。
所以尝试使用添加--首选--挑战http来运行certbot
这对阿帕奇插件不会有直接帮助。有关certbot的不同插件及其功能和支持的挑战:获取证书(和选择插件)的详细概述,请参见下表。
你可以在那里看到,阿帕奇插件只支持TLS-SNI-01挑战。这些挑战针对的是该插件的身份验证功能。安装功能与挑战无关。
因此,对于使用http-01质询的身份验证,您可以使用webroot、独立或手动插件。对于第一个插件(Webroot),http-01是唯一受支持的挑战。因此,--首选--挑战是不必要的。对于后两个插件,您确实可以使用该选项选择挑战类型。
如果您想在已配置的Web服务器上使用http-01挑战,我建议您使用Webroot插件进行身份验证。注意:您可以针对不同的功能组合不同的插件。也就是说,您可以使用apache插件作为安装程序(通过在命令行上使用-i apache),并结合使用webroot插件作为验证器(通过在命令行上使用-a webroot-w/path/to/Applicable/webroot/)。
我建议使用上面的插件组合:用于将证书安装到Web服务器的Apache插件和用于在端口80上使用http-01进行身份验证的Webroot插件。
但我认为,与仅仅选择另一个插件相比,主题指示器的问题值得采取不同的方法。对端口443的访问似乎被阻止了。如果阻止访问端口443,则生成的HTTPS站点也会被阻止。因此,选择另一个插件来颁发证书只是解决方案的一部分:拥有一个因为端口443被阻止而无法访问的HTTPS站点根本没有任何用处!
因此,在我看来,@ albinantony 2904和@torkild应该调查“为什么我的服务器无法通过端口443访问”的问题,而不仅仅是调查证书的颁发。看看防火墙阻止除少数端口外的每个端口(即,80,22)。,奥西里斯:
因此,在我看来,@ albinantony 2904和@torkild应该调查“为什么我的服务器无法通过端口443访问”的问题,而不仅仅是调查证书的颁发。
我完全同意你的观点,首先应该解决网络相关问题。