Twitterで「丸見えじゃん」みたいな話題があったので確認しておいた。ACLとかxattrとか必要ない。
Linux的なものをインストールすると、普通はこんな感じだと思う。
# ls -ld /home/ drwxr-xr-x 3 root root 33 Mar 22 2017 /home/
これだと/home下にある各ユーザのホームディレクトリが一覧できることになり、どんなユーザが存在しているか丸わかりである。
別にいいってケースも多いだろうけど、たまに見せたくない状況もあるでしょう。そういう場合はこうすればいいです。
# chmod 711 /home/
そうするとこうなる。
# ls -ld /home/ drwx--x--x 3 root root 33 Mar 22 2017 /home/
rootユーザ以外の読み取り権限を外すわけですね。
ディレクトリの読み取り権限とは、まさにディレクトリの一覧取得なので、それを外すと一覧を取得できなくなります。一方で実行権限が残っているため、そのディレクトリへ移動することはできます。上記を設定して一般ユーザから色々してみます。
$ ls /home/ ls: ディレクトリ '/home/' を開くことが出来ません: 許可がありません $ cd /home $ ls ls: ディレクトリ '.' を開くことが出来ません: 許可がありません
もちろんですが、/home下にあるユーザ自身のディレクトリへは移動できますし、一覧を取得することもできます。
一点、不都合があるとしたら、そのディレクトリでtab補完が効かないってことですかね。まー、/homeはそんなに必要ないよね。
そんな感じです。