Linux の基本操作演習をやってみましょう。今回はアクセス権限・パーミッションについて扱います。
問題文で提示された操作を行い、結果を確認して下さい。
※本演習はUbuntuの環境を想定しています。
この記事はシリーズ記事です。全シリーズはこちらからご覧になれます。
第1問
下記の操作を実行し、[結果]と同様であることを確認してください。
※補足: 行頭にsudoをつけて実行すれば、root権限でコマンドを実行できます
①ホームディレクトリにpractice1ディレクトリを作成
②作成したpractice1ディレクトリに移動し、新たなカレントディレクトリとする
③practice1ディレクトリに、新規ファイルsecret_keyを作成
④secret_keyに対し、文字列「password」を書き込む
⑤secret_keyの所有者を以下のとおり変更 (sudoをつけて実行)
– 所有者: root
– グループ: root
⑥secret_keyの所有者が変更されているのを確認する
[結果]
・practice1ディレクトリに、ファイルsecret_keyが存在し、中に「password」が記録されている
・ファイルsecret_keyの所有者がroot、グループがrootになっている
◆実行例◆
①mkdir practice1
②cd practice1
③touch secret_key
④echo password > secret_key
⑤sudo chown root:root secret_key
⑥ls -l
第2問
下記の操作を実行し、[結果]と同様であることを確認してください。
①第1問で作成したファイルsecret_keyのパーミッションを以下のとおり変更 (sudoをつけて実行)
– 所有者: 読み書き可能
– グループ: 読み取りのみ可能
– その他: すべて不可
②ログイン中のユーザーから、ファイルsecret_keyが閲覧できないことを確認(その他ユーザーからのアクセス制限がかかっていることを確認する)
③rootユーザーから、ファイルsecret_keyが閲覧可能であることを確認 (sudoをつけて実行)
④ファイルsecret_keyのパーミッションを確認する
[結果]
ファイルsecret_keyのパーミッションが「-rw-r—–」になっている。
◆実行例◆
①sudo chmod 640 secret_key
②cat secret_key
③sudo cat secret_key
④ls -l
第3問(応用)
下記の操作を実行し、[結果]と同様であることを確認してください。
①secret_keyの内容を、rootユーザを使用し「p@ssw0rd」に変更する
なお、rootユーザーとしてファイルの変更を行う方法として、以下の2つを提案します。
- Ⓐ
sudo suコマンドを使用して一時的にルートユーザにログインし、echoで値を書き込む。その後、exitコマンドで一時的なルートユーザを終了する。 - Ⓑ「
sudo tee ファイル名」コマンドを使い、ルートユーザ権限で値を書き込む。
②secret_keyのパーミッションを、全てのユーザーが読み書き可能な状態に変更する
③ファイルsecret_keyのパーミッションを確認する
④ログイン中のユーザでsecret_keyの内容が閲覧可能であることを確認する
[結果]
ファイルsecret_keyの中に「p@ssword」が記録されている
ファイルsecret_keyのパーミッションが「-rw-rw-rw-」になっている
◆実行例◆
①-Ⓐsudo su
echo p@ssw0rd > secret_key
exit
①-Ⓑsudo tee secret_key
p@ssw0rd
Ctrl+C (teeコマンドを終了)
②sudo chmod 666 secret_key
③ls -l
④cat secret_key





