Apache自体をいじれないレンタルサーバーは設定が面倒くさいです。Root権限はお値段高いので仕方ありませんが、それでも尚Basic認証の設定は各ユーザーレベルで設定が可能になっています。(試しにDigest認証のコマンドを叩いてみたら、そんなコマンドありませんと言われたのでたぶんサポートしていないのだと思います。)
Basic認証の設定方法はサポートページにかかれていますが、もうちょっとわかりやすく解説。
SSHが使用できることが前提になっていますのでご注意。これが使えないとサーバー操作がいろいろと不便なのでサーバー契約&初期設定時にSSHを導入しておくことをおすすめします。
2. 一応場所を確認。
4. パスワードファイルを作成する場所は、www(公開ディレクトリ)より上位に作ってください。一応隠しファイルにはなっていますが、公開しない方が無難だと思います。またファイルをいろいろ作ってゆくと煩雑になるので、それ専用のディレクトリを作成しておくとよいと思います。ここではsystemというディレクトリを作成しました。
これで設定完了。認証機能をかけたディレクトリにURLアクセスしてユーザー名パスワードを入力して入室します。
Basic認証の設定方法はサポートページにかかれていますが、もうちょっとわかりやすく解説。
SSHが使用できることが前提になっていますのでご注意。これが使えないとサーバー操作がいろいろと不便なのでサーバー契約&初期設定時にSSHを導入しておくことをおすすめします。
パスワードファイルの作成
1. SSH接続でログイン$ ssh -p 22 <ユーザー名>@<初期ドメイン>で接続可能です。パスワードはサーバー設定時のものです。Sakuraはデフォルトのポート22を使っているようです。認証が終わったら大抵は自分のルートディレクトリに入っているかと思います。
(例)$ ssh -p 22 user@user.sakura.ne.jp
2. 一応場所を確認。
%pwd3.ディレクトリ内も一応確認
/home/user
%ls
MailBox namazu-template webdav
db sblo_files www
4. パスワードファイルを作成する場所は、www(公開ディレクトリ)より上位に作ってください。一応隠しファイルにはなっていますが、公開しない方が無難だと思います。またファイルをいろいろ作ってゆくと煩雑になるので、それ専用のディレクトリを作成しておくとよいと思います。ここではsystemというディレクトリを作成しました。
%mkdir system5. 新しく作成したディレクトリに移動してから作業開始
%ls
MailBox namazu-template system www
db sblo_files webdav
%cd system/6. パスワードファイルを作成します。htpasswdはパスワードファイルを作成するコマンドです。初めて作成する場合は、オプションの-cが必要です。二回目以降は-cは必要ありません。パスワードファイルのファイル名は何でもいいのですが、ここれは.basic_passwdとしました。公開ディレクトリじゃない場所でも一応隠しファイルで作成します。ユーザー名はuser1としておきます。
%<htpasswdコマンド> <オプション-c> <パスワードファイル名> <ユーザー名>
%htpasswd -c .basic_passwd user1コマンドを実行するとパスワードを聞かれるので2回パスワードを打って完了です。これで初期ユーザーの設定が完了します。
New password:
Re-type new password:
Adding password for user user1
Basic認証の作成
1. 認証機能を利用したいディレクトリに移動します。そのディレクトリ直下に.htaccessファイルを作成するとBasic認証が機能するようになります。.htaccessファイルには以下のように書きます。AuthUserFile /home/user/system/.basic_passwd確かなことはちゃんと試していないのですが、最初にhtaccess.txtというファイルを作成してから上記を書き込み、保存してから、.htaccessにファイル名変更しないとダメかもしれません。コマンド通の人はご自由に。
AuthGroupFile /dev/null
AuthName "Password input here !"
AuthType Basic
require valid-user
AuthUserFile /home/user/system/.basic_passwd
パスワードファイルを作成したディレクトリを絶対パスで指定します。つまり複数のディレクトリの認証機能をこのパスワードファイルから呼び出すことができるというわけです。これは結構便利。
AuthGroupFile /dev/null
/dev/nullという特殊なディバイスを指定してやります。このファイルは、ゴミ箱に似たファイルで、どこかのファイルを指定してやらないとダメなんだけど特にどこを指定する必要もない時はこの特殊なファイルパスを指定してやることがままあるんです。
AuthName "Password input here !"
ここは適当に。認証ダイアログが現れたときに表示するメッセージです。
AuthType Basic
当然Basicを指定します。前述のようにDigestはサポートしていないようなので。
require valid-user
パスワードファイルユーザーを認証の対象にする時は、valid-userと書きます。特定のユーザーのみ指定する際はコンマで区切ってそのユーザーを複数書いても大丈夫です。
これで設定完了。認証機能をかけたディレクトリにURLアクセスしてユーザー名パスワードを入力して入室します。
ユーザーの追加、パスワードの変更、ユーザーの削除など
先ほどのhtpasswdという便利なコマンドを利用していろいろできます。ユーザーの追加
%htpasswd <パスワードファイル> <ユーザー名>またパスワードを2回聞かれますので、それを入力して追加完了です。
(例)%htpasswd .basic_passwd user2
%htpasswd .basic_passwd user2
New password:
Re-type new password:
Adding password for user user2
パスワードの変更
%htpasswd <パスワードファイル> <ユーザー名>
(例)%htpasswd .basic_passwd user2
%htpasswd .basic_passwd user2またパスワードを2回聞かれますので、それを入力してパスワードの変更です。既存のユーザーを追加でもって上書きする感じです。
New password:
Re-type new password:
Updating password for user user2
ユーザーの削除
ユーザーの削除はそれ専用のコマンドがあるんだかないんだかわかりませんが、ファイルの行を削除してしまうのが早いです。Sakuraだとviが使えるのでそれで編集します。viエディタの使い方は面倒なので割愛。(しかしSakuraはvimも入っていないんですかね。今度要望をメールしてみようと思います。vimの方が圧倒的に使いやすいし。)%vi .basic_passwdという風にして削除したいユーザーの行を削除して保存します。
user1:A8s.UxlZIQ5xI
user2:oZB7m25ov4TMo



