ls -l を打ったら、-rw-r--r-- 1 ec2-user ec2-user 1024 Jul 30 09:00 app.conf のような行が並んだ。左の記号が何なのか分からない。「Permission denied」と言われて動かない。調べると「chmod 755」「chmod 600」と出てくるが、なぜその数字なのかも分からない。この記事は、その1行の左端の読み方と、chmod・chown・sudo が何を変えるのかを、「箱と門番」のたとえで整理します。
この記事の結論
- Linux のファイルには「誰が・何をしてよいか」の札が付いていて、ls -l の1行の左端に rwx の並びで出ます。
- rwx が3組あるのは、門番が3種類いるからです。所有者・グループ・その他の順に並び、自分がどの門番に当たるかで、できることが決まります。
- r は読む、w は書く、x は実行。ディレクトリの x は「中に入れる」という意味です。
- chmod は「何をしてよいか」の札を、chown は「誰の物か」を変えます。755 のような数字は、rwx の並びを r=4・w=2・x=1 の足し算で書いただけです。
- root は何でもできる鍵で、普段は使いません。一般ユーザーで入り、必要な1行だけ sudo で root の力を借ります。
- EC2 の秘密鍵が「他人が読めると使えない」のも、IAM の「誰が何をしてよいか」も、この考え方の延長にあります。
ファイルとディレクトリは「箱と中身」
Linux では、すべてのデータがファイル(中身)とディレクトリ(箱)で整理されています。箱の中に箱を入れて木の形にし、一番上の箱が / です。黒い画面の読み方で、その木を pwd・ls・cd で歩きました。
この箱と中身のすべてに、「誰の物か」と「誰が何をしてよいか」の札が付いています。会社の書庫を思い浮かべてください。棚(ディレクトリ)ごとに入ってよい人が決まっていて、書類(ファイル)ごとに「閲覧のみ」「書き込み可」の印が押してある。Linux はこれを、1台の機械を何人もで使う前提で最初から組み込んでいます。
なぜそこまでするのか。サーバーは、人だけでなく Web サーバーやデータベースといったアプリも「ユーザー」として動いているからです。Web サーバーが設定ファイルを書き換えられたり、誰かのログを別のアプリが読めたりすると、事故になります。札は、人と人だけでなく、アプリとアプリを分けるためにもあるのです。
ls -l の1行の読み方: rwx が3組ある理由
ls -l の1行を、左から分解します。
-rw-r--r-- 1 ec2-user ec2-user 1024 Jul 30 09:00 app.conf
| 部分 | 意味 | この例では |
|---|---|---|
| 先頭の1文字 | 種類。- はファイル、d はディレクトリ | ファイル |
| 次の9文字 | 権限。3文字ずつ3組 | rw- / r– / r– |
| ec2-user(左) | 所有者(このファイルの持ち主) | ec2-user |
| ec2-user(右) | グループ(持ち主の所属する集まり) | ec2-user というグループ |
| 1024 以降 | 大きさ・更新日時・名前 | 1024 バイト、app.conf |
9文字が3組に分かれているのは、門番が3種類いるからです。
- 所有者(owner) — ファイルの持ち主本人に対する札。
- グループ(group) — 持ち主の所属する集まり(同じ部署)に対する札。
- その他(others) — それ以外の全員に対する札。
ファイルを開こうとした人がいると、Linux は「この人は所有者か? 違うならグループの一員か? どちらでもなければその他」と判定し、当てはまった組の札だけを見ます。上の例なら、所有者は読み書きでき、グループとその他は読むだけです。
THREE GATEKEEPERSrwx が3組ある理由
同じファイルでも、自分がどの門番に当たるかで結果が変わる
app.conf(-rw-r-----)の門
- rw-所有者 通る読む・書く、どちらも
- r--グループ 通る読むだけ
- ---その他 止まるPermission denied
r・w・x の意味
| 文字 | ファイルに対して | ディレクトリに対して |
|---|---|---|
| r(read) | 中身を読める | 中にある名前の一覧を見られる |
| w(write) | 中身を書き換えられる | 中にファイルを作る・消す・名前を変えられる |
| x(execute) | プログラムとして実行できる | 中に入れる(通り抜けて中のファイルに到達できる) |
ディレクトリの x は「入れる」です。ここがつまずきやすいところで、r だけあって x が無いと「名前は見えるのに開けない」、x だけあって r が無いと「名前を知っていれば開けるが一覧は出ない」という状態になります。中身を使わせたい箱には r と x をセットで付けます。
READ OR WRITE札の組み合わせ
読めるか・書けるかで、ファイルの居場所が決まる
読める →
見るだけ(r--)
公開の設定ファイル。他人は読めるが変えられない
自分の物(rw-)
所有者の普段の状態。自分のホームのファイル
触れない(---)
他人の秘密鍵。EC2 の .pem は他人から見るとこれ
投函だけ(-w-)
入れられるが中は見えない箱。珍しい形
書ける →
CHECK 1ここまでの確認
ls -l で -rw-r----- と出たファイルを、所有者でもグループの一員でもない人が開くとどうなる?
答えと解説
答え: 2. 読めない
rwx は所有者・グループ・その他の順に3組並びます。3組目が --- なので、その他の人は何もできません。「ls -l の1行の読み方」の章を読み直してください。
chmod と chown は何を変えるか
札を変える命令は2つあります。chmod は「何をしてよいか」(rwx の並び)を変え、chown は「誰の物か」(所有者とグループ)を変えます。書庫でいえば、chmod は書類に押す「閲覧のみ」の印を変え、chown は書類の持ち主の名札を貼り替えます。
755 は「並びを数で書いた」だけ
chmod 755 script.sh の 755 は、暗号ではありません。r=4・w=2・x=1 と決めて、組ごとに足した数です。
| 並び | 計算 | 数 | 意味 |
|---|---|---|---|
| rwx | 4+2+1 | 7 | 読む・書く・実行、すべて |
| rw- | 4+2 | 6 | 読む・書く |
| r-x | 4+1 | 5 | 読む・実行 |
| r– | 4 | 4 | 読むだけ |
| — | 0 | 0 | 何もできない |
だから 755 は「所有者 rwx・グループ r-x・その他 r-x」、600 は「所有者 rw-・グループ —・その他 —」です。数字を見たら、3桁をそれぞれ3文字に戻して読めば、誰に何を許しているかが分かります。文字で chmod u+x script.sh(所有者に x を足す)と書く方法もあり、意味は同じです。
777 は「誰でも何でもできる」で、札を外したのと同じです。動かないときに 777 にするのではなく、「誰が動かしていて、何が足りないか」を ls -l で確かめ、その相手にだけ足りない分を足します。
chown は持ち主を変える
chown ec2-user:ec2-user app.conf は、所有者とグループを ec2-user に変えます。Web サーバーが書くべきファイルの持ち主が別の人になっていて「Permission denied」になる、という事故は、chmod ではなく chown で直します。持ち主を変えられるのは、次の章で出てくる root だけです。
CHECK 2ここまでの確認
chmod 755 の 5 が表しているのは?
答えと解説
答え: 1. r-x(読む・実行はできるが、書けない)
r=4・w=2・x=1 を足した数です。5 = 4 + 1 なので r-x。「chmod と chown は何を変えるか」の章の対応表を読み直してください。
root と sudo: 何でもできる鍵は、普段は使わない
root は、権限の札をすべて無視できる特別なユーザーです。どのファイルも読め、書け、持ち主を変えられ、システムの設定を変えられます。書庫でいえば、全部の棚と書類の合鍵を持った館長です。
強いからこそ、普段は使いません。root で打った命令は打ち間違いも最高権限で実行され、ファイルを消す命令の対象を間違えれば、システムごと消えます。EC2 の Amazon Linux で最初のユーザーが root ではなく ec2-user なのは、この考え方によるものです。
代わりに使うのが sudo です。一般ユーザーのまま、命令の頭に sudo を付けたその1行だけを root の権限で実行します。誰が・いつ・何を sudo で実行したかは記録に残るので、あとから追えます。
| root でログインして作業 | 一般ユーザー + sudo | |
|---|---|---|
| 権限の効き方 | 打つ命令すべてが最高権限 | sudo を付けた1行だけ |
| 打ち間違いの影響 | そのまま最高権限で実行される | 一般ユーザーの範囲で止まる |
| 記録 | 誰が打ったか分からない | 誰が・いつ・何を、が残る |
| 使う場面 | 原則使わない | 設定の変更・ソフトの導入など必要なときだけ |
LEAST PRIVILEGEやりがちな形を直す
何でもできる鍵は、必要な1行だけに絞る
やりがちな形
安全な形
やりがちな形: root でログインして作業する
安全な形: 一般ユーザーで入り、必要な1行だけ sudo
やりがちな形: 動かないので 777 にする
安全な形: ls -l で見て、足りない相手に足りない分だけ
やりがちな形: 鍵ファイルを共有フォルダに置く
安全な形: 自分だけが読める 600 にして、自分の場所に置く
「一般ユーザーで入り、必要な1行だけ sudo」が、Linux を触る人の基本の姿勢です。これは次の記事以降で扱うクラウドの権限でも、そのまま同じ形で出てきます。
クラウドで効く場面: EC2 の鍵と IAM
ここまでの話は、Linux の中だけの話ではありません。AWS を触ると、最初の日から2か所で効きます。
EC2 の秘密鍵。 EC2 とは何かで立てたサーバーに SSH で入るとき、手元に秘密鍵のファイル(.pem)を置きます。この鍵が「他人も読める」札のままだと、SSH は「秘密ではない鍵」として使うのを断ります。AWS の公式ユーザーガイドでも、接続の前に鍵を自分だけが読める形(chmod 400)にする手順が置かれています。権限の札は飾りではなく、鍵が鍵として成り立つ条件です。この続きは次の記事で扱います。
READ ALSO — 未経験向け・段1 入口
SSH とは何か|鍵と接続の仕組みを「合鍵」で理解して、EC2 の1台に入る
IAM の考え方。 AWS の IAM とは何かは、「誰が・どのサービスに・何をしてよいか」を決める仕組みです。主語が「ユーザー・グループ・ロール」になり、対象が「ファイル」から「S3 のバケット」「EC2 のインスタンス」に広がるだけで、骨組みは rwx と同じです。「ルートユーザーを日常で使わない」という IAM の原則も、root と sudo の関係そのものです。
| Linux の権限 | IAM | 共通の考え方 |
|---|---|---|
| 所有者・グループ・その他 | ユーザー・グループ・ロール | 誰に対する札か |
| r・w・x | 読む(Get・List)・書く(Put・Delete)などの操作 | 何をしてよいか |
| root と sudo | ルートユーザーと、権限を絞った IAM ユーザー | 何でもできる鍵は普段使わない |
CHECK 3ここまでの確認
EC2 に SSH でつなぐ秘密鍵のファイルが「他人も読める」状態だと、SSH はどうする?
答えと解説
答え: 2. 鍵を無視して接続を断る
他人が読める鍵は秘密ではないので、SSH はその鍵を使いません。自分だけが読める形(600 か 400)に直す必要があります。「クラウドで効く場面」の章を読み直してください。
まとめ
Linux のファイルとディレクトリには「誰の物か」と「誰が何をしてよいか」の札が付いていて、ls -l の左端に rwx が3組並びます。3組は所有者・グループ・その他という3種類の門番で、自分がどれに当たるかで、できることが決まります。r は読む、w は書く、x は実行で、ディレクトリの x は「入れる」。chmod は札を、chown は持ち主を変え、755 は rwx を 4・2・1 の足し算で書いた数です。root は何でもできる鍵なので普段は使わず、一般ユーザー+sudo で必要な1行だけ。この考え方が、EC2 の鍵ファイルにも、IAM の「誰が何をしてよいか」にも、そのままつながります。
参照ソース
- ls(1) — Linux manual page(man7.org) — ls -l が種類・権限・所有者・グループ・大きさ・更新日時・名前を1行で出すことの根拠。2026年9月時点の記載
- chmod(1) — Linux manual page(man7.org) — 権限を 8 進数(r=4・w=2・x=1 の和)と記号(u+x など)の両方で指定できることの根拠。2026年9月時点の記載
- chown(1) — Linux manual page(man7.org) — chown がファイルの所有者とグループを変えることの根拠。2026年9月時点の記載
- path_resolution(7) — Linux manual page(man7.org) — ディレクトリの実行(x)権限が「中を通り抜ける(検索する)」権限であることの根拠。2026年9月時点の記載
- sudo(8) — Linux manual page(man7.org) — sudo が一般ユーザーの1つの命令を別のユーザー(既定は root)の権限で実行し、実行を記録することの根拠。2026年9月時点の記載
- Connect to your Linux instance using SSH(Amazon EC2 ユーザーガイド) — 秘密鍵のファイルを chmod 400 で自分だけが読める形にしないと SSH が鍵を受け付けないことの根拠。2026年9月時点の記載
- What is IAM?(AWS IAM ユーザーガイド) — IAM が「誰が・何に・何をしてよいか」を決める仕組みであることの根拠。2026年9月時点の記載

