ユーザーごとに異なるmlocateデータベースがありますか?

ユーザーごとに異なるmlocateデータベースがありますか?

これは愚かな質問と見なすことができます。システム内のすべてのファイルとディレクトリには、一般ユーザーがさまざまなファイルを表示するのを防ぐための権限がありますが、追加のセキュリティとコンテキストを入力するには長すぎるため、その場所に移動できます。ユーザーグループが違うのですか?それとも、すべてのユーザーに該当しますか?

目標は、一般ユーザーが存在すら知らないファイルへの知識やアクセスを制限することです。ただし、rootアカウントとsudoアカウントは、まだルートmlocateデータベースを使用してシステム内のすべてを見ることができるはずです。

以前は、mlocateデータベースへの読み取りアクセスを制限していましたが、これは現在のシステムのオプションではありません。複数のインストールに対してスレッド移行を実行する方法がある場合は、2つだけが必要であり、容量の制限もありません。注意してください。ありがとう、

ベストアンサー1

mlocateデフォルトでは、ユーザーがアクセスできるファイルのみが表示されます。少なくとも私のバージョンのCentOS 7では:

たとえば、

% rpm -qf /usr/bin/locate
mlocate-0.26-8.el7.x86_64

% locate /root/.ssh

% sudo locate /root/.ssh
/root/.ssh
/root/.ssh/authorized_keys
/root/.ssh/known_hosts

これはsetgidのために機能し、locateデータファイルはそのグループにロックされます。

% ls -l /usr/bin/locate              
-rwx--s--x 1 root slocate 40520 Apr 10  2018 /usr/bin/locate

% sudo ls -al /var/lib/mlocate
total 142820
drwxr-x---  2 root slocate      4096 Feb 23 03:38 .
drwxr-xr-x 45 root root         4096 Dec  6  2018 ..
-rw-r-----  1 root slocate 146233302 Feb 23 03:38 mlocate.db

実際、通常のユーザーはデータベースファイルでさえ見つかりません:-)

% locate '/var/*mlocate*'       
/var/lib/mlocate

% sudo locate '/var/*mlocate*'
/var/lib/mlocate
/var/lib/mlocate/mlocate.db
/var/lib/mlocate/mlocate.db.khYLWG

setgid オプションは FreeBSD でも機能します。

おすすめ記事