Linux
初心者
サーバー

サーバーの基本(3.パーミッションについて)

サーバーやネットワークについて勉強したことをまとめます。

1.サーバーとは何か
2.サーバーの種類
3.パーミッションについて
4.RAIDについて
5.TCP/IPについて

長くなるので、投稿を分けます。
この記事では、3.パーミッションについて記載していきます。

パーミッションとは

パーミッションとは、ファイルやフォルダのアクセス権のことをいいます。
自分が作成したホームページのデータを、他人に勝手に変えられてしまうと大変です。
そこで、ファイルやフォルダごとに、アクセス権を設定して、定められた人のみが変更できるよう設定することができます。

パーミッションには、3つの権限があります。
1.読み取り権限
2.書き込み権限
3.実行権限

<ファイルとディレクトリのパーミッションの違い>

アクセス権 ファイル ディレクトリ
読み取り権限 ファイルの内容を
読みだすことができる
ディレクトリ内のファイル一覧を読み取れるが、
ファイルへのアクセスやcdコマンドによる移動はできない
書き込み権限 ファイルの内容を
変更できる
ディレクトリ内にファイルを作成したり、
ディレクトリ内のファイルを削除したりできる
実行権限 ファイルをプログラムとして
実行できる
ディレクトリ内にcdコマンドで移動したり、
ディレクトリ内のファイルにアクセスできる

ディレクトリのパーミッションの場合、あくまで「ディレクトリ」に対するものなので、
その配下のファイルまで権限があるわけではありません。
ファイルはファイルで、ディレクトリはディレクトリで権限の設定が必要です。

例えば、システム内でアクセスログをファイルに書き込み、ダウンロードできる機能があるとします。
その場合、アクセスログを書き込むファイルには、読み取り、書き込み、実行全ての権限が必要となります。

パーミッションの見方

アルファベットで表される場合と、数値で表される場合があります。

● アルファベットの表記
読み取り権限 書き込み権限 実行権限
アルファベット表記 r w x
説明 (readのr) (writeのw) (executeのx)
数値表記 4 2 1

ターミナル上では、次のように表されます。

  -rw-rw-r--. 1 asaito asaito  193  5月  3 11:17 calender.txt
  -rw-rw-r--. 1 asaito asaito 2114  5月  3 11:15 calender2.txt
  -rw-rw-r--. 1 asaito asaito  220  5月  3 11:23 error.log
  -rw-rw-r--. 1 asaito asaito  122  5月  3 11:23 ls.log
  -rw-r--r--. 1 asaito asaito   14  4月 19 22:23 new_test.php
  -rw-rw-r--. 1 root   root     14  4月 19 22:22 test.php
  drwxrwxr-x. 3 asaito asaito   17  4月 29 23:19 top
  drwxr-xr-x. 2 asaito asaito    6  4月  1 12:45 ダウンロード
  drwxr-xr-x. 2 asaito asaito    6  4月  1 12:45 テンプレート
  drwxr-xr-x. 2 asaito asaito    6  4月  1 12:45 デスクトップ
  drwxr-xr-x. 2 asaito asaito    6  4月  1 12:45 ドキュメント
  drwxr-xr-x. 2 asaito asaito    6  4月  1 12:45 ビデオ
  drwxr-xr-x. 2 asaito asaito    6  4月  1 12:45 音楽
  drwxr-xr-x. 2 asaito asaito    6  4月  1 12:45 画像
  drwxr-xr-x. 2 asaito asaito    6  4月  1 12:45 公開

この一番左端にあるのが、パーミッションです。
例えば、一番上のcalender.txtの場合、
rw-rwr--となっています。3つずつユーザーごとに分けて権限が表示されています。

rw- rw- r--
所有者 グループ その他

この場合、所有者とグループには、読み取り権限・書き込み権限がありますが、実行権限がありません。その他ユーザーには読み取り権限しかありません。という意味になります。
( - (ハイフン)は権限がないという意味になります。)

所有者の左側にdと書いてあるものがありますが、これは、ディレクトリを表しています。

● 数値の表記

数値の表記では、各ユーザーごとに、数値を足して表記します。
例えば、上記のcalender.txtの場合、
アルファベット表記では、
-rw-rw-r--となっていましたが、
数値の場合、下記のように表されます。
rw- rw- r--
所有者 グループ その他
4+2 4+2 4
6 6 4

というように、rは4、wは2、xは1で表し、それを足した数値で表します。
上記の場合、664となります。

読み書き実行全ての権限を全てのユーザーが持つ場合は777となります。
この状態をフルパーミッションといいます。

パーミッションの変更方法

パーミッションの変更方法として、コマンドで変更する方法とFTPソフトで変更する方法の2つがあります。

● コマンドでの変更方法


パーミッションを変更できるのは、ファイル・ディレクトリの所有者、もしくはrootユーザーのみとなります。
パーミッションを変更するには、次のコマンドを使用します。
chmod アクセス権 ファイルまたはディレクトリ名

<chmodコマンドで使用できる記号>

記号 説明
操作対象 u 所有者
`` g 所有グループ
`` o その他ユーザー
`` a 全てのユーザー
権限操作 + アクセス権の追加
`` - アクセス権の削除
`` = アクセス権の指定
アクセス権 r 読み取り可能
`` w 書き込み可能
`` x 実行可能

● 実行例

先ほどのcalender.txtに、その他ユーザーにも書き込み権限を付与してみます。

[asaito@localhost ~]$ chmod o+w calender.txt
  • 実行結果
-rw-rw-rw-. 1 asaito asaito  193  5月  3 11:17 calender.txt
-rw-rw-r--. 1 asaito asaito 2114  5月  3 11:15 calender2.txt
-rw-rw-r--. 1 asaito asaito  220  5月  3 11:23 error.log
-rw-rw-r--. 1 asaito asaito  122  5月  3 11:23 ls.log
-rw-r--r--. 1 asaito asaito   14  4月 19 22:23 new_test.php
-rw-rw-r--. 1 root   root     14  4月 19 22:22 test.php
drwxrwxr-x. 3 asaito asaito   17  4月 29 23:19 top
drwxr-xr-x. 2 asaito asaito    6  4月  1 12:45 ダウンロード
drwxr-xr-x. 2 asaito asaito    6  4月  1 12:45 テンプレート
drwxr-xr-x. 2 asaito asaito    6  4月  1 12:45 デスクトップ
drwxr-xr-x. 2 asaito asaito    6  4月  1 12:45 ドキュメント
drwxr-xr-x. 2 asaito asaito    6  4月  1 12:45 ビデオ
drwxr-xr-x. 2 asaito asaito    6  4月  1 12:45 音楽
drwxr-xr-x. 2 asaito asaito    6  4月  1 12:45 画像
drwxr-xr-x. 2 asaito asaito    6  4月  1 12:45 公開

また、下のように数値で変更することも可能です。

chmod 666 calender.txt

実行結果は先ほどと同様になります。


● FTPソフトで変更する方法


ここでは、WinSCPを使用します。

右側のサーバー側で、変更したいファイルを選択し、右クリックを押し、プロパティを選択します。

パーミッションを変更説明.jpg

すると、次の画面が出ます。

2018-05-03 (3).png

下の方にあるパーミッションの部分にチェックを入れると権限が与えられ、外すと権限がなくなります。

参考資料

・「いちばんやさしいLinuxコマンド入門教室」著:中島能和 株式会社ソーテック社 2018年
・「スラスラわかるネットワーク&TCP/IPのきほん 第2版」著:リブロワークス SBクリエイティブ株式会社出版 2018年