>100 Views
April 20, 26
スライド概要
はじめまして、ALJ Education Plus 株式会社のyukikoと申します。 IT教育支援や、DX推進が可能です。 ◆ スキル LPIC レベル2 AI / Python Splunk BI(データ可視化・分析) ◆ その他 新卒・未経験の学生向けに、エンジニア転職を応援する資料を趣味で作成しています。 もしよろしければご活用ください。 ◆IT研修講師をお探しの方は [email protected] にお気軽にお問い合わせください。 ※ALJ Education Plus 株式会社を通して、ご支援させていただきます。 ◆Zenn https://zenn.dev/yukiko_sapporo/articles/46c13e9f98b110
Linuxファイル権限 アクセス権限 新卒・未経験文系エンジニア向け 権限とは? 権限の見方 25分講義 + 5分口頭クイズ 変更方法
①この用語「アクセス権限」とは? 簡単に書くよ ※正確な表現ではありません 「ファイルを見ても良いか・触って良いか・動かして良いか」を決めるルール 会社の例 ファイルの例 プログラムの例 機密書類は 社員全員が見たらダメ! → 特定の人だけアクセスOK 設定ファイルは 読むだけOK・ 書き換えはNG スクリプトは 特定の人だけ 実行できる 権限がないと:誰でも機密ファイルが見える・改ざんされる → セキュリティの第一歩!
②権限の種類は3つだけ! 詳しく書くよ ※原理原則一言でまとめるよ! r w x 読み込み権限 書き込み権限 実行権限 ( Read ) ( Write ) ( eXecute ) ファイルを「見る」だけ ファイルを「編集」できる プログラムを「動かす」 cat, ls などで内容確認 内容の追加・変更・削除 スクリプト・コマンドの実行 原理原則:権限 = 「誰が」「何を」「してよいか」を定義したルール
②権限の見方:ls -l コマンド ターミナルで確認できる! $ ls -l /etc - rw- r-- r-- root root 4096 ①種別 ②所有者の権限 ③グループの権限 ④その他の権限 d=ディ レクト リ -=ファ イル l=リン ク ファイルを作った 人の権限 同じグループに 属する人の権限 それ以外の 全ての人の権限 記号 passwd 意味 覚え方 r 読み込み (Read) Rは「 Read=読 む」のR w 書き込み (Write) Wは「 Write=書 く」のW x 実行( eXecute) Xは「 eXecute= 実行」のX - 権限なし ダッシュ =何もで きない
②権限の数字の読み方 2進数 → 8進数へ変換するルール 2進数 意味 8進数 r w = 100 x 4 読み込みだけ r w = 010 x 2 書き込みだけ r w = 001 x 1 実行だけ r w = 110 x 6 r w = 111 x 7 全ての権限 r w = 000 x 0 権限なし test.txt → 所有者:rw- 例:chmod 6 6 0 読み込み+書き込み グループ:rw- その他:-
②chmod 660 の意味を図解! 3桁の数字=所有者・グループ・その他 6 6 0 所有者 (ファイルを 作った人) グループ (同じチームの メンバー) その他 (全員) rw- rw- --- $ chmod 660 test.txt
②記号でも権限を変更できる [対象][操作][権限] の組み合わせ 対象 u = 所有者 g = グループ o = その他 a = 全員 操作 ++ = 追加 - = 削除 = = 指定 例:chmod u+w test.txt 権限種類 +r = 読み込み w = 書き込み x = 実行 → 所有者に書き込み権限を追加
②所有者・グループを変更する chown / chgrp コマンド chown コマンド chgrp コマンド 所有者とグループを変更 グループだけを変更したいとき $ chown user:test test.txt $ chgrp testgroup test.txt 所有者→user グループ→test $ chown user test.txt → test.txtのグループをtestgroupに変更 整理ポイント 所有者だけ変更 $ chown :test test.txt chown chgrp → 所有者・グループ両方OK → グループのみ変更 グループだけ変更 原理原則:ファイルには「所有者」と「グループ」という2種類の帰属が必ずある
②デフォルト権限とumask ファイル作成時の初期権限の設定方法 ファイル ディレクトリ 最大権限 666 最大権限 777 umask値 - 022 umask値 - 022 デフォルト = 644 デフォルト = 755 $ umask ) → 0022 と表示 │ $ umask 77 → 変更(ファイル:600 / ディレクトリ:700
②特殊権限:SUID / SGID / スティッキ ービット 中上級向け ※初心者は読み飛ばしてOK! SUID SGID スティッキービット 4xxx 2xxx 1xxx 動作 動作 動作 ファイルを実行したとき 所有者の権限で動く ファイルを実行したとき グループの権限で動く ディレクトリ内のファイルを 作った人しか削除できない chmod 4755 file chmod u+s file chmod 2755 file chmod g+s file chmod 1777 dir 用途:passwdコマンド (一般ユーザーが自分の パスワードを変更できる) 用途:共有ディレクトリで グループの権限を 統一したいとき 用途:/tmp ディレクトリ (誰でも書けるが 自分のファイルのみ削除可) SUIDやSGIDの不適切な設定はセキュリティリスク! 基本的には設定しない
まとめ 権限の種類 誰に対する権限か r(読む)・ w(書く)・ x(実行)の3種類 数字で設定(chmod) r=4, w=2, x=1 を足し算して数字で指定 所有者変更(chown) 所有者・グループを変更するコマンド 所有者 / グループ / その他の順に左から表示 記号でも設定(chmod) [対象][操作][権限] の組み合わせ(例:chmod u+w ) デフォルト権限(umask) ファイル 666-umask、ディレクトリ 777-umask これで基礎は完璧!次は練習問題で確認しよう
筆記試験 口頭理解度クイズ(5分) Q1 ファイルの権限 rw-r--r-- は、所有者・グループ・その他それぞれどんな権限? A. Q2 chmod 755 を記号で表すと? A. Q3 chmod u-x の意味は? A. Q4 ファイルのデフォルト権限が644のとき umask の値は? A. Q5 SUID が設定されたファイルを実行すると誰の権限で動く? A.
口頭理解度クイズ(5分) Q1 ファイルの権限 rw-r--r-- は、所有者・グループ・その他それぞれどんな権限? → 所有者: 読み書きOK グループ・その他: 読むだけ Q2 chmod 755 を記号で表すと? → chmod u=rwx,go=rx または chmod a=rx, u+w Q3 chmod u-x の意味は? → 所有者から実行権限を削除する Q4 ファイルのデフォルト権限が644のとき umask の値は? → umask 022 (666 - 022 = 644) Q5 SUID が設定されたファイルを実行すると誰の権限で動く? → ファイルの所有者の権限で動く