relayd.html (1450B)
1 +++ 2 date = '2025-07-17T00:00:00+09:00' 3 draft = true 4 title = 'relayd、httpd、acme-client' 5 +++ 6 <time>2025-07-17</time> 7 8 <h2>はじめに</h2> 9 <p> 10 このサーバーでは<code>httpd</code>により80番ポートと443番ポートを監視してウェブサイトを運用していたが、別のソフトウェアを使ってバーチャルホストを立てたくなった。そこで、<code>httpd</code>の手前に<code>relayd</code>を挟んで、外から80番、443番ポートへの通信をサブドメインによって振り分けるようにした。</p> 11 12 <figure> 13 <figcaption>Before</figcaption> 14 <pre>Internet -- tcp/80,443 -- httpd 15 </pre> 16 </figure> 17 <figure> 18 <figcaption>After</figcaption> 19 <pre>Internet -- tcp/80,443 -- relayd -- tcp/8080,8443 -- httpd 20 └------ tcp/8081 -- other http server 21 </pre> 22 </figure> 23 24 <h2>httpd.conf</h2> 25 <p> 26 <code>httpd.conf</code>は80番ポートを監視している部分はポート番号を変更するだけでいい。443番ポートの方はポート番号の変更に加え、<code>tls</code>の部分を削除する。tlsは<code>relayd</code>が行なう。</p> 27 28 <h2>acme-client.conf</h2> 29 <p> 30 こちらは<code>full chain certificate</code>のパス<code>relayd</code>が見つけられるように変更する。 31 </p> 32 33 <h2>relayd.conf</h2> 34 <p> 35 80番ポートはそのまま8080番に転送する。443番ポートはtlsをかませて8443番に転送する。</p> 36 37