tcp wrapper
2002924
大橋
牧之内研究室「インターネット実習」Webページ
http://www.db.is.kyushu-u.ac.jp/rinkou/internet/
inetd
ユーザーからサービスへの接続要求があっ
たとき必要なサービスを起動
/etc/inetd.confに記述
ユーザ
inetd
ftp
telnet
ssh
http
etc..
http
サーバー
inetd.conf
要求に応じて起動するサービスを記述
ftp stream tcp nowait root /usr/libexec/ftpd ftpd -l
・例
・サービス名
・ソケットの種類 TCPならstreamUDPならdgram
・プロトコル TCP or UDP
・フラグ wait or nowait
・実行ユーザ root, nobody など
・実行するプログラム
tcp wrapperとは?
inetdを使ってネットワークサービスを動
す場合、そのアクセスを制限
ユーザAinetd
ftp
telnet
ssh
http
etc..
サーバー
tcp
wrapper
ユーザB
×
ftp
http
tcp wrapperによる制限
現在はinetdtcp wrapperの機能が組み込まれ
ているのでtcpdを介さずともよい。
ftp stream tcp nowait root /usr/libexec/ftpd ftpd -l
ftp stream tcp nowait root /usr/sbin/tcpd ftpd -l
Tcp wrapperで制限
inetd.conf
hosts.allow , hosts.deny
接続を許可、拒否するホストを記述
/etc/hosts.allow, /etc/hosts.deny
現在、hosts.allowのみに記述
デーモン名:ホスト:allow or deny
telnetd : .db.is.kyushu-u.ac.jp : allow
ftpd : 192.168.33. : allow
ALL : 133.5.18.0/255.255.255.0 : allow
ALL : ALL : deny
・例
・アクセス制御の確認
tcpdchk -av・・・hosts.allowの書式のチェック
tcpdmatch
tcpdmatch デーモン名 アクセス元
% tcpdmatch ftpd 192.168.33.47
client: address 192.168.33.47
server: process ftpd
matched: /etc/hosts.allow line 2
option: allow
access: granted
% tcpdmatch ftpd ホスト名
client: address ホスト名
server: process ftpd
matched: /etc/hosts.allow line 4
option: deny
access: denied
・実験
inetd.confの書換え
kill -HUP inetdのプロセスID
hosts.allowの書換え
tcpdchk,tcpdmatchで、アクセス制御が行わ
れていることを確認
ポートスキャンを行い,アクセス制御が行わ
れていることを確認(open or filterd)