www-dataとmyuserの両方を編集できるファイルを作成します。

www-dataとmyuserの両方を編集できるファイルを作成します。

請求書を保存するディレクトリがあります。

drwxrwxr-x  2 me www-data   49152 Sep  9 13:38 invoices

このディレクトリにファイルを書き込む2つのアプリケーションがあります。

  1. PHP Webアプリケーション

    -rw-r--r-- 1 www-data www-data 7681 9月9日 13:38 Invoice_1.html

  2. Pythonスクリプト

    -rw-rw-r-- 1 我我8911 9月4日 06:04 Invoice_2.html

これで、Webアプリケーションでinvoice_2.htmlをオーバーライドしたいと思います。どうすればいいですか?

www-data私はグループに参加したくありませんme方法はわかりませんが、これによりサーバーがセキュリティ上の脅威に対して脆弱になります。

助ける。

ありがとうございます。

ベストアンサー1

2つのオプション(両方を押すroot):

最初

meこのグループのメンバーになってうれしいならwww-data

グループmeにユーザーを追加する:www-data

# usermod -a -G www-data me

設定GID設定ディレクトリのロゴinvoices:

# chmod g+s /<path>/<to>/invoices

SetGIDビットが設定されているため、ディレクトリに作成されたすべてのファイルのinvoicesグループはwww-data(ディレクトリのグループ)に設定されます。ユーザーはmeこのグループに属するため、ファイルに書き込む権限があります。

第二

meユーザーがグループのメンバーになることを望まない場合www-data...

新しいグループの作成 - invoices

# groupadd invoices

ユーザーmewww-dataグループに追加します。

# usermod -a -G invoices me
# usermod -a -G invoices www-data

ディレクトリグループをinvoicesこの新しいグループ(invoices)に変更します。

# chown .invoices /<path>/<to>/invoices

グループにinvoicesディレクトリへの書き込み権限があることを確認してください。

# chmod g+w /<path>/<to>/invoices

設定GID設定ディレクトリのロゴinvoices:

# chmod g+s /<path>/<to>/invoices

ディレクトリはinvoicesそのグループの所有になり、ディレクトリにSetGIDビットが設定されているため、ディレクトリにinvoice作成されたすべてのファイルのグループ所有権はそのグループに設定されます。どちらinvoicesも書き込み権限を持つグループのメンバーであるため、書き込み権限があります。mewww-datainvoices

おすすめ記事