そうだ!リバースプロキシでホスト名と関連付けて構築しよう!!

提供:sufeeWiki
ナビゲーションに移動 検索に移動

プロキシのドメインを使いリバースプロキシを作る

Apache2Webサーバーを運用している時に遠隔からルータもいじりたいと考える。

しかし、ルータは直接外部から操作させたくないのでProxyを経由することにした!

今回はそれの設定を行なっていくよ!!

見取り図

<img src="0002.jpg" width="50%">

lプロキシを有効化

sudo a2enmod proxy_http ssl proxy

できたら次に
vi /etc/apache2/mods-available/proxy.conf

<IfModule mod_proxy.c>

 

    # If you want to use apache2 as a forward proxy, uncomment the

    # 'ProxyRequests On' line and the <Proxy *> block below.

    # WARNING: Be careful to restrict access inside the <Proxy *> block.

    # Open proxy servers are dangerous both to your network and to the

    # Internet at large.

    #

    # If you only want to use apache2 as a reverse proxy/gateway in

    # front of some web application server, you DON'T need

    # 'ProxyRequests On'.

 

    ProxyRequests Off

    <Proxy *>

       AddDefaultCharset off

       Require all granted

       #Require local

    </Proxy>

    ProxyVia Off

    ProxyPreserveHost On

    # Enable/disable the handling of HTTP/1.1 "Via:" headers.

    # ("Full" adds the server version; "Block" removes all outgoing Via: headers)

    # Set to one of: Off | On | Full | Block

    #ProxyVia Off

 

</IfModule>

ProxyRequestsは必ずoffに(オープンプロキシは危険なため)

この設定は、利用者は誰でも許可

ドメインはプロキシのドメインを使用する

の大まかに2つ

 

lプロキシのドメインと関連付け(ホスト名でも)

sudo vi /etc/apache2/sites-available/000-default-le-ssl.conf

もしくは

sudo vi /etc/apache2/sites-available/Myproxy.conf

開いたら以下を追記します。

(例としてexample.comを使用しています)

<IfModule mod_ssl.c>

    <VirtualHost *:443>

        ServerName [好きな名前のホスト名].example.com

        SSLEngine on

        SSLProxyEngine on

        SSLProxyVerify none 

        SSLProxyCheckPeerName off

        SSLProxyCheckPeerExpire off

        ProxyRequests Off

        ProxyPass / https://[接続先ドメイン]/

        ProxyPassReverse / https://[接続先ドメイン]/

 

        ServerAdmin example@mail.com

 

        ErrorLog ${APACHE_LOG_DIR}/error.log

        CustomLog ${APACHE_LOG_DIR}/access.log combined

 

    </VirtualHost>

 

    </IfModule>

[ ]」の色の場所は自身の情報を入力します。

好きな名前のホスト名は、作者はルータに接続するためにあえてrouter.example.comとします。

[接続先ドメイン]はプロキシを行う際どこに接続するかのドメインを記入します。

作者はルータに接続するためにhttps://192.168.1.1/と書きます

(※SSL証明書などはここに書きません)→HTTPS化をしよう!その2 参照

l最後

sudo a2ensite Myproxy

sudo systemctl restart apache2

再起動して接続できるか確認します。

 

完了です!!