xinetdの設定

xinetdはinetdの代替として生まれて来ました。xinetdでは以下のような機能を持っています。

・IPによるアクセス制御

・ドメインによるアクセス制御

・サービスの提供時間

・接続数の制限

・ログ出力

 

従来のTCP_Wrapper+inetdより、サービスの提供時間や接続数の制限など機能は豊富と言えます。

もちろん、TCP_Wrapperと併用することも可能です。

 

xinetdの設定では、/etc/xinetd.confを編集することでも可能ですが、多くの場合、/etc/xinetd.d/以下にサービスごとの設定ファイルを設置します。

その場合、xinetd.confは最小限の設定にとどめ、細かい制御は各サービスの設定ファイルに任せるといいでしょう。

 

 

/etc/xinetd.confの設定例

まずは、xinetdデーモンの統一的な動作を決める設定ファイル、/etc/xinetd.confの設定例です。

/etc/xinetd.conf

defaults
{
    instances      = 100 <---最大接続数を設定
    log_type       = SYSLOG authpriv <---ログの出力方法を指定、authpriv=認証(private)
    log_on_success =HOST PID <---サーバプログラム開始時のログ出力要素を指定
    log_on_failure =HOST <---サーバプログラム開始失敗時のログ出力要素を指定
}
includedir /etc/xinetd.d <---サービスの設定ファイルを格納している場所を指定しています。

*log_type = 例えば、/var/log/xinetdlogにすると、独自にログを取れます。

*指定できるロギングパラメータは、最後の’ロギングパラメータの値’を参照してください。

 

 

xinet.dでのサービス設定例

ここでは、ProFTPDをxinetdの管理下にしてサービスする場合の例を示します。

設定ファイルは、proftpdとし、/etc/xinetd.d/以下に配置します。

 

proftpdの内容

/etc/xinetd.d/proftpd

# default: on
# description: The Proftpd FTP Server
service ftp <---サービス名,/etc/serviceと同一名を使用すると、基本設定を引き継げます。
{
     disable             = no <---サービスのon/offを指定。no=サービスon、yes=サービスoff
     socket_type         =stream <---通常はstreamで
     wait                =no <---ウェイト状態にするかどうか
     user                =root <---サービスの実行ユーザー
     server              =/usr/sbin/proftpd <---サービス起動コマンドや起動スクリプト
     log_on_success      +=DURATION USERID <---ログイン成立時、ログファイルの記録する方法
     log_on_failure      +=USERID <---ログイン拒否(未成立)時に、ログファイルの記録する方法
     only_from           =192.168.0.0/24 <---アクセス許可のルールを指定。IPやドメインでの指定が可
     nice                =10 <---実行時のプロセス優先度
}
その他の設定には以下の物があります。
server_args=サービスの起動パラメータ
no_access=アクセス拒否のルールを指定。IPやドメインでの指定が可
access_time=<=10:00-18:00> と指定すれば、10時-18時のみアクセス可

 

 

ロギングパラメータの値 (/etc/inetd.confと共通)

パラメータ値を複数指定する場合は、スペースで区切って記入。

log_on_success
DURATION : リモートシステムがサービスを使用した時間の長さを記録します
EXIT     : サービスの終了ステータスか停止シグナルを記録します
PID      : リクエストを受信したサーバーのプロセスIDを記録します

log_on_failure
ATTEMPT  : 接続の失敗を記録します
RECORD   : サービスを開始できなかった場合にリモートシステムに関する情報を記録します。
           このオプションを使用できるのは、loginやfingerなど、特定のサービスだけです
log_on_success、log_on_failure共通
HOST     : リモートホストのIPアドレスを記録します
USERID   : RFC1413で定義されている方法を使用したリモートユーザーを記録します

Leave a Comment


NOTE - You can use these HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <img localsrc="" alt="">