Skip to content

Commit 383877f

Browse files
author
committed
Deployed 437abec with MkDocs version: 1.6.1
1 parent acc1ed0 commit 383877f

File tree

6 files changed

+300
-96
lines changed

6 files changed

+300
-96
lines changed

database/mysql-configuration/index.html

Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -100,6 +100,18 @@
100100
</li>
101101
</ul>
102102
</li>
103+
<li class="toctree-l3"><a class="reference internal" href="#ssltls-configuration">SSL/TLS Configuration</a>
104+
<ul>
105+
<li class="toctree-l4"><a class="reference internal" href="#ssl-settings">SSL Settings</a>
106+
</li>
107+
<li class="toctree-l4"><a class="reference internal" href="#example-ssl-with-certificate-verification">Example: SSL with Certificate Verification</a>
108+
</li>
109+
<li class="toctree-l4"><a class="reference internal" href="#example-ssl-without-verification-self-signed-certificates">Example: SSL without Verification (Self-Signed Certificates)</a>
110+
</li>
111+
<li class="toctree-l4"><a class="reference internal" href="#backwards-compatibility-note">Backwards Compatibility Note</a>
112+
</li>
113+
</ul>
114+
</li>
103115
</ul>
104116
</li>
105117
<li class="toctree-l2"><a class="reference internal" href="../postgresql-configuration/">PostgreSQL</a>
@@ -431,6 +443,13 @@ <h2 id="configuration-steps">Configuration Steps</h2>
431443
'charset' =&gt; 'utf8mb4', // Recommended: utf8mb4 for full Unicode support
432444
'file' =&gt; '', // Not used for MySQL
433445
'debug' =&gt; false, // Set to true to see SQL queries for debugging
446+
447+
// SSL/TLS Settings (optional, added in 4.1.0)
448+
'ssl' =&gt; false, // Enable SSL/TLS connection
449+
'ssl_verify' =&gt; false, // Verify server certificate (requires ssl=true)
450+
'ssl_ca' =&gt; '', // Path to CA certificate file
451+
'ssl_key' =&gt; '', // Path to client private key (for mTLS)
452+
'ssl_cert' =&gt; '', // Path to client certificate (for mTLS)
434453
],
435454

436455
// Other configuration sections remain the same as in settings.defaults.php
@@ -452,6 +471,75 @@ <h3 id="schema-installation">Schema Installation</h3>
452471
<pre><code class="language-bash">mysql -u poweradmin -p powerdns &lt; sql/poweradmin-mysql-db-structure.sql
453472
mysql -u poweradmin -p powerdns &lt; sql/pdns/[version]/schema.mysql.sql
454473
</code></pre>
474+
<h2 id="ssltls-configuration">SSL/TLS Configuration</h2>
475+
<p><em>Added in version 4.1.0</em></p>
476+
<p>Poweradmin supports SSL/TLS encrypted connections to MySQL/MariaDB servers.</p>
477+
<h3 id="ssl-settings">SSL Settings</h3>
478+
<table>
479+
<thead>
480+
<tr>
481+
<th>Setting</th>
482+
<th>Description</th>
483+
<th>Default</th>
484+
</tr>
485+
</thead>
486+
<tbody>
487+
<tr>
488+
<td><code>ssl</code></td>
489+
<td>Enable SSL/TLS connection</td>
490+
<td><code>false</code></td>
491+
</tr>
492+
<tr>
493+
<td><code>ssl_verify</code></td>
494+
<td>Verify server certificate (requires <code>ssl=true</code>)</td>
495+
<td><code>false</code></td>
496+
</tr>
497+
<tr>
498+
<td><code>ssl_ca</code></td>
499+
<td>Path to CA certificate file</td>
500+
<td>Empty</td>
501+
</tr>
502+
<tr>
503+
<td><code>ssl_key</code></td>
504+
<td>Path to client private key (for mutual TLS)</td>
505+
<td>Empty</td>
506+
</tr>
507+
<tr>
508+
<td><code>ssl_cert</code></td>
509+
<td>Path to client certificate (for mutual TLS)</td>
510+
<td>Empty</td>
511+
</tr>
512+
</tbody>
513+
</table>
514+
<h3 id="example-ssl-with-certificate-verification">Example: SSL with Certificate Verification</h3>
515+
<pre><code class="language-php">'database' =&gt; [
516+
'type' =&gt; 'mysql',
517+
'host' =&gt; 'mysql.example.com',
518+
'port' =&gt; '3306',
519+
'user' =&gt; 'poweradmin',
520+
'password' =&gt; 'your_password',
521+
'name' =&gt; 'powerdns',
522+
'charset' =&gt; 'utf8mb4',
523+
'ssl' =&gt; true,
524+
'ssl_verify' =&gt; true,
525+
'ssl_ca' =&gt; '/path/to/ca-cert.pem',
526+
],
527+
</code></pre>
528+
<h3 id="example-ssl-without-verification-self-signed-certificates">Example: SSL without Verification (Self-Signed Certificates)</h3>
529+
<pre><code class="language-php">'database' =&gt; [
530+
'type' =&gt; 'mysql',
531+
'host' =&gt; 'mysql.example.com',
532+
'port' =&gt; '3306',
533+
'user' =&gt; 'poweradmin',
534+
'password' =&gt; 'your_password',
535+
'name' =&gt; 'powerdns',
536+
'charset' =&gt; 'utf8mb4',
537+
'ssl' =&gt; true,
538+
'ssl_verify' =&gt; false,
539+
],
540+
</code></pre>
541+
<h3 id="backwards-compatibility-note">Backwards Compatibility Note</h3>
542+
<p>By default (<code>ssl=false</code>), Poweradmin disables SSL certificate verification to maintain backwards compatibility with servers that don't use SSL or use self-signed certificates. This addresses issues with newer MariaDB connector libraries that enforce SSL verification by default.</p>
455543

456544

457545
</div>

database/postgresql-configuration/index.html

Lines changed: 116 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -112,6 +112,20 @@
112112
</li>
113113
</ul>
114114
</li>
115+
<li class="toctree-l3"><a class="reference internal" href="#ssltls-configuration">SSL/TLS Configuration</a>
116+
<ul>
117+
<li class="toctree-l4"><a class="reference internal" href="#ssl-settings">SSL Settings</a>
118+
</li>
119+
<li class="toctree-l4"><a class="reference internal" href="#ssl-mode-mapping">SSL Mode Mapping</a>
120+
</li>
121+
<li class="toctree-l4"><a class="reference internal" href="#example-ssl-with-certificate-verification">Example: SSL with Certificate Verification</a>
122+
</li>
123+
<li class="toctree-l4"><a class="reference internal" href="#example-ssl-without-verification">Example: SSL without Verification</a>
124+
</li>
125+
<li class="toctree-l4"><a class="reference internal" href="#backwards-compatibility-note">Backwards Compatibility Note</a>
126+
</li>
127+
</ul>
128+
</li>
115129
</ul>
116130
</li>
117131
<li class="toctree-l2"><a class="reference internal" href="../sqlite/">SQLite</a>
@@ -441,6 +455,13 @@ <h2 id="configuration-steps">Configuration Steps</h2>
441455
'charset' =&gt; 'UTF8', // PostgreSQL uses uppercase charset names
442456
'file' =&gt; '', // Not used for PostgreSQL
443457
'debug' =&gt; false, // Set to true to see SQL queries for debugging
458+
459+
// SSL/TLS Settings (optional, added in 4.1.0)
460+
'ssl' =&gt; false, // Enable SSL/TLS connection
461+
'ssl_verify' =&gt; false, // Verify server certificate (requires ssl=true)
462+
'ssl_ca' =&gt; '', // Path to CA certificate file (sslrootcert)
463+
'ssl_key' =&gt; '', // Path to client private key (sslkey)
464+
'ssl_cert' =&gt; '', // Path to client certificate (sslcert)
444465
],
445466

446467
// Other configuration sections remain the same as in settings.defaults.php
@@ -482,6 +503,101 @@ <h3 id="performance-tuning">Performance Tuning</h3>
482503
<p><strong>Statement Timeout</strong>: For web applications, consider setting <code>statement_timeout</code> to prevent long-running queries</p>
483504
</li>
484505
</ol>
506+
<h2 id="ssltls-configuration">SSL/TLS Configuration</h2>
507+
<p><em>Added in version 4.1.0</em></p>
508+
<p>Poweradmin supports SSL/TLS encrypted connections to PostgreSQL servers using the <code>sslmode</code> DSN parameter.</p>
509+
<h3 id="ssl-settings">SSL Settings</h3>
510+
<table>
511+
<thead>
512+
<tr>
513+
<th>Setting</th>
514+
<th>Description</th>
515+
<th>Default</th>
516+
</tr>
517+
</thead>
518+
<tbody>
519+
<tr>
520+
<td><code>ssl</code></td>
521+
<td>Enable SSL/TLS connection</td>
522+
<td><code>false</code></td>
523+
</tr>
524+
<tr>
525+
<td><code>ssl_verify</code></td>
526+
<td>Verify server certificate (requires <code>ssl=true</code>)</td>
527+
<td><code>false</code></td>
528+
</tr>
529+
<tr>
530+
<td><code>ssl_ca</code></td>
531+
<td>Path to CA certificate file (sslrootcert)</td>
532+
<td>Empty</td>
533+
</tr>
534+
<tr>
535+
<td><code>ssl_key</code></td>
536+
<td>Path to client private key (sslkey)</td>
537+
<td>Empty</td>
538+
</tr>
539+
<tr>
540+
<td><code>ssl_cert</code></td>
541+
<td>Path to client certificate (sslcert)</td>
542+
<td>Empty</td>
543+
</tr>
544+
</tbody>
545+
</table>
546+
<h3 id="ssl-mode-mapping">SSL Mode Mapping</h3>
547+
<p>Poweradmin maps the settings to PostgreSQL <code>sslmode</code> values:</p>
548+
<table>
549+
<thead>
550+
<tr>
551+
<th>ssl</th>
552+
<th>ssl_verify</th>
553+
<th>PostgreSQL sslmode</th>
554+
</tr>
555+
</thead>
556+
<tbody>
557+
<tr>
558+
<td><code>false</code></td>
559+
<td>-</td>
560+
<td><code>prefer</code> (try SSL, fall back to non-SSL)</td>
561+
</tr>
562+
<tr>
563+
<td><code>true</code></td>
564+
<td><code>false</code></td>
565+
<td><code>require</code> (require SSL, no cert verification)</td>
566+
</tr>
567+
<tr>
568+
<td><code>true</code></td>
569+
<td><code>true</code></td>
570+
<td><code>verify-full</code> (require SSL + verify cert + hostname)</td>
571+
</tr>
572+
</tbody>
573+
</table>
574+
<h3 id="example-ssl-with-certificate-verification">Example: SSL with Certificate Verification</h3>
575+
<pre><code class="language-php">'database' =&gt; [
576+
'type' =&gt; 'pgsql',
577+
'host' =&gt; 'postgres.example.com',
578+
'port' =&gt; '5432',
579+
'user' =&gt; 'poweradmin',
580+
'password' =&gt; 'your_password',
581+
'name' =&gt; 'powerdns',
582+
'ssl' =&gt; true,
583+
'ssl_verify' =&gt; true,
584+
'ssl_ca' =&gt; '/path/to/ca-cert.pem',
585+
],
586+
</code></pre>
587+
<h3 id="example-ssl-without-verification">Example: SSL without Verification</h3>
588+
<pre><code class="language-php">'database' =&gt; [
589+
'type' =&gt; 'pgsql',
590+
'host' =&gt; 'postgres.example.com',
591+
'port' =&gt; '5432',
592+
'user' =&gt; 'poweradmin',
593+
'password' =&gt; 'your_password',
594+
'name' =&gt; 'powerdns',
595+
'ssl' =&gt; true,
596+
'ssl_verify' =&gt; false,
597+
],
598+
</code></pre>
599+
<h3 id="backwards-compatibility-note">Backwards Compatibility Note</h3>
600+
<p>By default (<code>ssl=false</code>), Poweradmin uses <code>sslmode=prefer</code>, which attempts SSL connections but falls back to non-SSL if the server doesn't support it. This maintains backwards compatibility with existing configurations.</p>
485601

486602

487603
</div>

index.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -504,5 +504,5 @@ <h2 id="license-and-disclaimer">License and Disclaimer</h2>
504504

505505
<!--
506506
MkDocs version : 1.6.1
507-
Build Date UTC : 2026-01-28 09:45:11.359987+00:00
507+
Build Date UTC : 2026-01-30 21:57:06.471429+00:00
508508
-->

search/search_index.json

Lines changed: 1 addition & 1 deletion
Large diffs are not rendered by default.

0 commit comments

Comments
 (0)