ネットワークセキュリティ施行実験
ここでは、OSNで行われているセキュリティ対策についての情報を示します。
OSNでは外部ホストからの進入を防ぐために、以下のようなセキュリティ対策を行っています。
1)DMZ(DeMilitarized Zone)の設置
OSNにおいて、対外的に行うインターネットサービス(WWW、FTP、DNS、IRC、News、etc)を行っているホストは、このDMZに設置し、それ以外のホストとネットワークを切り離すことにより、OSNのネットワークの安全性を強化させています。学外からのアクセスは全てDMZ内のホストで受け付けるようにし、学外からOSNへのアクセスは遮断するようにしています。例えば学外からOSNへアクセスする場合は、一旦DMZ内のホストへログインしてから、OSNホストへログインする、という方法をとります。

図1 DMZ (Demilitarized Zone)
2)ルータによるフィルタリング
OSNのゲートウェイとなるCiscoルータでは、access-listによる厳しいアクセス制限を行っています。特にOSN外部からOSN内部へ入ってくるパケットに関しては、ホストごとのアクセス制限に加え、ポートごとのアクセス制限も行っています。ポート番号0〜1023のウェルノウンポート、及び1024〜65535のエフェメラルポートにおいて不必要なポートを塞ぎ、またポートごとに許可するホスト制限を行っています。ここで制限するポートに関しては、サブネットを含めた全てのホストの使用ポートを把握し、それによって必要なアクセス制限を行います。また、全てのポートを閉じて必要なポートを開く形の制限を採っていないため、それぞれのホスト単位でのセキュリティ設定は厳重に行っています。
図2 access-listによるホストアクセス制限例
図3 access-listによるポートアクセス制限例
図4 ルータにおけるフィルタのイメージ
3)telnetアクセスの制限、及びssh(Secure SHell)の使用
学内、学外からのOSNのtelnetアクセスはルータとホストによって厳しいアクセス制限が行われており、不正侵入者からネットワークを保護しています。ルータにおけるtelnetの制限としては、学外からのtelnetアクセスを全て遮断し、学内からは主要ホストからのみtelnetアクセスを許可しています。
OSNのほぼ全てのホストにおいてtelnetは禁止されており、代わりにssh(Secure SHell)を用いたアクセスを使用しています。 sshとは、
通信路を流れるデータを暗号化し、通信路を盗聴する者からパスワードなどの情報を保護するものです。このsshのアクセスは、学内からは全て許可し、学外からはDMZに設置された、ssh用のgatewayホストにのみアクセスは許可します。さらに、このgatewayホスト及びOSN基幹ホストにおいては、RSA認証(RSA暗号化を用いたパスワードによる認証)によるアクセスのみを許可しています。

図5 telnet&sshのアクセス制限
4)APOPの使用、POP/IMAPのアクセス制限
POPパスワードは、ネットワーク上を平文で流れてしまうため、OSNではパスワードを暗号化するAPOPを使用しています。また、POP、IMAPのアクセスは、学内からのみ限定したホストへアクセスを許可し、学外からのアクセスは全て禁止しています。
5)FTPのアクセス制限
FTPのアクセスは、DMZゾーンに設置してある1ホストのみ学外からのアクセスを許可し、その他のホストは学内からのみアクセスを許可しています。

図6 POP/IMAP/FTPのアクセス制限
5)ソフトウェア、カーネルのバージョンアップ
ソフトウェアやカーネルはバージョンアップに伴いバグフィックス等が行われているので、セキュリティーホールを突いた攻撃を防ぐために、バージョンアップに対してすばやい対応を行っています。
6)Linuxホストにおける基本的なセキュリティ対策
- /etc/hosts.allow & /etc/hosts.deny ファイル
tcp_wrapperがリンクされてコンパイルされたサービス(又はアプリケーション)を、このファイルによってアクセス制限を行います。OSNでは、hosts.deny で全てのサービスのアクセス制限をdenyとし、必要なサービスのみをhosts.allowでアドレス制限付きで許可します。hosts.allowは必要最小限の範囲でアクセス許可を出します。
/etc/hosts.denyの設定例
ALL: ALL
/etc/hosts.allowの設定例
portmap:
sshd:
wu.ftpd:133.13.26.0/255.255.254.0
133.13.0.0/255.255.0.0
133.13.0.0/255.255.0.0 - /etc/inetd.conf ファイル
サービスには2種類あり、一つは、ホスト起動と同時に起動し、システムに常駐しながら呼び出されるものを待つもの(常駐型サービス)と、もう一つはサービスが呼び出されたときに起動して、処理が終了したら終了するもの(非常駐型サービス)です。/etc/inetd.confはこのうち非常駐型サービスを、/etc/services(サービスと使用ポートの対応表)に記述された内容にしたがって起動するための設定ファイルです。
ここでは、必要なサービス以外は全てコメントアウトし、不必要なサービスは全て停止させます。 - /etc/security ファイル
rootがログインできる端末を記述するファイルです。直接rootでログインできるのはコンソールだけにしておき、リモートからrootになる場合はsuコマンドを用いて行うようにします。そうすることで、リモートからの不正なrootアクセスを防ぎます。
/etc/securityの設定例
console
tty1
tty2
tty3
#tty4
#tty5
#tty6
#ttyS0
#ttyS1
#ttyS2
#ttyS3
#ttyp0
#ttyp1
#ttyp2
#ttyp3 - /etc/login.defs & /etc/groupファイル
/etc/login.defsはログインに関する設定ファイルで、その中の設定で”SU_WHEEL_ONLY”を”yes”にすることにより、suコマンドでroot権限を得られるユーザを制限します。その設定をしたあと、 /etc/groupのrootグループにsuを許可するユーザを記述します。ここでrootになれるユーザは、それなりのスキルを持ち、セキュリティに関する十分な知識を持つユーザのみを許可します。
/etc/groupの設定例
root:x:0:root,user1,user2,user3
7)定期的なセキュリティチェック
セキュリティチェックツール(ISSのInternet Scanner等)を用いて、定期的にOSN内のホストに対してセキュリティチェックを行う。それにより発見されたセキュリティホールはニュースにて全て報告し、該当ホストはその情報を元に対応を行っています。

図7 ネットニュースでのスキャン報告例