🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
HTTPS

HTTPS(Hypertext Transfer Protocol Secure)はHypertext Transfer プロトコルとSSL/TLS プロトコルを組み合わせたものです。WebサーバとWebブラウザの間の通信を暗号化させて、通信経路上での盗聴や第三者によるなりすましを防止します。

IIS

IIS(Internet Information Services)はマイクロソフト社によって開発されたwebサーバーです。Windows上で動作します。

SSL

SSL(Secure Sockets Layer)とは、暗号化されたプロトコルで、インターネット上での通信セキュリティを提供しています。

Windows

Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

Q&A

解決済

1回答

3059閲覧

FessをAWSのALB+ACMでSSL化する方法

ryosu-k

総合スコア11

HTTPS

HTTPS(Hypertext Transfer Protocol Secure)はHypertext Transfer プロトコルとSSL/TLS プロトコルを組み合わせたものです。WebサーバとWebブラウザの間の通信を暗号化させて、通信経路上での盗聴や第三者によるなりすましを防止します。

IIS

IIS(Internet Information Services)はマイクロソフト社によって開発されたwebサーバーです。Windows上で動作します。

SSL

SSL(Secure Sockets Layer)とは、暗号化されたプロトコルで、インターネット上での通信セキュリティを提供しています。

Windows

Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

0グッド

0クリップ

投稿2019/12/24 06:12

編集2019/12/24 11:09

AWSにWindows Server2019のEC2を立ててIISの機能を追加し、検索サイトであるFessを導入してローカルのファイルを検索できるサイトを作成しました。

HTTPでのアクセスは出来るようになったので、サブドメインを使ってALB+ACMでHTTPS化しようとしております。
参考サイトに従ってALBの作成、ACMで証明書発行、R53へのレコード追加など一通りの作業を行い、
HTTPSアクセスが出来るようになりました。
ただ、IISで指定したデフォルトサイトのHTMLが閲覧できるのみで、fessのログイン画面を表示させることが出来ません。

git上でのやり取りの中で、SSL化したければwebサーバをリバースプロキシ化することを指示している箇所があったのですが、IISにリバースプロキシ機能を追加するのか?それともALBが既にリバースプロキシとして機能しているのだから
ALB側の設定を変更すべきなのか?と何を変更すべきかよく分からない状態です。

認識違いなどを含めて、アドバイスを頂ければ幸いです。

参考にしたサイト
・【AWS】IISの構築方法とセキュリティ設定【SSLとレスポンスヘッダ】
https://www.leon-tec.co.jp/blog/yoshida/8313/
・[AWS] ApplicationLoadBalancer(ALB)とリスナーの設定方法
https://agohack.com/setup-aws-alb-listner/
・How to enable ssl/https (question) #1162
https://github.com/codelibs/fess/issues/1162

・ALBのリスナー画面
イメージ説明

・ALBのターゲットグループ画面
イメージ説明

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

ちゃんとロードバランサーを経由してログイン画面のポートにリクエストが飛ぶように設定していますでしょうか?
ターゲットグループは何もしないと80番ポートにリクエストを振ります。

それともALBが既にリバースプロキシとして機能している

これはこの認識でよいと思います。

投稿2019/12/24 06:46

yu_1985

総合スコア7588

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ryosu-k

2019/12/24 07:00

yu_1985様、コメントありがとうございます。 AWS管理コンソール上のターゲットにて、登録済みターゲットで必要ポート(80とfess用として8082)をそれぞれ登録し、いずれもステータスがhealthyとなっています。 実際にURLを「https://aaa.bbb.ccc:8082」や「https://aaa.bbb.ccc:80」のどちらで入力してもアクセス自体は出来る(fess検索対象のサイトマップ表示)のですが、HTTPの時は出来ていたはずのfessログイン画面を表示させることが出来ません。 この場合は「ロードバランサーを経由してログイン画面のポートにリクエストが飛ぶように設定」は出来ていると認識して合っておりますでしょうか?
yu_1985

2019/12/24 07:18

いくつか確認したいのですが ・まず、使っているのは確かにALBでしょうか? ・そのaaa.bbb.cccはALBに設定しているドメインでしょうか? そうであれば、ALBで8082番ポートをリスナーに設定しているものの、転送先のターゲットグループでインスタンスの80番ポートにリクエストを飛ばしていないですか? 可能であれば、ロードバランサーのリスナーの設定のところと、設定しているターゲットグループのターゲットの設定のところを追記していただけますでしょうか。 情報をマスクしたスクリーンショット等でもいいと思います。
ryosu-k

2019/12/24 11:10

追記でアドバイス頂き誠にありがとうございます。 ・まず、使っているのは確かにALBでしょうか? →ALBになります。 ・そのaaa.bbb.cccはALBに設定しているドメインでしょうか? →Route53にて登録したドメインで、AレコードのエイリアスとしてALBを設定しています。 スクリーンショットも追加してみましたので、ご覧頂けたら幸いです。
yu_1985

2019/12/24 16:20

リスナーで80と8082ポートを443ポートにリダイレクトしてるように見えるのですが、443ポートのリスナーに設定しているターゲットグループには80番ポートと8082番ポートが混在している状態になっていますでしょうか。 もしそうであれば、80番ポートに飛んだり8082番ポートに飛んだりと分かれてしまうのではないでしょうか。 そもそもアクセスさせたいのはどっちのポートでしょうか。 fessにログインだけできればいいのであれば8082番ポートにだけ飛ばせば良いと思うのですが。
ryosu-k

2019/12/25 03:25

追記でアドバイス頂き誠にありがとうございます。 おっしゃる通り、8082番ポートにだけ飛ばすべく80番ポートの設定を削除したらfessログインが出来るようになりました。とりあえず広げておいた方が可能性上がるのでは?という誤った感覚があったように思います。理解を深めることが出来ました。
yu_1985

2019/12/25 03:36

解決したようで良かったです。 80番ポートはfessが使っているポートではないので、80番ポートにリクエストが振り分けられたら当然fessにはアクセスできないですよね。 質問に対しては話がそれてしまうのですが、そもそもの疑問として ・IISを入れる必要はそもそもないのでは?(fessだけ動いていれば十分では?) ・Windowsサーバをあえて使っている理由はなにか(見た感じAmazon Linux2でJavaが入ってる環境で十分な気がしますが、単に慣れているから、という理由であればすいません) というのがあります。
ryosu-k

2019/12/26 04:57

コメントありがとうございます。 windowsとIISを使っているのは、それぞれ現行のオンプレサーバ環境で使っていたものを踏襲しただけとなります。作り直しても良かったのですが、現行は社内ネットワーク内のみの利用でSSL化もされておらず、そこまで重要性の高くないサーバだったため手っ取り早く現行環境を参考にした次第です。
yu_1985

2019/12/26 07:47

fessの動作環境を見る限りJavaがあれば動きそうなので、恐らくIISは要らないと思われます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問