FreeBSD QandA 747

FreeBSD QandA

Q. tcp_wrapper (tcp_wrappers/tcpd)で、条件に引っかかった時に
   メールで通知しようと、hosts.deny に shell command を指定した
   のですが、tcpdchk のチェックで bad option name エラーになります。

A. make 時のオプションで -DPROCESS_OPTIONS が指定されているか
   確認してください。packages を利用した場合および ports をそのまま
   利用して build した場合には -DPROCESS_OPTIONS は指定されています。

   (1) -DPROCESS_OPTIONS が指定されていない場合

       daemon_list : client_list [ : shell_command ]

     で、直接 shell_command を指定できます。詳しくは hosts_access(5) を
     参照してください。


   (2) -DPROCESS_OPTIONS を指定している場合(ports/packages 利用時)

       daemon_list : client_list : option : option ...

     のように、option 指定が拡張されていますので、hosts_options(5) を
     参照して設定してください。
    
     shell_command を指定する場合は、spawn オプション(子プロセスによる
     実行)指定を使用してください。
    
     例:
         ALL: ALL: spawn /usr/bin/mail -s '%s denied access from %c' root &

間違い・追加情報を見付けた場合は、 修正案の投稿のしかた を読んだ上で、
QandA@jp.FreeBSD.org まで お知らせください。