身内のちょっとしたサイトやサービス作成,一時的な非公開のファイル.
こういったものを/var/www/などの公開ディレクトリにアップしたはいいけれど,きちんとした認証は面倒なのでさくっとBASIC認証で済ませたいと思うことがあったので,スクリプトをメモしておいた.
以下のファイルをhoge.shとして作成し,実行(sh hoge.sh)とすれば実行したフォルダ内にBASIC認証のための.htaccessと.htpasswdが生成される.
ユーザ名とパスワードは対話的に入力.
最後にchmodでパーミッション変更するためにroot権限が必要.
gistにアップされているファイルをwgetしても良い.URL⇒basicCreate.sh
basicCreate.sh
#!/bin/sh
echo "Create .htaccess and .htpasswd for basic auth"
BASE_PATH=`pwd`
cat <<EOF > .htaccess
AuthUserfile $BASE_PATH/.htpasswd
AuthGroupfile /dev/null
AuthName "Please enter your ID and password"
AuthType Basic
require valid-user
EOF
echo -n "New ID:"
read USER_ID
htpasswd -c $BASE_PATH/.htpasswd $USER_ID
echo "change chmod 604.htaccess and .htpasswd"
sudo chmod 604 .htpasswd .htaccess