Linuxファイル権限の問合せ

Linuxファイル権限の問合せ

abcd.phpユーザー/プログラムでファイルを実行/実行できますが、ユーザーがSFTPまたはFTPを使用してファイルを削除またはダウンロードできないようにファイル権限を設定したいと思います。

たくさん検索しようとしましたが、完璧な答えが得られませんでした。

ベストアンサー1

(注:少し似ているようです。XYの問題。そのような権限を設定した実際の問題を説明したい場合がありますabcd.php。 )

あなたの要求が何を意味するのか見てみましょう。

  • ユーザーはファイルを実行/実行できます。:PHPファイルの場合、これはファイルが次のようになることを意味します。読めるユーザーとして実行されるプログラムの場合は、次のものを使用できます。実装する少し追加しました。これは通常の現象であり、簡単に実行できます。
  • ユーザーは削除できません。: これは、ファイルが次の場所にあることを意味します。ユーザーが書き込めないディレクトリにあり、ユーザーが書き込むことができる親ディレクトリはありません。。これは、本質的に、ファイルがユーザーに完全に読み取り専用の場所にあることを意味します。 (ユーザーがファイルを削除することを許可しない場合、ユーザーはファイルの内容を変更することも許可されません。)
  • ユーザーはファイルをダウンロードできません。:残念ながら、これは最初の要件と矛盾します。 Linuxファイル権限がファイルを読み取ることができるように指定した場合、ファイルはどんな目的でも読める:ファイル権限を使用してファイルを「実行できますがダウンロードできません」と指定することはできません。この制限を適用するには、別の方法を使用する必要があります。

ファイルはWebページで使用されることが多いため、*.phpこの種の問題は通常、Webサーバーを別々のユーザーアカウントで実行し、SFTP / FTPアクセスを完全に無効にすることで解決できます。Webサーバーの構成実際のPHPファイル自体は出力されず、PHPファイルを実行した結果のみ出力されます。

ローカルユーザーがPHPファイルを実行する必要がある場合は、curl http://localhost/some/path/abcd.phpユーザーにabcd.phpファイルシステムレベルでファイルに直接アクセスすることなく、同様のコマンドを実行し、Webサーバープロセスでファイルを実行させることができます。

ローカルスクリプトツールとしてPHPを使用している場合は、Webサーバーを使用せずにsudoFelixJNの回答に記載されているように

おすすめ記事