
オンラインの Ubuntu サーバー チュートリアルの多くは、リバース プロキシの設定方法のみを示しており、SSL Lets Encrypt を使用して設定する方法や、サーバー上の他のドメインと一緒に設定する方法については説明していません。次の設定方法に関する簡潔なチュートリアルはありますか。
- 内部アプリにアクセスするためのApacheリバースプロキシ
- SSLを設定すると、このアプリがhttps経由でアクセスできるように暗号化されます。
答え1
Ubuntu サーバーに Apache がインストールされていると仮定すると、root を使用してプロキシ モジュールをインストールする必要があります。
sudo a2enmod proxy
sudo a2enmod proxy_http
sudo a2enmod proxy_balancer
sudo a2enmod lbmethod_byrequests
インストールしたら、/etc/apache2/sites-available/000-default.conf ファイルを変更して新しいサイトを追加する必要があります。以下の例を使用します。
<VirtualHost *:80>
ServerName xxxx.yyyy.com
ProxyPreserveHost On
ProxyPass / http://127.0.0.1:26876/
ProxyPassReverse / http://127.0.0.1:26876/
<Directory /var/www>
AllowOverride All
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
RewriteEngine on
RewriteCond %{SERVER_NAME} =testardor.xcubicle.com
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>
セットアップが完了したら、次のコマンドを使用して Apache を再起動する必要があります。systemctl apache2 を再起動します
次に、Let's Encrypt を使用して SSL をセットアップします。最初は SSL のセットアップがわかりにくいように思えましたが、非常に簡単でした。次のチュートリアルに従ってください。https://www.digitalocean.com/community/tutorials/how-to-secure-apache-with-let-s-encrypt-on-ubuntu-18-04
それは次のように簡単です:
sudo add-apt-repository ppa:certbot/certbot
sudo apt install python-certbot-apache
sudo certbot --apache
指示に従って設定してください。Apache を再起動することを忘れないでください。
注: すでに Let's Encrypt をセットアップして新しいドメインを追加している場合は、000-default-le-ssl.conf ファイルを削除して、certbot で再度生成するだけです。問題が発生したため、これを実行する必要がありました。