Linuxのファイルのアクセス権と管理

▼ユーザーおよびグループ
リソース割り当て:
認証:認証
認可:認可
会計|オーディション:監査

ユーザーユーザー

Linuxユーザー:ユーザー名/ UIDの
管理者:ルート、0
平均的なユーザー:1から60000の自動配布
システムのユーザー:1から499まで、1〜999(CentOS7)
デーモンアサイン権限のためのリソースへのアクセス
ユーザーをログに記録する:500 + 1000年+( CentOS7)
対話型ログオンの
グループグループ

Linuxのグループ:グループ名/ GID
Administratorsグループ:根、0
正常群:
システムグループ:1から499まで、1〜999(CENTOS7)
一般的なグループ:500 + 1000 +(CENTOS7)
、Linuxのセキュリティコンテキスト

実行中のプログラム:プロセス(過程)
プロセスの開始者として実行:
ルート:/ binに/ CATの
MAGE:/ binに/ CATの
プロセスのリソースにアクセスするための権限は、プロセス実行している人のアイデンティティに依存
カテゴリLinuxグループを

ユーザーのプライマリグループ(プライマリグループ)は、
ユーザは、1つのグループと1つのプライマリに属している必要があり
、ユーザー名とグループ名、そして唯一のユーザー、グループ秘密が含まれ
、ユーザー(補助グループ)の追加セットを
ユーザーがゼロまたはそれ以上の追加のグループに属していてもよいです
▷ユーザーおよびグループは、プロファイル
:メインの設定ファイル
/ etc / passwdファイル:ユーザーとその属性情報(名前、UID、プライマリグループIDなど)
の/ etc /グループ:グループは、情報および属性
は/ etc / shadowのを:ユーザパスワードをと関連のプロパティ
は/ etc / gshadowの:グループのパスワードと関連する属性
passwdファイル形式

[ルート@ centos7〜] $猫/ etc / passwdファイル
陳:X:1000:1000:陳:/ホーム/チェン:/ binに/ bashの

  

1.login名:名前(王)でログインし
、パスワード(X-):2.passwd
3.UID:利用者識別番号(1000)
4.GID:デフォルトのグループ番号(1000)にログインします。
フルネームまたはコメント:5.GECOS
6.homeディレクトリ:ユーザのホームディレクトリ(/ホーム/王)

7.shell:ユーザーのデフォルトのシェル(/ binに/ bashの)

shadowファイル形式

[ルート@のcentos7〜] $猫の/ etc /影
陳:* :: 0:99999:7 :::

  

1.名前を使用してログインします
。2.ユーザパスワード:一般的な使用のSHA512暗号化
パスワードが変更された最後の時間再生するには1970年1月1〜3
4.パスワードが数日中に変更することができます(0はいつでも変更することができます)
パスワードを変更する必要があり、数日5.(99999が表す有効期限が切れることはありません)
6.パスワードは、ユーザ(デフォルト1週間)を警告するシステムを切れる前に数日
アカウント7.パスワードがロックされ、数日後に期限が切れる
1970年1月から8第一日は、日数が失敗アカウント

グループファイル形式

グループ名:グループ名は
グループパスワード:パスワードを設定するには、通常は必要は/ etc / gshadowの中に記録されません。設定グループパスワードは、(単にパスワードを知っている)普通のユーザーがグループに参加することができます
GID:グループIDは
、追加のグループの現在のユーザー・グループのリスト(区切りはカンマ)
vigrは、VI / etc / groupの対応
gshdowファイル形式を

グループ名:グループの名前で
グループパスワード:
グループ管理者のリスト:グループのパスワードとグループを変更するには、リストには、会員管理者
ユーザーリストの現在のグループの追加グループを:コンマで区切って複数のユーザー間で
-s同等vigr viのは/ etc / gshadowの

▼ファイルのパーミッションの
pwckをとgrpckを

ユーザー管理コマンド
1.useradd
2.usermod
3.userdel
4.id
5.su
6.passwd
7.chage
グループアカウントのメンテナンスコマンド
1.groupadd
2.groupmod
3.groupdel
4.gpasswd
5.groupmems
6.groups
▷ユーザー管理コマンド
●新規ユーザーに関連するファイルやコマンド
ファイル関連
は、/ etc / default / useraddの
は/ etc / skelの/ *は
に/etc/login.defs
newusersのpasswdファイル形式のバッチは、ユーザーの作成
chpasswdバルクは、ユーザーのパスワードを変更します

useraddの用户创建:

useraddの[オプション] LOGIN
-u UID
チェックなしのUIDの一意性を持つ-o -uオプション
-g GIDは、グループ名のために、ユーザーが所属する基本的なグループに指定された、またはGID
-c「COMMENT」ユーザーのコメント情報
-d HOME_DIR指定したパス(存在しない)のホームディレクトリに
ユーザーのデフォルトのシェル-sシェル、利用可能に/ etc / shellsファイルのリストに指定さ
-G GROUP1 [、GROUP2を、...]ユーザーのための追加のグループを指定するには、事前に対象のグループ存在は
、プライベートグループのグループショットを作成するグループのユーザーグループを使用して撮影しませ-N
-rシステム・ユーザーを作成6のCentOS:ID <500、CentOSの7:ID <1000
-mシステムのユーザのホームディレクトリを作成
-Mホームディレクトリが作成されていません非システム・ユーザ

usermodの[OPTION] USERNAME "ユーザーのプロパティを変更します"

usermodの[オプション]ログイン
-u UID:新しいUID
-g GID:新しいメイングループ
-G GROUP1 [、GROUP2、... [ 、groupnは]]]: ;あなたが続ける場合は、追加の新しいグループは、元のグループは、追加のカバレッジになりますオリジナル、-aオプションを使用する必要があります
新しいデフォルトのSHELL:-s SHELL
-c「コメント」:新しい注釈情報
-dホーム:ホームディレクトリが自動的に作成されていないが、新しいホームディレクトリおよびモバイルホーム、元のデータを作成するには、一方、-mオプション
-lのlogin_name:新しい名前
-L:の/ etc / shadowパスワードバーで増加し、指定したユーザーをロック!
-U :! UNLOCK指定されたユーザーは、/ etc / shadowのパスワードフィールドが削除され
-e YYYYを-MM-DD:ユーザーアカウントの有効期限ことを示し
、非アクティブの設定期間:INACTIVE -fを

suコマンド[オプション...] [ - ] [ユーザー[引数...]] "ユーザーの切り替えまたは別のユーザーとしてコマンドを実行":


ユーザーの切り替え方法:
SUユーザー名:ターゲットユーザーのプロフィールを読んでいない非ログインタイプのスイッチは、現在の作業ディレクトリは変更されません
SUを-ユーザー名:型スイッチのログを、ターゲットユーザーのプロフィールを読み、ホームディレクトリに切り替え、完全に切り替え
パスワードなしで他のユーザにルートSUと、非rootユーザーのパスワードは、スイッチが要求される
アイデンティティ実行変更する:
SU [ - ]ユーザ名-C「コマンド」
-ユーザー名SUは-lユーザー名SUに対応します

passwdの[OPTIONS]ユーザー名 "パスワード":

共通オプション:
-d:指定したユーザーのパスワードを削除
-lを:指定したユーザロック
-uを:特定のユーザーのロックを解除するには
力ユーザーは次回ログオン時にパスワードを変更するには:-e
-f:強制操作
-n MINDAYS:最低利用期間を指定する
-x MAXDAYSを:最大使用期間
-w warndays:事前に警告し始めた日数
-i inactivedaysを:非アクティブ期間
、標準入力からユーザーのパスワードを受信:--stdin
例:「パスワード」エコー| --stdin passwdの USERNAME

ユーザーのパスワードポリシーを変更します。

チャゲ[OPTION] ... LOGIN
-d LAST_DAY
-E --expiredate EXPIRE_DATE
-I --inactive INACTIVE
-m --mindays MIN_DAYS
-M --maxdays MAX_DAYS
-W --warndays WARN_DAYS
-l显示密码策略

他のユーザー関連のコマンド:

  • chfnコマンドは、個人情報を指定します
  • CHSH指定されたシェル

関連するコマンドのグループ

グループの作成
groupaddの[オプション] ... GROUP_NAMEは、
GID GID番号を指定-g [GID_MIN、GID_MAX]
-R&LTは、システムのグループ作成
のCentOS 6:ID <500。
CentOSの7:ID <1000。

グループの変更、削除
、編集グループのプロパティを:groupmodの
groupmodの[OPTION] ...グループ
-n [グループ名:新しい名前は、
-g GID:新しいGID
グループの削除が:groupdelグループ
GROUPをgroupdelグループ

変更およびビューグループメンバー

groupmems [オプション]、[アクション]
オプション:
指定したグループ(rootのみ)に-g、--group GROUPNAME変更
アクション:
グループに参加するユーザーを指定-a、--addユーザ名
-dを、--deleteユーザ名がグループからユーザーを削除します
- Pは、グループのすべてのメンバから削除--purge
-l、--listグループメンバーのリスト表示
グループ[オプション] [USERNAME] ... グループのリストを表示するユーザーが所属します

ファイルのアクセス権

  • 3つのタイプのオブジェクトのために定義されたメインファイルのパーミッション
  1. それはuが、主な所有者であります
  2. グループは、G基であります
  3. 他の他、O
  • 各クラスの各ファイルには、以下の3人の訪問者が権限を持っている定義します

Rそのコンテンツを取得するためにファイルビューアのクラスのツールを使用することができ
、wはその内容変更することができ
、プロセスを開始し、xはカーネルを描画するために、この文書を置くことができます
:ディレクトリを
Rあなたは、ファイルリストにこのディレクトリを表示するために、LSを使用することができ
、このディレクトリ内のファイルを作成することができますもすることができワットディレクトリ内のファイル削除
、ファイルのメタデータを表示するには、ls -lを使用することができ、Xを、あなたは、ディレクトリにcdし、このディレクトリにすることができます(Rと互換性がなければならない)
X Xのみ、ディレクトリのパーミッションに、ではないパーミッションファイルxに

修飾されたファイルの所有者とグループ
のchown:所有者は、ファイル改変
のchown [オプション] ... [OWNER] [:[グループは]] ... FILEの
命令:
所有者
OWNER:GROUP
:GROUP、結腸も交換することができます。
-R:再帰
のchown [オプション] ... --reference = RFILEファイル...
変更されたファイルのグループである:chgrpコマンドの
chgrpコマンド[オプション] ...ファイルグループ
chgrpコマンド[オプション] = ... --reference FILE ... RFILE
-R&再帰的にLT

ファイルのパーミッションを変更し
ます。chmod [オプション] ... FILEのOCTAL MODE-
-R&LT:変更するための再帰的に許可
chmodの[OPTION] ... MODE [MODE]を... ... FILE
MODE:
すべてのユーザーのクラスを変更します権限
U = G = O = UG = A = U =、G =
ユーザまたは許可ビットの特定のクラスによって修飾
U UG + + G- O + A + A- + O- -
のchmod [オプション] ... -参照= RFILEファイル...
参照RFILEファイルのパーミッション、同じRFILEのためのファイルを変更

ファイルやディレクトリの新しいデフォルトのアクセス権(umaskの)
umaskの値は、作成されたファイルのアクセス権を維持するために使用することができます

新しいデフォルトの権限ファイル:666-umaskを、結果は実行の有無(奇数)当局によって得られたならば、それは+1許可で
新しいディレクトリのデフォルトのパーミッション:777-umaskの
非特権ユーザーのumask 002され
たルートのumaskが022であります

Linuxのファイルシステム上の特別な権限(SUID、SGID、スティッキー)
プロセスの任意の実行可能ファイルが起動できません(1)は、プログラムのイニシエータは、ファイルが実行許可を持っているかどうかに依存し
、(2)プロセスを開始するために後にそのプロセスをメイングループがイニシエータである場合、プロセスの開始は、グループの所属である
(3)ファイルへのアクセスのプロセスは、プロセスの開始が依存する場合権限を
アプリケーションファイル属性:ファイルの所有者で、(a)は、プロセスの開始主な権利の
開始剤(B)属グループに属するプロセス、ファイルを、アプリケーションファイルは、アクセス権のセットです
©アプリケーションファイル「その他」のパーミッション

1.SUID「実行可能ファイルのパーミッション」


任意の実行可能ファイルは、プロセスのために起動できません:プログラムのイニシエータは、ファイルが実行許可を持っているかどうかに依存
プロセスとして開始した後、その所有者のプロセスは、元のファイルの所有者である
SUIDバイナリ実行ファイルのみ有効
SUIDセット無意味なディレクトリの
パーミッション:

chmodのU + S FILE ...
私たちFILEます。chmod ...

  

SGID「実行可能ファイルのパーミッション」

任意の実行可能ファイルは、プロセスのために起動できません:プログラムのイニシエータは、ファイルが実行許可を持っているかどうかに依存します

プロセスとして起動した後、元のプログラムファイルのためにそのプロセスのグループがグループであります

権限:

chmodのU + S FILE ...
私たちFILEます。chmod ...

  

ディレクトリにSGIDのパーミッション

このユーザグループに属しているファイルを作成するために、ユーザーの主なグループが属している場合、デフォルトでは

ディレクトリがSGID設定されると、その後、このディレクトリは、このディレクトリに作成されたファイルのユーザーグループへの書き込みアクセスをしているのグループで、このディレクトリに属しています

多くの場合、共同のディレクトリを作成するために使用されます

権限:

chmod gが+ S DIR ...
chmodのGS DIR ...

  

[GPL @ centos7 TEST_DIR] $タッチF1
[ルート@のcentos7のTEST_DIR] $のLL
合計0
-rw-RW-r--の。1人の王の王0 5月16日5時01分F1

[ルート@ centos7のTEST_DIR] $ chmodのG + S /データ/ TEST_DIR

[GPL @ centos7 TEST_DIR] $タッチF2
[GPL @ centos7 TEST_DIR] $のLL
合計0
-rw-RW-r--の。1人の王の王0 5月16日5時01分F1
-rw-RW-r--の。1つの王のルート0 5月16日5時01分F2
[GPL @ centos7 TEST_DIR] $

  

3.スティッキー位

ディレクトリは、通常、ユーザーが書き込み権限がファイルのパーミッションや所有権に関係なく、そのディレクトリ内のファイルを削除することができていています

スティッキービットがディレクトリに設定されている、所有者またはルートファイルのみ、ファイルを削除することができます

ファイルのスティッキー無意味セット

権限:

chmodのO DIR T + ...
chmodのOT DIR ...

  

パーミッションビットマップ
SUID:ユーザー、所有者の実行許可ビット占有
S:所有者は、x特権がある
所有者のNO x許可:S
グループに属しているグループ、許可ビットを実行占める:SGIDを
S:グループがx権限がありません
S:グループでのNO x権限
スティッキー:他、他の実行許可ビット占有
X持っている他の許可:T
T:無権限のx他の

chattrは「特定のファイルの属性を設定します

chattr +iあなたは、削除、名前の変更、変更することはできません
chattr +a だけで、追加コンテンツの
lsattr 表示特定の属性を

[ルート@ centos7のTEST_DIR] $のchattrは+ I F1キー
[centos7 TEST_DIR @ルート] $たlsattr
---------------- ./f3
----私----------- ./f1

[root@centos7 test_dir]$su wang
[gpl@centos7 test_dir]$ mv f1 f111
mv: cannot move ‘f1’ to ‘f111’: Operation not permitted
[gpl@centos7 test_dir]$

  

访问控制列表ACL

ACL:Access Control List,实现灵活的权限管理
除了文件的所有者,所属组和其它人,可以对更多的用户设置权限
CentOS7 默认创建的xfs和ext4文件系统具有ACL功能
CentOS7 之前版本,默认手工创建的ext4文件系统无ACL功能,需手动增加,方法如下:
tune2fs –o acl /dev/sdb1
mount –o acl /dev/sdb1 /mnt/test
ACL生效顺序:所有者,自定义用户,自定义组,其他人
所属组的权限变成mask的权限
所有权限不能超mask权限(除了user所有者的权限)

ACL文件上的group权限是mask 值(自定义用户,自定义组,拥有组的最大权限),而非传统的组权限

getfacl 可看到特殊权限:flags

通过ACL赋予目录默认x权限,目录内文件也不会继承x权限

base ACL #不能删除

setfacl -k dir # 删除默认ACL权限

setfacl –b file #清除所有ACL权限

getfacl file1 | setfacl --set-file=- file2 #复制file1的acl权限给file2

mask只影响除所有者和other的之外的人和组的最大权限

Mask需要与用户的权限进行逻辑与运算后,才能变成有限的权限(Effective Permission)
用户或组的设置必须存在于mask权限设定范围内才会生效
setfacl -m mask::rx file

–set选项会把原有的ACL项都删除,用新的替代,需要注意的是一定要包含UGO的设置,不能象-m一样只是添加ACL就可以
示例:
setfacl --set u::rw,u:wang:rw,g::r,o::- file1

备份和恢复ACL
主要的文件操作命令cp和mv都支持ACL,只是cp命令需要加上-p 参数。但是tar等常见的备份工具是不会保留目录和文件的ACL信息

备份:getfacl -R /tmp/dir1 > acl.txt
删除:setfacl -R -b /tmp/dir1
恢复:setfacl -R --set-file=acl.txt /tmp/dir1
	#方式2:setfacl --restore acl.txt
查看:getfacl -R /tmp/dir1

  以上到此结束,想要继续看的,未完待续。

おすすめ

転載: www.cnblogs.com/guopeilin/p/10926928.html