apacheでリバースプロキシの設定

名称 意味

フォワードプロキシサーバ  セキュリティ観点やGLOBAL IPが割り振られていないなどの観点から直接インターネットに接続できないクライアントPCからの接続リクエストをクライアントPCに代わって社外のWebサーバに送信する代行サーバをプロキシサーバという。また、リバースプロキシに対してフォワードプロキシという。
リバースプロキシ(リバプロ)サーバ  上記と逆で、社外からのクライアントの要求を自社内Webサーバの代わりに応答するのがリバースプロキシサーバという。

 

1.mod_proxyモジュールが有効になっていることを確認。下記のようにProxy_moduleを筆頭にproxy_XXXが入っていることを確認。
#httpd -M

proxy_module (shared)
proxy_balancer_module (shared)
proxy_ftp_module (shared)
proxy_http_module (shared)
proxy_ajp_module (shared)
proxy_connect_module (shared)

2.httpd.confにてディレクティブのセット

ProxyPassディレクティブと、ProxyPassReverseディレクティブの違い
↓下記サイトに解説あり。

mod_proxy再入門 – ProxyPassとProxyPassReverse

ProxyPassReverseはリバプロの背後にいるバックエンドサーバが、クライアントにHTTPステータスコード300番台で、リダイレクト先のURLを指定して
返した場合に有効に機能する。

[Redhat Enterprise Linux] ApacheでSSLを有効化させる

前提作業:

1 opensslがインストールされていることを確認
※openSSLパッケージを利用してSSL機能を実現する

heartbleedによる脆弱性が指摘されたので、最新バージョンのopenSSLにする。 #openSSL -versionでバージョン確認可能。
heartbleed対象となるopenSSLバージョン:(1.0.1 から 1.0.1f)
Redhat linuxでの対応方法は以下に記載されている

参考:OpenSSL の CVE-2014-0160 (Heartbleed バグ) と Red Hat Enterprise Linux
https://access.redhat.com/ja/node/785993

2 mod_sslを設定。ApacheとopenSSLを連携させるために必要
下記コマンドでインストされているか確認
# rpm -qa|grep mod_ssl

インストされていない場合は、YUMでインストール
#yum install mod_ssl

redhat networkに登録していなくとも、OSインストールに使ったDVDにmod_sslは入っているのでgoogle検索で YUM DVD  あたりをキーワードにisoファイル内のパッケージをリポジトリとしてYUMでインストールする方法を実行する。
3 httpdを再起動する
# service httpd restart

netstatで443番ポートで立ち上がっていることを確認
# netstat -tnlp | grep 443
tcp 0 0 :::443 :::* LISTEN 2992/httpd

Webブラウザでhttps://localhostにアクセスすると、この時点ではオレオレ証明書なので、ブラウザ上に警告がでるが、ApacheのTESTページが表示される