このページは過去に掲載していたものをそのまま使用しています。
rpc, ftpd, あるいは inetd といったネットワークに 関係のあるプログラムの設定を中心に書いていきましょう。
いろんなところにあるtcp_wrappersを取ってきてコンパイルします。 tcp_wrappersについては、解説されている参考文献がいろいろあるので たとえば、日本語で書か(翻訳さ)れたLinuxに関する文章を集めた、 JF文書に含まれているSecurity-HOWTO などが参考になるでしょう。
コンパイルする際には、ログ収集の際の問題からMakefileで FACILITY= LOG_LOCAL5あるいはSTYLE = -DPROCESS_OPTIONS といった点を修正しています。またgccを使うために、sunos5のアクション部分の 記述にCC=gccも加えました。このような変更は十分にコメントや 各種ドキュメントを読み影響を考えた上で行なってください。
tcp_wrappersをコンパイルしてすると、tcpdというプログラムができます。 これを/usr/sbinにコピーしておきます。/etc/inetd.confを修正して相手先 IPアドレスでアクセスを制御できるようにしましょう。 簡単な例を挙げておきます。
# 変更前 telnet stream tcp nowait root /usr/sbin/in.telnetd in.telnetd # 変更後 telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd in.telnetd
標準ではない、例えば/usr/local/bin/bashをログインシェルにした 場合には必ず/etc/shellsを修正するようにしましょう。ftpdはこのファイル にないログインシェルを持つユーザーにはサービスを提供しません。
tcp_wrappersの項で作成したtcpdは、接続記録をsyslogdを介して保存する事が できます。syslogdの記録には完全性において問題があると言う人もいますが、 そういう点が気になる人はdaemontools 0.61と ucspi-tcp 0.84を使ってください。
# /etc/syslog.conf に追加するべき行 local5.info /var/adm/tcpdlog