Security Tips
 

Linuxでアカウントのログイン時間を制限する

たかはしもとのぶ
2004/8/4

 セキュリティ強化の一環として、一般のアカウントについてはログインできる時間帯を制限したいということも多いだろう。一般的なLinuxディストリビューションでは、pam_time.soというPAMモジュールを有効にして、/etc/security/time.confファイルで設定を行なうことにより、この要件を実現することができる。

●/etc/security/time.confファイルの文法

 このファイルには、以下のような形式で設定を記載する。

services;ttys;users;times

 それぞれのフィールドの意味は、表1を参照のこと。

フィールド 設定例 意味
services ssh/telnet/samba このルールを適用するPAMのサービス名を指定する
ttys tty*/* このルールを適用する仮想端末名を指定する
users monyo|user1 このルールを適用するユーザを指定する
times Al0000-2400 ログイン可能な時間を指定する
表1 各行の意味

 timesフィールドには、ログインを許可する時間帯を

[曜日][開始時間]-[終了時間]

の形式で記載する。曜日は表2のような略称で記載する必要がある。複数の曜日を指定する場合は、「MoWeTh(月曜日、水曜日、木曜日)」のように連続して略称を記述する。

略称 意味
Mo 月曜日
Tu 火曜日
We 水曜日
Th 木曜日
Fr 金曜日
Sa 土曜日
Su 日曜日
Wk 平日(月曜日から金曜日)
Wd 休日(土曜日、日曜日)
Al すべて
表2 曜日の略称

 曜日指定に続けてログイン可能な時間帯を24時間表記で記載する。例えば、「MoWeTh0900-1800」は、月曜、水曜日、木曜日の9時から18時を意味する。以下幾つか例を示すので、参考にしてほしい。

login;* & !tty*;*;Wk0900-1800

 すべてのユーザーについて、login(telnetコンソールなど)経由でのすべての接続を平日(月から金)の9時から18時に制限する。ただし、コンソール(tty*)からの接続は対象外。

*;*;test1|test2;MoWeThSa0900-1800

 test1およびtest2ユーザーについて、コンソール(tty*)から以外のすべての接続を月、水、木、土の9時から18時に制限する

●pam_time.soの有効化

 ログイン可能な時間帯を制御するには、最終的にpam_time.soを有効化する必要がある。この設定はディストリビューションごとに異なる。以下にFedora Core 2とDebian/GNU Linux 3.0の例を示す。これ以外のディストリビューションについては、各ディストリビューションのドキュメントを参照してほしい。

・Fedora Core 2

 ここではFedora Core 2の例を示すが、Red Hat Linux Publisher's Edition 9など、他のRed Hat系ディストリビューションも基本的には同様の設定となる。基本的には共通のPAM設定ファイルである/etc/pam.d/system-authファイルを以下のように修正すればよい。

...
account  required   /lib/security/$ISA/pam_unix.so
account  requisite   /lib/security/$ISA/pam_time.so ← この行を追加
...

・Debian GNU/Linux 3.0

 Debian GNU/Linuxの場合、アプリケーションごとに設定ファイルが分かれている。例えばコンソールやtelnetなどでの認証に関連するloginの設定を行うには、/etc/pam.d/loginを以下のように修正すればよい。

...
# Uncomment and edit /etc/security/time.conf if you need to set
# time restrainst on logins.
# (Replaces the `PORTTIME_CHECKS_ENAB' option from login.defs
# as well as /etc/porttime)
account requisite pam_time.so ←この行のコメントを外す
...

 この他SSHの設定を行うには、/etc/pam.d/sshに

account requisite pam_time.so

という行を追加するなど、アプリケーションごとに設定を行っていく必要がある。

Security Tips Index



Security&Trust フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Security & Trust 記事ランキング

本日 月間