41

私の Web サーバーでは、ファイルのアクセス許可がいたるところにあるため、すべてを元の状態に「リセット」したいと考えています。ユーザーが入ってきて、私の Web サーバーから何かを削除できるようにしたくありません! PHPページなどを閲覧できるようにしたいだけです。

どの chmod を使用すればよいですか?

4

6 に答える 6

37

まとめてみましたのでまとめます

  • すべてのファイル644にchmod します
  • chmod すべて。htaccessファイルを644に
  • すべてのrobots.txtファイルを644にchmod します
  • すべてのディレクトリ711にchmod します
  • ディレクトリリスト(.htaccessオプション+インデックス)を含むすべてのディレクトリ755にchmodします
  • ユーザーがファイルをアップロードできるすべてのディレクトリを755 (例: /uploads/)にchmod します。

説明:

  • 644は次のことを意味します。
    • 6:ファイル/ディレクトリの所有者は、読み取り書き込みはできますが、実行はできません。ファイルは実行可能ではないため、「x」権限は必要ありません (6 は r+w を意味し、7 は r+w+x を意味します)。
    • 44:ファイル/ディレクトリが属しているグループ ( を使用してグループを表示)ls -lおよび他のすべてのユーザー (パブリック) は、ファイルを読み取ることはできますが、ファイルに対して実行または書き込みを行うことはできません (許可番号 4)。
  • 711は次のことを意味します。
    • 7:ファイル/ディレクトリの所有者は、読み取り書き込み、および実行できます。これはディレクトリに必要です! ディレクトリをリストしようとするときに「実行」しないと、許可が拒否されます。
    • 11:ファイル/ディレクトリが属するグループであり、パブリック実行権限のみを持っています。これは、他の人にコンテンツをブラウズさせたくないが、ディレクトリのさらに下にある選択したファイルへのアクセスを許可したいディレクトリに適しています。
  • 755は次のことを意味します。
    • 7:ファイル/ディレクトリの所有者は、読み取り書き込み、および実行できます。
    • 55:ファイル/ディレクトリが属しているグループとパブリックには、読み取り実行のアクセス許可がありますが、書き込みは許可されていません。これにより、ユーザーはディレクトリ内のファイルを表示し、それらのファイルを読み取ることができますが、変更することはできません。

使用する権限を調べるために使用できるインタラクティブなオンライン計算機もあります: https://chmod-calculator.com/

于 2015-03-11T17:47:53.013 に答える
32

それらは可能な限り制限する必要がありますが、それ以上ではありません。

通常0644は、所有者に読み取りと書き込みの権限を与えますが、それ以外のユーザーには読み取りのみを許可するのが適切な選択です。0755ディレクトリ用。ただし、特定のシステム設定に依存する場合があります。

于 2009-03-29T22:23:01.157 に答える
19

すべてをリセットしたい場合は、このコマンドを実行して結果を整理してください。通常、ファイルには 644、ディレクトリには 711 が適しています。ディレクトリ リストを許可する場合は、755 を使用します。

$ find /var/www/html \( -type f -execdir chmod 644 {} \; \) \
                  -o \( -type d -execdir chmod 711 {} \; \)

より侵略的でないものが必要な場合は、グループと「その他」の書き込みビットを削除してください。

$ chmod -R go-w /var/www/html
于 2009-03-29T22:31:03.230 に答える
6

644ファイルと755ディレクトリの標準だと思います。

于 2009-03-29T22:24:16.380 に答える
1

Web サーバーが Web ページのみを提供し、(匿名 FTP などによる) アクセスを許可しない場合、不適切なファイル許可により、ユーザーはファイルを削除できません。

他の人が他の手段 (SSH など) を介してサーバーにアクセスできる場合は、書き込みビットが自分以外のユーザーに設定されていないことを確認してください。実行する:

find . -exec chmod go-w {} \;

このコマンドは、コマンドが実行されるすべてのファイルとディレクトリのアクセス許可を制限します。

于 2009-03-29T22:27:30.197 に答える
0

どちらのアプローチを使用する場合でも、Web アプリケーションが特定のパーミッションを持つファイルまたはディレクトリに依存している可能性がある場合は、徹底的なテストを行ってください。あまりにも寛容なパーミッションを許可することはおそらく悪い設計ですが、これは時々発生するため、アプリケーションが壊れる可能性があります。

于 2009-03-29T22:39:17.017 に答える