この特集のトップページへ
この回のトップページへ

tcp wrapperは今や標準のアクセスコントロール手段

 inetd.confの中で,「tcpd」という文字列が見られるだろう。最近のディストリビューションでは,この「tcpd」が使われており,「tcp wrapper」と呼ばれる外部からのアクセスをコントロールするプログラムだ。inetdから起動するサーバプログラムは,このtcp wrapperを経由することで,特定のホストからのアクセスのみを許可したり,逆にアクセスを拒絶したりすることができる。ホスト名/ドメイン名/IPアドレス/IPアドレスを指定することで制御が可能だ。これらの設定を記述するのが「hosts.allow/hosts.deny」ファイルである。

 それぞれのファイルには,「hosts.allow」が許可条件,「hosts.deny」には拒絶条件を記述する。通常は基本ポリシー(ほとんどを許可するのか,ほとんどを拒絶するのか)を決めてから,例外を設定することでアクセス制御を行う。

 たとえば,「基本的に接続は拒絶。LAN(内側)からの ftp と telnet は許可」や「基本的にすべて接続は許可。ただし特定のホストからの telnet 接続は拒絶」のように設定することができる。標準のディレクトリ先は,OSによって異なるため注意が必要だ。

OSによるhosts.allow/hosts.denyディレクトリの違い

Linux /etc/
FreeBSD (ports) /usr/local/etc/
Solaris /etc/

PREV 4/11 NEXT