Apache(ベーシック認証)でKibanaを保護する
このTipは@raiden0610によって提出されました。
mod_proxyをアクティブにする
a2enmod proxy
a2enmod proxy_http
a2enmod headers
service apache2 restart
Vitualhost構成
使用しているディストリビューションに応じて、virtualhost 443または80の設定がどこにあるかを確認します。
たとえば、Ubuntu 16.04では、設定は /etc/apache2/sites-availables ディレ クトリの 000-default-le-ssl.conf ファイルにあります。
SSLを使用しない場合は、ファイル000-default.confを参照してください。
ファイルを編集し、virtualhost 443または80のセクションに次のように貼り付けます。
# ポート5601でのKibanaリスニングのプロキシ化
ProxyPreserveHost On
ProxyRequests On
ProxyPass / http://localhost:5601/
ProxyPassReverse / http://localhost:5601/
# ベーシック認証による保護
<Location />
AuthType Basic
AuthName "Restricted Content"
AuthUserFile /etc/apache2/.htpasswd
Require valid-user
</Location>
Apacheの設定を再ロードします。
service apache2 reload
ユーザー名/パスワードの生成
htpasswd /etc/apache2/.htpasswd your_user
SSLのアクティブ化
次のチュートリアルに従います(ディストリビューションを選択できます)。Let's encrypt - Certbot(訳注:ditros→distros)
Certbotは、ApacheのSSL設定を自動的に処理します。
警告
ファイアウォールでポート5601を閉じることを忘れないでください。そうしないと、ポート5601で基本認証なしでKibanaにアクセスできてしまいます。
これで、https://mydomain.com や http://mydomain.com でKibanaに安全にアクセスできるようになりました。