他のユーザーがホームフォルダー内のファイルを見ることができるのはなぜですか?


回答:


32

他のユーザーとファイルを共有するためのPublicフォルダーがホームディレクトリ(/home/user)に存在します。他のユーザーがこのPublicフォルダーへのアクセスを取得する場合は、ホームディレクトリでワールドの実行ビットを設定する必要があります。

他の人があなたのホームフォルダにアクセスすることを許可する必要がない場合(他の人間やwww-dataWebサーバーのようなユーザー)、大丈夫ですchmod o-rwx "$HOME"(「その他」から読み取り/書き込み/実行を削除chmod 750 "$HOME"します。 )。それ以外の場合は、umask設定を変更して、新しく作成されたファイルがデフォルトでワールドの読み取り権限を取得しないようにする必要があります。

システム全体の構成では、編集し/etc/profileます。ユーザーごとの設定はで構成できます~/.profile。すべてのユーザーに同じポリシーを使用するため、/etc/profileファイルを編集して次の行を追加します。

umask 027

シェルを使用している場合を除き、これらの変更を適用するには再ログインする必要があります。その場合、umask 027シェルで実行できます。

ここで、既存のアクセス許可を修正するには、他のアクセス許可から読み取り/書き込み/実行のアクセス許可を削除する必要があります。

chmod -R o-rwx ~

~/Publicフォルダーを全員と共有することにした場合、次のコマンドを実行します。

  • chmod o+x ~-全員がディレクトリ内を下ることを許可します(x)が、ディレクトリ一覧を取得しrません(追加しないでください)
  • find ~/Public -type f -exec chmod o+r {} \; -誰でもファイルを読むことができる ~/Public
  • find ~/Public -type d -exec chmod o+rx {} \; -全員がディレクトリに降りて、そのコンテンツをリストできるようにする

あなたは、使用のGNU coreutilsの(例えばUbuntuの上だけでなく、持つ組み込みシステム上であればbusybox)、その後、前の二つのコマンド使用findしてchmod再帰的にフォルダを作成し、読み込み可能なファイル(およびさらに(下降)を実行加えることを、この単一のコマンドで置き換えることができますディレクトリのみのビット):

chmod -R o+rX ~/Public

13

Ubuntuforms.orgのスタッフメンバーによると、新しいユーザー間でファイルを共有しやすくするためです。

他のユーザーがファイルを読み取りおよび実行できないようにする場合は、アクセス許可を700または750に変更できます。

コマンドは次のとおりです。

chmod 750 $HOME

注:Ubuntuのデフォルトは755です


2
もちろん、他のユーザーはsudoersであってはなりません
パブロA

7

マーク・シャトルワースよると

「Ubuntuシステムのユーザーの大半は、マシンを独占的に使用している(パーソナルラップトップ)か、友人や親relativeと共有しています。マシンを共有する人々は信頼されているか、マシンをハッキングする立場にある(ブートUSBから!)些細なことです。その結果、ほとんど利益がありません。

...これらの権限を削除することから。


12
サーバーエディションで同じ動作をすることはセキュリティホールだと思う
-warvariuc

4
それはクレイジーな説明です。ユーザーアカウント以外にも、ユーザーがアプリケーションを分離するために使用できる技術的なアカウントがあります。さらに、マシン上のアカウントを本質的に共有するローカルftpサーバーをセットアップする方法に関する多くの指示があります。
バラフアルビノ

4
私はこれが古いスレッドであることを知っていますが、これは愚かな決定だと考えています。ユーザーの1人がapp / script(意図せずに実行される可能性があります)を実行し、他のプロファイルからファイルを読み書きできると想像してください。
mauron85


1

Lekensteynの答えは、最後の2つのfindコマンドを-Xオプションを使用してchmodに置き換えることで改善できると思います(大文字のXに注意してください)。2つのfindコマンドは次のように置き換えることができます

chmod -R o+rX ~/Public

これにより、ファイルとディレクトリが適切に区別されますが、他のユーザーが実行可能ファイルを実行できるという追加の効果があります。


0

関心があるのはプライバシーであるため(適用されたタグから判断して)、許可の設定が不十分である可能性が非常に高くなります(ignisの回答を参照)。答えは、暗号化されたホームディレクトリの行に沿ったものかもしれません。このソリューションは、コンピューターの別のユーザーによる攻撃に対して特別に設計されています。もちろん、別のユーザーがファイルを破損するのを防ぐことはできません(単に~/.Privateディレクトリを削除して、すべてのファイルを消去します)が、パスワードなしでディレクトリをマウントしてファイルを表示することはできません。

これを実現する最も簡単な方法は、インストールプロセス中です。「ホームディレクトリを暗号化する」というチェックボックスがあり、それを選択する必要があります。

そのためだけに再インストールする可能性は低いため(また、再インストールせずにそれを行うことに伴うすべてのリスクを抱えているため)、次のことができます。

sudo apt-get install encryptfs-utils
encryptfs-migrate-home

-1

高度なセキュリティが本当に必要な場合:再インストールして、ディスク全体を暗号化するオプションを選択してください。これには、マシンを起動するためのパスフレーズも必要です。もちろん、これに加えてホームフォルダーをもう一度暗号化することもできますが、パフォーマンスが多少低下します。通常の使用では目立ちませんが。

ホームフォルダーを暗号化すると、Dropboxなどのアプリケーションが無効になることに注意してください。とにかくDropboxはプライバシーを尊重する安全なストレージではないので、それは些細な点かもしれません。ただし、クラウドに安全でプライベートなストレージが必要な場合は、データにアクセスするためのキーを持っているのはあなただけなので、MEGAsyncを個人的にお勧めします。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.