apache / apache/cloudstack

ca.framework.cert.management.custom.san and "cloudstack-setup-databases -i" force a single string which must be a hostname

Open
#11,848 1 comment 0 reactions 0 assignees View on GitHub
no-issue-activity
Dominant language
Java
Stars
3.1k
Forks
1.4k
Avg merge
6d 19h
Merged PRs (30d)
32

Description

### problem

I need to add 127.0.0.1 to the certificate for $IP:9090/ and ca.framework.cert.management.custom.san is the way to do it, but the feature interprets the entry as a single string, such that the following value:
_cloudstack.internal, 127.0.0.1_

leads to this kind of alt name configuration:

_~# openssl s_client -connect 127.0.01:9090 /dev/null | openssl x509 -noout -text | grep DNS:
IP Address:192.168.0.123, DNS:**cloudstack.internal, 127.0.0.1**_

Note that "cloudstack.internal, 127.0.0.1" is a single string here, so the comma separation is not a thing as I assumed.

Replacing cloudstack.internal with 127.0.0.1 takes me one step further, in that 127.0.0.1 is added to the alt names, but is treated as a hostname, not an IP.

_~#openssl s_client -connect 127.0.01:9090 /dev/null | openssl x509 -noout -text | grep DNS:
IP Address:192.168.0.123, DNS:127.0.0.1_

To further aggravate me, even _cloudstack-setup-databases -i 127.0.0.1_ produces the same results, 127.0.0.1 is treated as hostname, not IP, just like the above.

### versions

4.21.0.0 KVM

### The steps to reproduce the bug

_No response_

### What to do about it?

_No response_

Contributor guide

Open the contributing guide

Research direction

Start by reproducing the certificate behavior with ca.framework.cert.management.custom.san and cloudstack-setup-databases -i 127.0.0.1 on the reported 4.21.0.0 KVM setup. Inspect the certificate with openssl s_client and openssl x509 as shown; done means SAN values are parsed correctly, with IP addresses represented as IP entries rather than hostnames and multiple values handled distinctly.

Written by the indexing model from the issue text.

Assessment

Domain
cloud, infrastructure, security
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.