Chmodパーミッション計算ツール
Unixのchmodパーミッションを視覚的に設定・確認できます
| Read (r) | Write (w) | Execute (x) | 数値 | |
|---|---|---|---|---|
| Owner(所有者) | 6 | |||
| Group(グループ) | 4 | |||
| Others(その他) | 4 |
数値から逆引き
よく使うプリセット
Chmodパーミッションとは
Unix/Linuxのファイルシステムでは、ファイルやディレクトリへのアクセス権を「所有者(Owner)」「グループ(Group)」「その他(Others)」の3つのカテゴリに対して「読み取り(r=4)」「書き込み(w=2)」「実行(x=1)」の権限を設定します。
よくある質問
755と644の違いは何ですか?
755 は Owner(所有者)が読み書き実行可、Group・Others が読み取り実行可(rwxr-xr-x)。644 は Owner が読み書き可、Group・Others が読み取りのみ(rw-r--r--)です。Webサーバーでは「ディレクトリは755、通常ファイルは644」が標準的なベストプラクティスです。CGIスクリプトや実行可能ファイルは755、HTML/CSS/画像など静的ファイルは644を使います。
777は危険ですか?
はい、777 は全ユーザー(所有者・グループ・その他)に読み書き実行権限を与えるため、重大なセキュリティリスクがあります。Webサーバー上で777のファイルがあると、攻撃者が任意のスクリプトを書き込み・実行できる脆弱性を生みます。本番環境では絶対に避けてください。WordPressのトラブルシューティングで「777にしろ」と古い情報があれば、それは誤りです。必要最小限の権限を設定するのが鉄則です。
ディレクトリのパーミッションは何が違いますか?
ディレクトリの execute(x)権限は「そのディレクトリに `cd` で入る・中のファイルを参照する」権限を意味します。ディレクトリへのアクセスには read(r)と execute(x)両方が必要で、ファイルを書き込みたければ write(w)も必要です。一般的なWebコンテンツディレクトリには 755(drwxr-xr-x)、ユーザーホーム配下のディレクトリには 750 や 700 を使います。
SSHの秘密鍵のパーミッションは?
SSH秘密鍵(~/.ssh/id_rsa、~/.ssh/id_ed25519 など)は **600(rw-------)** にする必要があります。OpenSSHはパーミッションが広い場合(特にグループや他人に読まれる状態)に「Permissions are too open」エラーを出して接続を拒否します。修正方法: `chmod 600 ~/.ssh/id_rsa`。`~/.ssh` ディレクトリ自体は700推奨です。公開鍵(id_rsa.pub)は644でOKです。
数字表記と記号表記の違いは?
数字表記は8進数で表す(例: 755)、記号表記はrwx形式(例: u=rwx,go=rx)で表現します。数字は簡潔ですが慣れが必要、記号は直感的ですが冗長です。コマンド例: `chmod 755 file` と `chmod u=rwx,g=rx,o=rx file` は同じ結果。記号表記は加減算(`chmod +x`、`chmod g-w`)も使え、特定の権限のみ追加・削除する際に便利です。
SUID / SGID / Sticky bit とは?
通常の3桁パーミッション(例: 755)の前に1桁追加した4桁表記(例: 4755)で特殊権限を表します。(1) SUID(4xxx): 実行時に所有者権限で動作(passwd コマンド等)、(2) SGID(2xxx): グループ権限で動作(共有ディレクトリのファイル所有権継承)、(3) Sticky bit(1xxx): ディレクトリ内のファイルを所有者のみ削除可(/tmp 等)。セキュリティ上の注意が必要な機能です。
umaskとは何ですか?
umask は新規作成ファイルのデフォルトパーミッションを決める「マスク」値です。デフォルトのファイル権限666(rw-rw-rw-)から umask の値を減算した値が新規ファイルの権限になります。一般的な umask 022 では、666 - 022 = 644 が新規ファイルの権限。`umask 077` にすると 600(自分以外読めない)になり、機密性の高い環境向けです。`/etc/profile` で全体設定できます。
WordPressやWebアプリの推奨パーミッションは?
一般的な PHP アプリの推奨設定: (1) ディレクトリ 755、(2) PHPファイル 644、(3) wp-config.php / .env など機密情報ファイル 600 または 640、(4) アップロード先ディレクトリ(wp-content/uploads等)755、(5) Webサーバープロセスに書き込み許可が必要な場合のみ775または所有者をWebサーバーユーザーに変更。.htaccess は644 が標準です。