特殊なパーミッション設定

備忘録のため例によって参考リンクの丸写しです

 

特殊なパーミッション設定

では、今日の本題。4 桁めでは、3 種類の基本パーミッション (読み/書き/実行) だけでは設定できない特殊な権限設定を行う事が可能です

setuid 4
setgid 2
sticky bit 1

 

実行ファイルのオーナーが実行したことになる setuid

$ chmod 4755 <file>

 

グループを継承したければ setgid

$ chmod 2775 /var/www/html/contents/

 

 

 

 

 

 

blog.fenrir-inc.com

 

 

こういう使い方を setgid はしたりする。

EC2のAmazon Linux で ec2-user を apache グループに追加し、/var/www ディレクトリに apache グループの所有権を与え、グループに書き込み権限を割り当てる · GitHub

EC2のAmazon Linux で ec2-user を apache グループに追加し、/var/www ディレクトリに apache グループの所有権を与え、グループに書き込み権限を割り当てる

毎回探すのでメモという丸写し

 

#!/bin/sh

# EC2のAmazon Linux で ec2-user を apache グループに追加し、
# /var/www ディレクトリに apache グループの所有権を与え、グループに書き込み権限を割り当てます。
# source http://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/install-LAMP.html

ls -l /var/www

# ユーザー(この場合は ec2-user)を apache グループに追加します。
sudo usermod -a -G apache ec2-user

# /var/www とそのコンテンツのグループ所有権を apache グループに変更します。
sudo chown -R ec2-user:apache /var/www

# /var/www およびそのサブディレクトリのディレクトリ許可を変更してグループの書き込み許可を設定し、将来のサブディレクトリにグループ ID を設定します。
sudo chmod 2775 /var/www
find /var/www -type d -exec sudo chmod 2775 {} \;

# /var/www およびそのサブディレクトリのファイル許可を繰り返し変更してグループの書き込み許可を追加します。
find /var/www -type f -exec sudo chmod 0664 {} \;

 

 

参考

gist.github.com

 

codelab.website

Basic認証で特定のディレクトリのファイルだけ認証を除外したい

結論を言うと、下記です。

対象ファイルがあるディレクトリで .htaccess に記述します。

 

条件

上位のディレクトリでbasic認証が設定済み。

data.json というファイルはbasic認証から除外したい。

 

ファイル

.htaccess

 

記述内容

<FilesMatch "^(data\.json)$">
Satisfy Any
Order allow,deny
Allow from all
Deny from none
</FilesMatch>

 

参考URL

sakidesign.com

 

 

その他参考URL

 

こちらのほうが一箇所に書けるので実際に運用するならこちらのほうが良さそう?(未検証)

scientre.hateblo.jp

こんな感じらしい(未検証・丸ごとコピー)

特定の URL のみ Basic 認証を除外する

## Allow と Require のいずれかの許可があればアクセス可能にする
Satisfy Any

## /images/ で始まる URL へのアクセスを常に許可する
SetEnvIf REQUEST_URI "^/images/" allowed_url
Order deny,allow
Deny from all
Allow from env=allowed_url

## それ以外の URL は Basic 認証を通過すればアクセスできる
AuthUserFile "/path/to/.htpasswd"
AuthGroupFile /dev/null
AuthName "Restricted Files"
AuthType Basic
require valid-user

 

 

 

 

 

 

 

ディレクトリ丸ごと除外するなら下記だけど、あまり使う機会は無さそう。

www.yunosuke.net

MySQLで特定のテーブルをdumpする方法。

MySQLで特定のテーブルをdumpする方法。

 

消えたら困るので丸ごとパクリメモ

 

qiita.com

 

特定のテーブルを指定してdumpするには以下の方法で行えます。

$ mysqldump -u<ユーザー> -p<パスワード> 【データベース】 【テーブル1】 【テーブル2】 ... --master-data --single-transaction > hogehoge.dump

 

 

テーブル名のみをテキストに保存

$ mysql -uroot -phogehoge repltest -N -e "show tables like 'hoge%'" > repltest.txt

 

あとはこのリストをcatコマンドを使いながらdumpすれば完了です。

$ mysqldump -uroot -phogehoge repltest `cat ./repltest.txt` --master-data --single-transaction > repltest.dump

 

【linux】 あるディレクトリの下にいくつファイルがあるか調べる

消えたら困るので技術メモ

下記のページの丸写しコピー!

www.softel.co.jp

 

 

 

 

 

 

 

 

あるディレクトリ直下のファイルの数を調べる

ls -1U | wc -l

 

 

あるディレクトリをサブディレクトリ含めてファイルの数を調べる

ls -1UR | wc -l

 

あるディレクトリ直下にあるディレクトリそれぞれの中のファイルの数を調べる

$ cd 対象のディレクト
$ for x in * ; do echo $x ; ls -1UR $x | wc -l ; done

ワンダビジョンはMCUフェーズ4の幕開け

ファンならタイトル通り

ワンダヴィジョンはMCUフェーズ4の幕開け

であることは知っている。

 

MCUフェーズ4はマルチユニバース(いくつもの並行世界)が始まる。

平行世界が入り組むストーリが始まる。

 

で、ワンダには現実改変能力がある。

ここから始まるんだねー