/etc/passwd

読み:エトセ・パスワード
外語:/etc/passwd
品詞:名詞

UNIXオペレーティングシステム(OS)で、符号化されたパスワードなどの情報を格納するために使われていたファイル。

ユーザID、パスワード、UID、GID、ホームディレクトリ、ログイン時に起動するシェルなどのパス、といった各種の情報が、一人一行でコロン(:)区切りで格納されている。

このファイルは誰でも読むことができる(パーミッションは例えば444)。

パスワードの符号化

誰でも読めるファイルであるため、ファイル内のパスワードは符号化されている。

パスワードの符号化には伝統的にDESが使用されていた。しかし、米国の輸出制限を嫌い、FreeBSDのようにMD5などのハッシュ関数が使われているシステムもある。

シャドウファイル

符号化されているとはいえ、現代のようにコンピュータが高性能化すると、総当たりでパスワードを解読される危険性がある。そこで現在ではセキュリティのため、/etc/passwdのパスワード部分は削除して格納するのが常識である。

パスワードが格納されたファイルは、同じ書式で別名ファイルとして用意し、こちらはroot以外は参照できないようにパーミッションが設定される。このようなファイルをシャドウファイルという。

シャドウファイルは、BSDでは/etc/master.passwdだが、System V系UNIXやLinuxでは/etc/shadowとなっている。

それでも/etc/passwdを残すのは、このファイルのパスワード部分以外を使用するプログラムが存在するためである。