複数人でアップロードを行う場合のアカウント管理
WEBサーバ等へのアップロードを複数人で行う場合のアカウント管理について、
共通アカウントを使わない方が手間はかかりますが、より好ましい姿です。
例として、WEBサーバ(/var/www)へuserAとuserBのみアップロードできるようにしたい場合
1.Linux標準のファイルシステムext3では、1ファイルに複数ユーザの権限を追加できないため、グループを作成しユーザを追加する方法を用います。
# groupadd www # usermod -g www userA # usermod -g www userB
注:ここで-gメイングループを変更したのは、WinSCPなどでアップする場合にサブグループをデフォルト設定とできないためです。ただしscpプロトコルを用いればサブグループにも変更は可能です。
2.wwwグループのユーザがアップロードを行えるようにパーミッションを変更
アップロード先が「/var/www」の場合、既に配置されているファイルのパーミッションを一括して変更する。
# cd /var/www # chown -R root:www . # find -type d |xargs chmod 775 # find -type f |xargs chmod 664
これでサーバ側の準備は完了です。
あとはWinSCPなどでアップ時のパーミッション設定を664か775にすればOKです。
参考:
http://begi.net/modules/linux_basic_knowledge2/index.php?id=4
http://www.tab2.jp/~winscp/protocols.html