Apache(ベーシック認証)でKibanaを保護する パーマリンク to "Apache(ベーシック認証)でKibanaを保護する"

このTipは@raiden0610によって提出されました。

mod_proxyをアクティブにする パーマリンク to "mod_proxyをアクティブにする"

a2enmod proxy
a2enmod proxy_http
a2enmod headers

service apache2 restart

Vitualhost構成 パーマリンク to "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

ユーザー名/パスワードの生成 パーマリンク to "ユーザー名/パスワードの生成"

htpasswd /etc/apache2/.htpasswd your_user

SSLのアクティブ化 パーマリンク to "SSLのアクティブ化"

次のチュートリアルに従います(ディストリビューションを選択できます)。Let’s encrypt - Certbot(訳注:ditros→distros)

Certbotは、ApacheのSSL設定を自動的に処理します。

警告: ファイアウォールでポート5601を閉じることを忘れないでください。そうしないと、ポート5601で基本認証なしでKibanaにアクセスできてしまいます。

これで、https://mydomain.com や http://mydomain.com でKibanaに安全にアクセスできるようになりました。