您好,我正在努力让Cert-Manager与我的Azure AKS上的let'sencrypt一起使用,以保护和asp.net核心Web应用程序。
我有一个这样的ClusterIssuer:
apiVersion: cert-manager.io/v1alpha2
kind: ClusterIssuer
metadata:
name: letsencryptstaging-issuer
spec:
acme:
server: https://acme-staging-v02.api.letsencrypt.org/directory
email: letsencryptstaging@prodibi.com
privateKeySecretRef:
name: letsencryptstaging-secret
solvers:
- http01:
ingress:
class: nginx
我请求这样的证书:
apiVersion: cert-manager.io/v1alpha2
kind: Certificate
metadata:
name: aks-prodibiv2-com-staging
spec:
secretName: aks-prodibiv2-com-staging-secret
duration: 2160h
renewBefore: 480h
organization:
- prodibiv2
dnsNames:
- aks.prodibiv2.com
issuerRef:
name: letsencryptstaging-issuer
kind: ClusterIssuer
我还将注释添加到了我想使用的入口控制器中
certmanager.k8s.io/acme-challenge-type: http01
certmanager.k8s.io/cluster-issuer: letsencryptstaging-issuer
在以下屏幕截图中,我们可以看到证书请求为“等待完成” 我们还可以看到我们有两个入口控制器,用于挑战的一个似乎没有IP,并且域指向了ingress-prodibiweb
如果我尝试将域放在.well-known路径的前面,则会收到404 not found错误。
所以我的猜测是,证书管理器没有正确配置为使用ingress-prodibiweb(指向asp.net核心webapp)或类似的东西。关于如何尝试使其正常工作的任何想法?
答案 0 :(得分:1)
- http01:
ingress:
class: nginx
dns01也是请求SSL的解决方案。如果您有足够的权限,可以尝试一下。