2.6.4.3.2. アクセス制御オプション
xinetd
サービスのユーザーは、TCP Wrappers ホストアクセスルールの使用、xinetd
設定ファイルによるアクセス制御の提供、または両方の組み合わせを選択できます。TCP Wrappers ホストアクセス制御ファイル 「TCP Wrapper 設定ファイル」 の詳細は、を参照してください。
本セクションでは、
xinetd
を使用してサービスへのアクセスを制御する方法を説明します。
注記
TCP Wrapper とは異なり、アクセス制御の変更は、
xinetd 管理者が xinetd
サービスを再起動する場合にのみ有効になります。
また、TCP Wrapper とは異なり、xinetd を使用するアクセス制御は、
xinetd
が制御するサービスにのみ影響し ます。
xinetd
ホストのアクセス制御は、TCP Wrappers で使用される方法とは異なります。TCP Wrapper は、すべてのアクセス設定を 2 つのファイル内に配置 /etc/hosts.allow
しますが /etc/hosts.deny
、xinetd
のアクセス制御は /etc/xinetd.d/
ディレクトリーの各サービスの設定ファイルにあります。
xinetd
では、以下のホストアクセスオプションがサポートされます。
only_from
: 指定されたホストのみがサービスを使用できるようにします。no_access
: 一覧表示されたホストがサービスを使用しないようにします。access_times
: 特定のサービスを使用する期間を指定します。時間の範囲は、24 時間表記の HH:MM-HH:MM で指定する必要があります。
only_from
および no_access
オプションは、IP アドレスまたはホスト名の一覧を使用するか、ネットワーク全体を指定できます。TCP Wrapper と同様に、xinetd
アクセス制御が強化されたロギング設定と組み合わされると、各接続の試行を詳細に記録する間に、禁止されたホストからのリクエストをブロックし、セキュリティーを強化できます。
たとえば、次の
/etc/xinetd.d/telnet
ファイルを使用して、特定のネットワークグループからの Telnet アクセスをブロックし、ユーザーがログインできる時間範囲全体を制限することができます。
service telnet { disable = no flags = REUSE socket_type = stream wait = no user = root server = /usr/kerberos/sbin/telnetd log_on_failure += USERID no_access = 172.16.45.0/24 log_on_success += PID HOST EXIT access_times = 09:45-16:15 }
この例では、172.16.45.0/24
ネットワーク
(例: 172.16.45.2)からのクライアントシステムが Telnet サービスにアクセスしようとすると 、
次のメッセージが表示されます。
Connection closed by foreign host.
さらに、ログイン試行は以下の
/var/log/messages
ようにログインします。
Sep 7 14:58:33 localhost xinetd[5285]: FAIL: telnet address from=172.16.45.107 Sep 7 14:58:33 localhost xinetd[5283]: START: telnet pid=5285 from=172.16.45.107 Sep 7 14:58:33 localhost xinetd[5283]: EXIT: telnet status=0 pid=5285 duration=0(sec)
xinetd
アクセス制御とともに TCP Wrapper を使用する場合は、2 つのアクセス制御メカニズム間の関係を理解することが重要です。
以下は、クライアントが接続を要求する際に
xinetd
が続くイベントシーケンスです。
xinetd
デーモンは、libwrap.so
ライブラリー呼び出しを使用して TCP Wrappers ホストアクセスルールにアクセスします。deny ルールがクライアントと一致する場合、接続は破棄されます。allow ルールがクライアントと一致する場合、接続はxinetd
に渡されます。xinetd
デーモンは、xinetd
サービスと要求されたサービスの両方について、独自のアクセス制御ルールを確認します。deny ルールがクライアントと一致する場合、接続は破棄されます。それ以外の場合は、xinetd
は要求されたサービスのインスタンスを開始し、接続の制御をそのサービスに渡します。
重要
TCP Wrappers アクセス制御を
xinetd
アクセス制御とともに使用する場合は注意が必要です。設定が間違っていると、望ましくない結果が発生する可能性があります。