Skip to content

Commit e5be4f5

Browse files
authored
Merge pull request ceph#63162 from Kushal-deb/fix_issue-2323601-trust-both-sites-rgw-certs-from-a-node
mgr/cephadm: include cluster FSID in root CA Common Name (CN) Reviewed-by: Adam King <[email protected]> Reviewed-by: Redouane Kachach <[email protected]>
2 parents 865ff7a + a0da786 commit e5be4f5

File tree

1 file changed

+7
-5
lines changed

1 file changed

+7
-5
lines changed

src/pybind/mgr/cephadm/ssl_cert_utils.py

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -137,7 +137,7 @@ def generate_root_cert(
137137
root_public_key = self.root_key.public_key()
138138
root_builder = x509.CertificateBuilder()
139139
root_ca_name = x509.Name([
140-
x509.NameAttribute(NameOID.COMMON_NAME, u'cephadm-root'),
140+
x509.NameAttribute(NameOID.COMMON_NAME, f'cephadm-root-{self.cluster_fsid}'),
141141
])
142142
root_builder = root_builder.subject_name(root_ca_name)
143143
root_builder = root_builder.issuer_name(root_ca_name)
@@ -197,11 +197,8 @@ def generate_cert(
197197
public_key = private_key.public_key()
198198

199199
builder = x509.CertificateBuilder()
200-
root_ca_name = x509.Name([
201-
x509.NameAttribute(NameOID.COMMON_NAME, u'cephadm-root'),
202-
])
203200
builder = builder.subject_name(x509.Name([x509.NameAttribute(NameOID.COMMON_NAME, addrs[0]), ]))
204-
builder = builder.issuer_name(root_ca_name)
201+
builder = builder.issuer_name(self.get_root_issuer_name())
205202
builder = builder.not_valid_before(datetime.now())
206203
builder = builder.not_valid_after(datetime.now() + timedelta(days=self.certificate_duration_days))
207204
builder = builder.serial_number(x509.random_serial_number())
@@ -298,6 +295,11 @@ def get_root_cert(self) -> str:
298295
except AttributeError:
299296
return ''
300297

298+
def get_root_issuer_name(self) -> x509.Name:
299+
if not self.root_cert:
300+
raise SSLConfigException("Root certificate not initialized.")
301+
return self.root_cert.subject
302+
301303
def get_root_key(self) -> str:
302304
try:
303305
return self.root_key.private_bytes(

0 commit comments

Comments
 (0)