したがって、私のサーバーの1つがNATの背後にあり、すでにLANにパブリックにアクセスできるApacheサーバーがあるため、別のポートを使用して外部からアクセスし、この新しいサーバー標準ポートからApacheに再マップすることにしました。マシンの証明書を受け取りたいです。私はルータを介したクラシックポート転送を使用してこれを行います。
これで、そのサーバーでLetsEncryptを使用したい場合は、別のサーバーのApacheインストール(ただしすでにLetsEncrypt証明書がある)に接続されている標準ポートを使用しようとするため、明らかに失敗します。
これで、外部から接続するために標準ポートの代わりに私のカスタムポートを使用するようにLetsEncryptに指示する方法が必要だと思いますが、まだ何も見つかりませんでした。可能ですか?それではどうですか?
答え1
ACME準拠のサーバーは依然としてhttp-01/tls-sni-01の問題に対してデフォルトの80/443に接続しようとするため、非標準ポートを使用することは不可能です。
たとえば、certbot
非標準ポートをリッスンするための別のオプションがありますが、それでも問題に合格するのに役立ちません。
certonly:
Options for modifying how a cert is obtained
--tls-sni-01-port TLS_SNI_01_PORT
Port used during tls-sni-01 challenge. This only
affects the port Certbot listens on. A conforming ACME
server will still attempt to connect on port 443.
(default: 443)
--http-01-port HTTP01_PORT
Port used in the http-01 challenge.This only affects
the port Certbot listens on. A conforming ACME server
will still attempt to connect on port 80. (default:
80)
おそらくあなたのための最良の方法は、別の認証方法であるwebrootを使用することです。この場合、外部の世界で使用するために80と443は必要なく、特定のディレクトリのみが必要です(Webサーバー側にプロキシが構成されている可能性があると思います)。
詳細ここ