Basic認証 .htpasswdの書き方で、同じIDで複数パスワードはもてない!?

とても簡単でお手軽のログイン認証のBasic認証ですが、
.htpasswdファイルに下記のように書いても上のユーザーのパスワードでしかログインができないようです。

user:fHidjIEJQji
user:ehaiJheij3

特にユーザーを変更しても問題ない方はID名を変えればもんだいないのですが、
事情で変えられない場合は独自に認証モジュールを用意したよさそうです。

また別の話になりますが、Basic認証のセキュリティーでは心配だが、手間はあまり手間はかけたくないという方は、

ダイジェスト認証がおすすめです。↓参考URL

http://www.atmarkit.co.jp/flinux/rensai/linuxtips/699apachedigest.html

SSL証明書作成メモメモ

1:key作成
openssl genrsa -des3 -out openssltestdesuyo.jp.pass.key 2048
パスワードを入力する2。でパスワードを解除しておく

※keyを生成するopenssl のversionも確認しておくとよし!

openssl[Enter]

>version
2:keyのパスワードなしに設定(1。で設定したパスワードを入力)
openssl rsa -in openssltestdesuyo.jp.pass.key -out openssltestdesuyo.jp.key
3:csr作成
openssl req -new -key openssltestdesuyo.jp.key -out openssltestdesuyo.jp.csr
Country Name (2 letter code) [AU]:  ←適宜入力
State or Province Name (full name) [Some-State]:←適宜入力
Locality Name (eg, city) []:←適宜入力
Organization Name (eg, company) [Internet Widgits Pty Ltd]:←適宜入力
Organizational Unit Name (eg, section) []:←適宜入力
Common Name (eg, YOUR name) []: ←適宜入力(重要)
Email Address []: ←適宜入力

Please enter the following ‘extra’ attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:

入力は証明書にあわせて変更

※csrの中身の確認がしたい場合は、、

例:

openssl req -in openssltestdesuyo.csr -text

作成された、中間証明書局(○○サインなど)にはcsrをわたして、caファイルをだしてもらう。

apache or ssl アクセレーターにはkeyとcsrとcaファイルをセットする。

keyとcsrは新しく作る必要はない、作る必要があるのは証明書の情報住所とかが変更になったときなど、、
keyファイルを変えたいと思ったときにも新しく作るひつようはあります。

と、作り方を教えていただいたのでメモ。。

1。key作成
openssl genrsa -des3 -out www.ecmax.jp.pass.key 2048
パスワードを入力する2。でパスワードを解除しておく
2。keyのパスワードなしに設定(1。で設定したパスワードを入力)
openssl rsa -in www.ecmax.jp.pass.key -out www.ecmax.jp.key
3。csr作成
openssl req -new -key www.ecmax.jp.key -out www.ecmax.jp.csr
Country Name (2 letter code) [AU]:JP
State or Province Name (full name) [Some-State]:Tokyo
Locality Name (eg, city) []:Shinjuku-ku
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Septeni CrossGate Co.,Ltd.
Organizational Unit Name (eg, section) []:System
Common Name (eg, YOUR name) []:www.ecmax.jp
Email Address []:

Please enter the following ‘extra’ attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:

入力は証明書にあわせて変更

作成された、中間証明書局(グローバルサインなど)にはcsrをわたして、caファイルをだしてもらう。

apache or ssl アクセレーターにはkeyとcsrとcaファイルをセットする。

keyとcsrは新しく作る必要はない、作る必要があるのは証明書の情報住所とかが変更になったときのみ。
keyファイルを変えたいと思ったときにも新しく作るひつようはあります。

apacheモジュール活用!

Apacheの稼働状況の表示
●mod_status

/etc/httpd/conf/httpd.conf の一部
#<Location /server-status>
#  SetHandler server-status
#  Order deny,allow
#  Deny from all
#  Allow from .example.com
#</Location>

↓ 下記のように変更
<Location /server-status>
SetHandler server-status
Order deny,allow
Deny from all
Allow from all
</Location>

とし、Apacheを再起動で設定を反映し、
http://192.168.1.30/server-status と「server-status」をURLに追加すると、
Web上で、稼働状況が確認できる。

見方としては、画面中央の
___W__………………………………………
…………………………………………………
…………………………………………………
部分で、
「_」が待機中のプロセスで
W R K などは処理のプロセスを表しています。

さらにプロセスの詳細を知りたい場合は、同ファイルないの
ExtendedStatusディレクティブの「#」ををはずして有効し、Apacheを再起動すれば、
詳細な情報が確認できます。
#ExtendedStatus On

ExtendedStatus On

コンテンツ圧縮
●mod_deflate

httpd.conf内の
SetOutputFilter DEFLATE
DeflateCompressionLevel 3

でクライアントに送信するコンテンツを圧縮できます。
ですが、圧縮レベルが高いほど、CPUへの負荷はあがります。
レベルは1~9まで

URLの書き換え
●mod_rewrite
クライアントから要求されたURLを書き換える。
例でいうと、メンテナンスを告知するページへ誘導したい場合に、
httpd.confを
RewriteEngine on
RewriteRule ^.*$ /sorry.html [L]
とすると。
ドメイン上のすべてのアクセスに対して、
「/sorry.html」を表示するようするといった使い方ができます。

プロキシの利用
●mod_proxy
クライアントからのWebアクセスの要求をうけ、クライアントの代わりに目的のWebサーバーへアクセスするサーバーです(Web以外の通信も可能)。
プロキシサーバーには、
クライアントが任意に指定するサーバーに代理で接続する = フォワードプロキシと、
特定のサーバーにアクセスする場合に中継を行う      = リバースプロキシの2つがある。

フォワードをプロキシを利用する例
#<IfModule mod_proxy.c>
#ProxyRequests On

#<Proxy *>
#  Order deny,allow
#  Deny from all
#  Allow from .example.com
#</Proxy>

#ProxyVia On

#</IfModule>

<IfModule mod_proxy.c>
ProxyRequests On

<Proxy *>
Order deny,allow
Deny from all
Allow from all
</Proxy>

ProxyVia On

</IfModule>

とし、Apacheを再起動し、あとは、クライアントのブラウザの設定でApacheをプロキシサーバーに指定すれば完了。社内LANなどからインターネットへのアクセスを一本化したい場合に利用できます。

また、mod_proxyとともにmod_cacheなどを利用することでキャッシュサーバーとして利用することも可能です。

●Basic認証

下記内容をhttpd.confに追記
<Directory /var/www/html/CentOS>
AuthName “Secret Page”
AuthType Basic
AuthUserFile /var/www/html/CentOS/.htpasswd
require valid-user
</Directory>

上記設定がおわったら、
# htpasswd -c /var/www/html/CentOS/.htpasswd user1
し、パスワードを作成し、
Apacheを再起動すれば、対象のURLへアクセスすると認証がかかります。

ファイルサーバーの利用
●mod_dav, mod_dav_fs
こちらは簡単なApacheを利用したファイルサーバーを紹介します。

下記でファイルサーバー用ディレクトリ作成し、
パーミッションを設定します。
#mkdir /var/www/html/webdav
#chown apache.apache /var/www/html/webdav

次にhttpd.conf
Alias /webdav “/var/www/html/webdav”
<Location /webdav>
DAV on
</Location>
と記述し、apacheを再起動したあと、
WindowsXPの場合だと、ネットワークプレースの追加で、
http://192.168.1.30/webdavなどとすれば、
webdavというディレクトリが開かれる。