umask 077の欠点?


14

077の制限umaskを使用することの短所は何ですか?多くのディストリビューション(Red Hat以外のすべてのものを信じますか?)のデフォルトのumaskは022で、/ etc / profileで構成されています。これは、複数のユーザーがアクセスしているデスクトップ以外のシステムにとってはあまりにも安全ではないと思われ、セキュリティが懸念されます。

関連する注意事項として、Ubuntuでは、ユーザーのホームディレクトリも755の権限で作成されます。インストーラーは、ユーザーがファイルを共有しやすくするためであると述べています。ユーザーがファイルを共有するために手作業で許可を設定しても問題ないと思われる場合、これは問題ではありません。

他にどんな欠点がありますか?


許可はタグの「umask」よりも似ているようです...
imo

質問には最大5つのタグを使用できますが、なぜそれについて戦うのですか?:) umaskタグを追加しました。
ウォーレンヤング

@warren。すべての固有名詞にタグが必要だとは思わないからです。UNIXでパーミッションを話すときは、umaskを含める必要があります。
xenoterracide

回答:


15

022は物事を便利にします。077は物事の利便性を低下させますが、状況と使用プロファイルによっては、を使用するよりも不便ではないかもしれませんsudo

のようsudoに、これから得られる実際の測定可能なセキュリティ上の利点は、自分やユーザーに与える痛みのレベルと比較して無視できると主張します。コンサルタントとして、私は自分の意見を軽cornし、sudo多くのsudoセットアップを壊すことに挑戦してきましたが、そうするのに15秒以上かかることはありません。あなたの電話。

知ることumaskは良いことですが、それは「完全な朝食」の中のただのコーンフレークです。たぶん、あなたは「デフォルトの設定をいじる前に、その一貫性をインストール全体で維持する必要があり、文書化され、薄暗い知恵のない人に正当化される必要があります」私?」

Umaskはbashビルトインでもあり、個々のユーザーがシェル初期化ファイル(~/.bash*)で設定できるため、実際にumask。これは単なるデフォルトです。言い換えれば、それはあなたをあまり買いません。


2

最も明らかな欠点は、共有ディレクトリにファイル/ディレクトリの作成を開始し、他のユーザーがそれらにアクセスすることを期待する場合です。

もちろん、すべてのユーザーが共有する必要があるものを実行する前に、正しいumaskを設定することを忘れないでください。

もう1つの注意点(気づいたら、実際にはマイナス面ではありません)は、ローカルプログラム、Ruby gem、Python卵(OS管理パッケージではない)のインストール、構成ファイルの作成など、sudoのことを始めるときです。

umaskがsudoセッションに継承されると問題が発生するため、作成したファイル/ディレクトリにアクセスできるのはrootのみになります。sudoは、umaskを自動的に設定するように設定できますこの質問は、superuser.comで説明されています


そして、後者の理由は、su -rootが異なるumaskを持っていることを確認する正当な理由です...しかし、ああ... ubuntuはrootを信じていません
...-xenoterracide

1
@xenoterracide:正常に sudo su -動作します。Ubuntuは、MacOSXのように、ただログインできるルートを信じていません。個人的には、ほとんどの場合、ルートコマンドに対して「Simon Says」のようなものを言う必要があります。
デビッドソーンリー

@xenoterracideえ?あなたのポイントは何ですか?sudoとsuの両方は、異なるumaskを持つルートを許可します。@David sudo suの代わりにsudo -iを使用できます
zarkdav

1
@xenoterracide:実際にrootコマンドを使用すると、間違ったウィンドウに何かを入力する可能性が高くなります。「sudo」を使用すると、これをrootで実行するように指定する必要があります。ルートアカウントがあることを完全に知っているので、セキュリティの誤った感覚がどこから来るのかわかりません。それはもう1つの小さな儀式(私の手に座っているような)であり、根本的に致命的に愚かなことをする可能性が低くなります。
デビッドソーンリー

1
sudoとsuは、コマンドと同様のツールです。感情と実用性を混ぜる必要はありません。sudoは、suに柔軟な構成、監査、および使いやすさをもたらします。もちろん、さまざまな可能性について知る必要があり、実際にそれらの利点を認識するために必要です。あなたが話しているこの「誤ったセキュリティ感覚」は、Ubuntuの「rootアカウントが無効」ポリシーをより適切に対象とすべきだと思います。それがツールとポリシーの違いです。ポリシーに対して良い議論をすることができます。ポリシーに同意しないためにツールの有用性を否定することは明らかに間違っています。
-zarkdav

1

他のユーザーがお互いに見ることができるものを制御しようとしている場合、Umaskは適切ではありません。ただし、ファイルにアクセスするための許可を求められるのは、ユーザーが望むものをすべて見せることよりも煩わしい/リスクが少ないという点に敏感な多数のファイルを使用して作業している場合、077のumaskは良い考えです。

管理しているファイルサーバーに機密ファイルがいくつかあります。制限的なumaskを設定してから定期的なスクリプトを設定します。特定のフォルダー内のアイテムに特定のアクセス許可を設定するcronジョブは、私にとって理想的なソリューションです。これをセットアップしたら、ここに投稿し、どのように機能したかをお知らせします。

@ [sudoをバッシングする人]新しいスレッドを開始します。独自のスレッドをいくつか取ることができ、このスレッドはumaskについてです。


1

独自のインストールシステムを使用するサードパーティアプリケーションには、システムのデフォルトのumaskに関する想定が組み込まれている場合があります。

実際の例として、umaskが077に設定されたシステムでOracle 10データベースを更新した後、同じシステム上のアプリケーションはデータベースにアクセスできませんでした...データベースクライアントに不可欠なライブラリ、およびライブラリのディレクトリoracleユーザーのみがアクセスできるように保護されていましたが、これは明らかに物事が機能するはずの方法ではありませんでした。

Oracle Updaterプロセスは、クライアントライブラリのアクセス許可が他のユーザーに使用を許可することを特に考慮していないが、代わりにアップデーターによって追加されたファイルがumask 022で作成され、使用可能であるという前提に依存していたことが判明しましたデフォルトで。chmod -R a+rX適切なディレクトリに対するいくつかの賢明なコマンドの後、すべてが再び順調に進みました。

確かに、これは、oracleアカウントを標準のumask 022を持つ特別なシステムアカウントとして扱い、umask 077を実際にログイン可能なユーザーアカウントのみに制限することで回避できたかもしれませんが... 「決定は予期せぬ副作用を引き起こす可能性があります。

.rpmまた、.debパッケージには含まれるファイルの明示的な許可情報が含まれているため、通常、このタイプのエラーのリスクはありません。


0

私はこの行を ~/.zshrc

umask 0077

グローバルに設定することはおそらく良い考えではありませんが、rcファイルでデフォルトとして設定しても、おそらく/etc/skel/.rcファイルにデフォルトとして設定されても害はありません。ただし、システム全体では問題が発生します。


0

サーバーで問題が発生します。たとえば、複数のアプリケーションを異なるユーザーとして実行し、異なるユーザーのファイルにアクセスしようとしている場合。apacheが設定ファイルを読み込むか、pi-holeがdnsmasq.confを読み込むように。で明示的に設定されるのではなく、個々のホームディレクトリのように恩恵を受ける可能性のあるユーザーで実行するだけ/etc/profileです。

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