We hebben het werkend gekregen voor onze interne zelfondertekende certificaten door geen IP-adressen maar machine(+domein)namen te gebruiken als de CN en verbindingsinstellingen.
Dus plaats 'dbServer1.company.local'
als de CN voor het servercertificaat en gebruik dezelfde 'dbServer1.company.local'
adres als het hostgedeelte van de DSN voor de PDO-verbinding. Als je wilt, kun je gewoon 'dbServer1'
. gebruiken maar zorg ervoor dat je het op beide plaatsen gebruikt.
Dit zal je op weg helpen:
$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);
We beheren onze eigen DNS, dus het oplossen van dbServer1.company.local
is geen probleem, maar als uw webserver het niet kan oplossen, of u de DNS-invoer niet kunt/kan beheren, hack dan iets als het volgende in uw etc/hosts
bestand:
10.5.5.20 dbServer1.company.local
of
10.5.5.20 dbServer1