none
Windows Server 2008 R2にて構築したリモートデスクトップ ゲートウェイとLinuxで構築したWebサーバを共存したい。 RRS feed

  • 質問

  • 初めて書き込ませて頂きます。

    Windows Serverを入手する機会があり、以前から興味があったリモートデスクトップのGW構築を行いました。
    ローカルでの動作は良好で、外部ネットワークからの接続を試す事にしました。

    【環境】
    ルーター  :80、443ポート ⇒ 192.168.11.210(Linux Webサーバに向けて解放中)
    Webサーバ(192.168.11.210):HTTP、HTTPSでサービス稼働中
    WindowsServer(192.168.11.211):リモートデスクトップ ゲートウェイとして構築済

    Windowsサーバーは常時稼働させないため、メインで使用するのはLinuxサーバのままにしておきたいのですが
    このままではWindowsサーバに外から接続する事が出来ません・・・。

    Linuxサーバー側では、下記のように設定する事によってWindowsサーバー側へHTTPSにて転送する事は出来ますが、
    証明書はLinuxサーバーのものが提示され、認証でエラーとなります。

    <VirtualHost *:443>
    ServerName vokke.hoge.jp
    SSLCertificateFile /etc/letsencrypt/live/hoge.jp/fullchain.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/hoge.jp/privkey.pem
    SSLEngine On
    SSLProxyEngine on
    ProxyRequests Off
    ProxyPreserveHost On
    SSLProxyCheckPeerCN Off
    SSLProxyCheckPeerName Off
    <Proxy *>
    Order deny,allow
    Allow from all
    </Proxy>
    ProxyPass / https://192.168.11.211/
    ProxyPassReverse / https://192.168.11.211/
    </VirtualHost>

    【エラー内容】
    「要求されたゲートウェイサーバーアドレスと証明書のサブジェクト名が一致しないため、このコンピュータからリモートコンピュータからリモートコンピュータに接続できません。」

    上記エラーを元に調べ、作成したオレオレ証明書群をpfx形式への変換を行うこととしました。

    openssl genrsa 2048 > ca.key
    openssl req -new -key ca.key -subj "/C=JP/ST=tokyo/L=kanda/O=hogeeeeee/OU=IT dept./CN=hogeeeeeee" > ca.csr
    openssl x509 -days 365 -req -signkey ca.key < ca.csr > ca.crt
    openssl pkcs12 -export -inkey ca.key -in ca.crt > ca.pfx

    こうして出来上がったpfxファイルをRD ゲートウェイマネージャーからインポート使用としたところ、
    「証明書がサーバー認証用ではないため、証明書
     <ファイルのパス> をインポート出来ませんでした。」
    というエラーが出てインポート出来ませんでした。

    Windows ServerやLinuxについて独学で勉強している段階であり、色々言葉足らずでわかりにくいかと思いますが、
    解決策についてご教示頂ければ幸いです。

    こちらでも引き続き解決策を模索しております。
    親展があった際には更新させて頂きますので宜しくお願い致します。

    2017年8月7日 12:23

すべての返信

  • チャブーンです。

    この件ですが、もう解決していると思いますが、回答がつかないのは、事実上OpenSSLの証明書発行コマンドを尋ねているためで、もっと適切なコミュニティに投稿いただければよかったかと思います。

    「要求されたゲートウェイサーバーアドレスと証明書のサブジェクト名が一致しないため、このコンピュータからリモートコンピュータからリモートコンピュータに接続できません。」
    「証明書がサーバー認証用ではないため、証明書 <ファイルのパス> をインポート出来ませんでした。」

    これらのエラーの原因ですが、おそらくOpenSSLのCSRファイルの設定が不正確で、以下の要件を満たしていないためだろうと思います。

    • 証明書のSAN(Subjectではありません)がWindows ServerのFQDNに設定されていること
    • 証明書の使用目的(拡張)が「serverAuth」であること

    OpenSSLのCSRファイルにおけるSANの記述方法や、keyUsageおよびextendedKeyUsageの記述方法について、したのような資料が参考になると思います。

    https://support.citrix.com/article/CTX135602

    サーバー証明書に必要な要件を「正しく把握」いただければ、本来はあまり長引かない問題かと思います。


    フォーラムは有償サポートとは異なる「コミュニティ」です。フォーラムでご質問頂くにあたっての注意点 をご一読のうえ、お楽しみください。


    2017年8月14日 8:52
    モデレータ