
テストサーバーを準備しています。 rootとしてログインして問題を解決してください。
cd /
chmod go-r *
もちろん、私が作成したユーザーの書き込み権限を取り消しました。
mysql、httpd、ftpなどのプロセスに対して作成されたすべてのグループで権限(r / w / x)をキャンセルしましたか、それとも権限を付与しましたか?
どうやって確認しますか?
[アップデート] mysqlとapacheを再起動しました。 mysqldがrootとして実行されていません。ログに書き込み中です。また、どんな点を確認してみるのが良いでしょうか?
答え1
まずchmod go-r
、書き込み権限は削除されませんが、読み取り権限は削除されます。の内容は/
主にディレクトリです。ディレクトリに対する読み取り権限は、それを一覧表示できることを意味します。たとえば、ls /bin
拒否権限が付与されます(ディレクトリ所有者とルートは除外、もちろんこの場合、所有者はルートです)。
これが大タイで意図したものであれば、chmod go-w
書き込み権限を削除したものです。書き込み権限を持つ唯一のディレクトリです。Gグループまたはああはい/tmp
、この問題を解決する必要があります。
-R
ありがたいことに(再帰)が含まれていないchmod
ため、この問題は簡単に解決できます。ls -l /
テストサーバーを同様のサーバーとls -l /
比較するだけです。chmod
権限を元の状態にリセットするために使用されます。
chmodはシンボリックリンクに従いますので、ルートディレクトリにシンボリックリンクがある場合は別々に確認する必要があります。
最後に、あなたはUnix権限モデルを理解していないようです。すべてのファイルとディレクトリに一つユーザー(所有者)と一つグループ。所有者は、ファイル/ディレクトリに対する読み取り、書き込み、および/または実行権限を持つことができます。これがchmod u=...
設定です。グループのすべてのメンバーは同じ権限セットを持つことができます(chmod g=...
)。最後に、他のすべての人(他の人)は同じセット(chmod o=...
)を取得します。
例:
$ ls -l /etc/exim4/passwd.client
-rw-r----- 1 root Debian-exim 204 Oct 15 2006 /etc/exim4/passwd.client
|^^^^^^^^^| |||| ^^^^^^^^^^^
| perms | |||| group
t | owner
acl
t
ファイルの種類:スペースは、一般的なファイル、d
ディレクトリ、l
シンボリックリンク、c
文字デバイス、p
名前付きパイプ、b
ブロックデバイス、およびおそらく忘れてしまったいくつかのことを意味します。
acl
+
このファイルにACLがある場合は、それを使用して表示できますgetfacl
。
私が1
表示していないのはリンクの数です。ファイルへのハードリンクを作成した場合、両方の名前に2が表示されます。別の名前を追加すると、3などが表示されます。
権限フィールドは、所有者(ユーザー)を表す3文字です。 3 文字はグループを表します。所有者(ユーザー)は次のことができます。アル字型エドワ勝つファイルに書きますが実行しません(-
代わりにこれがあるためですx
)。このグループのメンバーはDebian-exim
ファイルを読み取ることができますが、他の権限はありません。 Debian-eximの所有者でもメンバーでもない人は、このファイルに対する権限がありません。
答え2
chmod go-r *
特別なグループにはまったく影響を与えません。これは支配集団と「他人」の権利にのみ影響します。のすべての項目のデフォルトグループは/
でなければなりませんroot
。したがって、ルートはとにかく必要なすべての操作を実行できるため、これはまったく変わりません。
/
他のアカウントは通常そのパスを知っているため、ディレクトリの内容を読み取ることはありません。これらのパスはまだアクセス可能です(権限のためx
)。
作成したグループにまだこれらのディレクトリに対する明示的な読み取り権限があるかどうかは、ACLを使用するかどうかによって異なります。 ACLがある場合、ls -l
出力は次のように発生します。
drwxr-xr-x
到着
drwxr-xr-x+
ACLの内容はで見ることができますgetfacl
。
主な質問は、グループがディレクトリを読み取ることをブロックするのはなぜですか/
?