/etc/passwd
読み:エトセ-パスワード
外語:/etc/passwd
UNIX
系
オペレーティングシステム
(OS)で、符号化された
パスワード
などの情報を格納するために使われていたファイル。
目次
概要
特徴
補足
パスワードの符号化
シャドウファイル
概要
ログイン名、パスワード、
UID
、
GID
、
ホームディレクトリ
、ログイン時に起動するシェルなどのパス、といった各種の情報が、一人一行でコロン(:)区切りで格納されている。
このファイルは誰でも読むことができる(パーミッションは例えば644)。
特徴
: で区切られた書式例は次の通り。rootと、一般ユーザーhogeでの例を示す。
root:x:0:0:root:/root:/bin/bash
hoge:x:1000:1000:hoge,,,:/home/hoge:/bin/bash
各項目の意味は次の通り。rootとhogeの例を併記する。
ユーザーID (root や hoge)
パスワード (未使用のため x や * が書かれている)
UID
(0や1000)
GID
(0や1000)
ユーザーのフルネームや説明 (root や hoge,,,)
ホームディレクトリー (/root や /home/hoge)
シェル (/bin/bash)
2番目はかつてはパスワードが書かれていたが、セキュリティを考慮した現在は別の場所に書くようになった。これを
シャドウパスワード
という。
補足
パスワードの符号化
誰でも読めるファイルであるため、ファイル内のパスワードは符号化されている。
パスワードの符号化には伝統的に
DES
が使用されていた。しかし、米国の輸出制限を嫌い、
FreeBSD
のように
MD5
などのハッシュ関数が使われているシステムもある。
シャドウファイル
符号化されているとはいえ、現代のようにコンピューターが高性能化すると、
ブルートフォースアタック
(総当たり攻撃)でパスワードを解読される危険性がある。そこで現在ではセキュリティのため、/etc/passwdのパスワード部分は削除して格納するのが常識である。
パスワードが格納されたファイルは、同じ書式で別名ファイルとして用意し、こちらはroot以外は参照できないようにパーミッションが設定される。このようなファイルをシャドウファイルという。
シャドウファイルは、
BSD
では/etc/master.passwdだが、
System V
系UNIXや
Linux
では/etc/shadowとなっている。
それでも/etc/passwdを残すのは、このファイルのパスワード部分以外を使用するプログラムが存在するためである。
再検索