Help us understand the problem. What is going on with this article?

Squid でbasic 認証設定したら Segmentation fault でコケたときのメモ

More than 3 years have passed since last update.

結論からいうと

htpasswdでパスワードファイル作るときに -d で指定すればok

htpasswd -d {パスワードファイルパス} {ユーザーID}

背景

AWSのElasticsearch service を利用しているのですが、AWSのElasticsearch ServiceはVPCエンドポイントをサポートしていない(インターネット経由でアクセスし放題)ため何かしら対策が必要でした。
kibanaも社内の一部の人に直接利用してもらいたかったので一捻り必要でした。

やろうとしたこと

アプリケーションからはIAM認証を利用することで制御できたのですが、kibanaを利用者に使ってもらうにあたりVPC内にproxyサーバーを構築してelastic IP を割当て、Elasticsearch serviceにそのelastic IPからのアクセス許可を追加して対応しようとしました。
Direct Connectを利用しているため、proxyサーバーまでは社内ネットワークでアクセスできるため、basic認証でもまぁ大丈夫だろうというスタンスです。

どうしてこうなった

ところがいざ設定を仕込んでも認証がうまく行かず、/var/log/messagesログ見ると変なエラーが発生していることに気づきました。

Jun 27 13:38:19 xxxxx kernel: [271377.799662] ncsa_auth[327]: segfault at 0 ip 00007fed15294a9a sp 00007ffe7411ced8 error 4 in libc-2.17.so[7fed15162000+1b7000]

/usr/lib64/squid/ncsa_auth {passwdパス} とかやってncsa_auth を直接実行しても Segmentation fault ってでてました

メッセージでぐぐったら一発ででてきてすっきり解決しました。

http://askubuntu.com/questions/316659/squid3-ncsa-basic-auth-always-fails

htpasswdの標準のハッシュ方式とsquidのハッシュ方式が違うらしいです。
htpasswd実行時に-d フラグ立ててハッシュ方式指定すればOK

ubuntuではないけども、やってることとエラーの内容が同じだったので大変助かりました。

まとめ

squidの設定が間違っていると思い込み、squid.confとの戦いにだいぶ時間を使ってしまいました。おかげでだいぶ squid.conf になれることが出来ましたw
ログは見てるつもりでしたが、/var/log/squid/squid.out だけ見てたせいで認証処理そのものが失敗していることに気づくのが遅れました。 /var/log/messagesも一緒に読みましょう

参考サイト

http://askubuntu.com/questions/316659/squid3-ncsa-basic-auth-always-fails

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした