centos7で読み取り専用アカウントを作成したいのですが、Googleを試しても読み取り専用アカウントを作成する方法はありません。ファイルへの書き込み権限がなく、読み取り権限のみを持つアカウントを作成する方法を知りたいです。
答え1
質問は不明です。 Linuxのアカウントは読み取り専用ではありません。
私はあなたが次の質問のいずれかを尋ねていると仮定します。
- ログインできないアカウントの作成
- アカウントを作成するできるログインしましたが、他のユーザーは自分のホームディレクトリにあるファイルを変更できません。
- アカウントを作成するできるログインしましたが、ユーザーが別のフォルダに書き込めないように制限されました。
1. ログインできないアカウントを作成します
これは、ユーザーのシェルを/bin/false
。これは通常、プロセスを実行するためにシステムアカウントを作成するために使用されますが、そのアカウントを使用してログインすることはできません。これらのユーザーにはデフォルトでホームフォルダが追加されますが、ほとんどの場合これを指定しないと実用的ではありません。また、「パスワードの有効期限が切れたらすぐにアカウントを無効にする」オプションを--no-create-home
設定したいと思います。--inactive 0
sudo useradd --system --no-create-home --inactive 0 --shell /bin/false NAME_OF_USER
アカウントを使用するときは、通常パスワードを設定する必要があります。これだけではシェルにログインすることはできませんが、するローカル認証にアカウントを使用でき、アカウントを使用してプロセスなどを実行できます。
新しいアカウントのパスワードを設定するには(通常の金額または補助アカウントからroot
):
sudo passwd NAME_OF_USER
2. アカウントの作成できるログインしましたが、他のユーザーは自分のホームディレクトリにあるファイルを変更できません。
ユーザーのホームフォルダは、ユーザーが所有者であり、そのフォルダに対するrwx権限を持つように作成する必要があります。そうしないと、ユーザーがパスワードを設定した後でも正しくログインできなくなります。私の記憶が正しい場合、この場合はグラフィカルセッションは不可能ですが、端末でログインすることは可能だと思いますが、単にエラーが発生し、一時的に(そのセッションについて)ユーザーのホームページを一時的に配置する(少なくとも、数年前に間違った設定があるため、事が起きたことを覚えています。)
自分が所有するフォルダの権限を変更できます。したがって、「他の」ユーザーがファイルを変更するのを防ぎますが、読み取りを許可するには次のようにします。
chmod -R o-w ~
この-R
オプションは、変更をすべてのサブフォルダーとファイルに繰り返し適用する必要があることを示します。o-w
私たちが欲しいものを見せてください削除するこれ勝つ儀礼的許可ああ彼らのユーザー。最後に、~
自分のホームフォルダの場所の略語です。
実際には、既定のフォルダの下のほとんどのサブフォルダ、特に隠し「ドット」フォルダへの読み取りアクセスをブロックすることをお勧めします。それ以外の場合は、~/.mozilla
ユーザーが保存したパスワードを含むサブフォルダの完全なコピーを作成できます。
他のユーザーのホームフォルダへのすべてのアクセスを無効にするには:
chmod -R o-wrx ~
これは基本的に以前と同じコマンドです。ただし、書き込み権限以外にも削除しました。アル字型そして電子X他のユーザーにも権限を与えます。
最後に、ファイルの "umask"値を設定することで、ユーザーが作成した~/.bashrc
新しいファイルまたはフォルダの起動権限を定義できます(これは主に端末で作成されたファイルに適用されます...ファイルマネージャなどのグラフィックアプリケーションはこれに従いません。することはできません)あなたの権限umask設定)。
# new dirs => 770
# new files => 660
umask 0007
これはすでに答えが長く、umaskが少し複雑なので、ここでは深く扱わないでしょう。 umaskの詳細はこちらからご覧いただけます。https://www.computernetworkingnotes.com/rhce-study-guide/how-to-change-default-umask-permission-in-linux.html
3. アカウントの作成できるログインしましたが、ユーザーが別のフォルダに書き込めないように制限されました。
他のユーザー(ゲストアカウントなど)が特定のフォルダにアクセスしたくない場合は、2番目のものと似ていますが、他のアカウントで権限を変更するだけです。
たとえば、ユーザー "main"とユーザー "guest"があり、ゲストがユーザーのmainが所有する "/media/shared-stuff"フォルダーに書き込めないようにしたい場合です。
まず「main」としてログインしてから
chmod -R o-w /media/shared-stuff
また、フォルダのグループをこれら2人のユーザーが属するグループに変更しなかったとします。デフォルトでは、グループはあなたのユーザー名と同じでなければならず、あなたはグループの唯一の人になります。ただし、所有者と見なされるグループを使用または変更し、ユーザー "guest"がそのグループの一部である場合は、そのグループが書き込みを許可しないように、次のことを行うchown
必要chgrp
があります。
chmod -R gw /media/shared-stuff
これは基本的に以前と同じですが、ああ私たちはこれらのユーザーを次の場所に移動しています。Gグループ