Vi fik det til at fungere for vores interne selvsignerede certifikater ved ikke at bruge IP-adresser, men maskinnavne (+domæne) som CN- og forbindelsesindstillinger.
Så indsæt 'dbServer1.company.local'
som CN for servercertifikatet og brug den samme 'dbServer1.company.local'
adresse som værtsdelen af DSN for PDO-forbindelsen. Hvis du vil, kan du bare bruge 'dbServer1'
men sørg for at bruge det begge steder.
Dette får dig i gang:
$pdo_options = array(
PDO::MYSQL_ATTR_SSL_KEY => 'path/to/client-key.pem',
PDO::MYSQL_ATTR_SSL_CERT => 'path/to/client-cert.pem',
PDO::MYSQL_ATTR_SSL_CA => 'path/to/ca.pem'
);
PDO::__construct('mysql:host=dbServer1.company.local;dbname=someDB','someUser', 'somePass', $pdo_options);
Vi administrerer vores egen DNS, så vi løser dbServer1.company.local
er ikke et problem, men hvis din webserver ikke kan løse det, eller du ikke/kan ikke administrere DNS-posten, så hack noget som det følgende til dine etc/hosts
fil:
10.5.5.20 dbServer1.company.local
eller
10.5.5.20 dbServer1