1. 권한 거부 - server.key

증상

<aside>

Error: Unable to load server key file "/mosquitto/certs/server.key" OpenSSL Error: error:8000000D:system library::Permission denied

</aside>

원인

해결

# 공개키는 644, 개인키는 600 (보안의 핵심)
chmod 644 ca.crt server.crt
chmod 600 ca.key server.key 

2. TLS 연결 실패 - 호스트명 불일치

증상

<aside>

브로커 연결 실패 → 에러 코드: -1 (C-client Logs)

</aside>

원인

<aside>

서버 인증서 CN : mqtt-broker 클라이언트 접속: host.docker.internal ← 불일치

</aside>

해결

#SAN 설정 파일 생성
echo "subjectAltName=DNS:host.docker.internal" > /tmp/san.ext

# CA가 서버 인증서에 서명
openssl x509 -req -in server.csr -CA ca.crt -CAkey ca.key -CAcreateserial \\
    -out server.crt -days 365 \\
    -extfile /tmp/san.ext

3. TLS 연결 실패 - SSL 라이브러리 연결 실패