11) オープンソース導入事例4
最終回の今回は、オープンソース導入事例の4回目としてイントラネット・サーバー群の構築についてのご紹介です。
インターネットリサーチ・コンサルティング・企画、ウェブ翻訳から、Web制作、システム開発までオープンソース・ネットワークビジネスを提供
イントラネット・サーバー群の構築
squidプロキシ・サーバーの設定
プロキシ・サーバーは、ネットワーク・セグメント間のアクセスを一元管理し、特定の接続のみを許可し、不正アクセスを遮断する他、HTTP接続を中継するサービスを提供します。
ここでは、代表的なproxyサーバー・パッケージであるsquidを導入し、webminを用いたアクセス制御定義の設定方法を紹介します。アクセス制御定義とは、接続を許可するIPアドレス範囲にACL(Access Control List)名を付与し、所属するIPアドレス群に対して、どの様な種類の接続を許可、若しくは、制限するかの優先順位を定義し、設定することであり、以下にwebminを用いた具体的な設定手順を解説します。
webminを起動し、「サーバ」より「Squid プロキシ サーバ」の画面で「キャッシュを初期化」ボタン押下により、 先ずsquidキャッシュ・ディレクトリーを初期化します。

図11.1. Squidプロキシ・サーバーの設定
引き続き同画面から、図11.1.に示す「クライアントアドレス」を選択し、「新規のACLを作成」ボタンを押下すると、図11.2.に示す「ACL(Access Control List)の作成」画面が起動されます。ここでACL名、接続を許可するIPアドレス、及び、ネットマスクを設定します。

図11.2. ACLの作成
ACLに対する制限を設定するため、「プロキシ制限」選択により図11.3.の画面を起動し、図11.2.で定義したACL名に一致するIPアドレス群に対して、アクションを「許可」に設定し、引き続き、ACL毎のプロキシ制限の優先順位を設定します。

図11.3. プロキシ制限の作成
図11.4.に表示される情報は、優先順位の高い順に表示され、いずれにも属さないACLは末尾で全てが拒否される構造として定義されます。そこで、図11.2.にて設定したACLは、初期値として優先順位が最も低いものとして定義されるため、図11.4.の通り、最も低い優先順位とすべきACL「all」の直前に移動する必要があります。

図11.4. プロキシ制限順位設定
引き続き、「管理オプション」の「表示するホスト名」にて、設定ホスト名を入力し、設定を完了します。
ntpサーバーの設定
ntpタイムサーバーはイントラネット上の全てのマシンに対し、標準時を提供することを目的に設置されます。
同サーバーの標準時情報は、例えば国立天文台のntp(Network Time Protocol)iサーバー等から取得することができ、ntp設定ファイルである「/etc/ntp.conf」を下記の通り編集iiし、設定を完了します。

上記は、ntpサーバー取得先のIPアドレスを「192.168.1.10」の場合としています。また、サービスの起動には、「ntsysv」を立上げ、「ntpd」にチェック(*)を入れ、「service ntpd start」にてサービスを起動します。
DHCPサーバーの設定
ネットワーク接続時にIPアドレスを自動設定するDHCP(Dynamic Host Configuration Protocol)サーバーを構築します。Client PCは、IPアドレスを取得する際、ブロードキャスト・パケットを利用するため、原則としてDHCPサーバーはセグメント毎に配置する必要があります。
但し、大規模LANでは、リレー・エージェントを利用し、異なるセグメントへのパケット通信を可能とする環境を構築します。この手段により、複数のDHCPサーバーを統合し、導入サーバー数の削減・運用管理コストの低減を図ることができます。
一方、DHCPで割り当てられるマシンの名前解決には、同一セグメント上のWindowsベースの利用であればNetBIOSを用いることができますが、セグメント間に跨る名前解決が必要な場合には、DDNS(Dynamic DNS)を利用する必要があります。
ここではwebminを用い、「DHCPサーバー」より「新規のサブネットの追加」を選択し、図11.5.に示すようにネットワーク・アドレス、ネットマスクとDHCPを実行するIPアドレスの範囲を設定します。

図11.5. DHCPの設定
引き続き、「クライアントオプションの編集」にて図11.6.に示す「Dynamic DNS update style」にて適切な項目を選択iiiし、設定を終了します。

図11.6. DDNSの設定
設定完了後、「ntsysv」を起動し、dhcpdのチェック(「*」) を確認した後、「service dhcpd start」と入力し、設定内容を有効にします。
LDAPの設定
TCP/IP上で動作するクライアント側からX.500対応のディレクトリー・サービスにアクセスするためのクライアント・サーバー・プロトコルであるLDAP(Lightweight Directory Access Protocol)を設定します。この設定によりLDAPをサポートするディレクトリー・サービスを直接検索・参照することができるようになります。
ここでは、Linux上でWindowsユーザーを統合管理することを目的に、Sambaと組み合わせることで、WindowsネットワークのPDC(Primary Domain Controller)として機能させます。
Red Hat Linuxインストール手順にて、Linux標準のLDAPサーバーであるopenldapが自動インストールされます。しかし、Sambaのインストールは、LDAPとの連携iv、及び、日本語環境の利用の視点から、ソースRPMパッケージの再構築、または、ソースファイルからのコンパイルが必要となります。
Sambaの設定
SambaとはUNIXでSMB(Server Message Block)を使ったサービスを提供するためのパッケージであり、ネットワークを通じてWindowsマシンにファイル共有やプリンター共有などのサービスを提供します。ここではファイルサーバーとして活用することとします。
Samba日本語版は、外字や機種依存文字対応等の日本語対応機能が強化されており、管理ツールであるSWATが日本語化されている等の利点があります。
本サーバーの設定に関しては、様々な書籍v、また、インターネット上に紹介されており、これらの手順に従い容易に稼動させることができます。
本システムはLDAPとの連携を取るため、Samba2.2日本語版をソースプログラムより、「--with-ldapsam」のコンパイルオプションを用いてコンパイルし、インストールviする必要があります。
そこで、configureは、下記までは、日本Sambaユーザ会から提供される設定方法viiに従い、

上記以降は,下記にて実行しますviii 。

引き続き、「smbldap-tools」ixをインストールし、LDAPとの連携を図ります。更に、「Convert-ASN1」x ,「perl-ldap」xi,「Net_SSleay.pm」xiiをインストールし、作業を完了します。
- 国立天文台, ”ネットワーク時刻同期システムの運用”. (online) available from <http://www.miz.nao.ac.jp/ntp.html>, (accessed 2003-12-29).
- 豪コーポレーション,”時刻の同期(NTPサーバ)の設定” . (online) available from <http://pc-unix.goco.ne.jp/ntp1.html>, (accessed 2003-12-29).
- 吉田智彦・関根達夫. Red Hat Linux 9サーバ構築完全攻略. ソフトバンクパブリッシング株式会社. p.699-709.
- 小田切耕司. ディレクトリ・サービス導入方法 複数サーバのユーザ管理を統合しよう. 日経Linux. 日経BP社. 2002.11, p.58-81.
- たかはしもとのぶ. 読切チャレンジ Sambaサーバを作ろう. 日経Linux. 日経BP社. 2003.12, p.89-104.
- 日本Sambaユーザ会. ”samba2.2日本語版インストール”. (online) available from <http://www.samba.gr.jp/doc/install_2.2/>, (accessed 2003-12-29).
- 日本 Samba ユーザ会.”sambaドキュメント”. (online) available from <http://www.samba.gr.jp/doc/index.html#translate_2.2>, (accessed 2003-12-29).
- David Trask. "The latest SAMBA-LDAP-PDC How-to". (online) available from <http://www.vcs.u52.k12.me.us/LDAP/The_SAMBA-LDAP_How-to.html>, (accessed 2003-12-29).
- “SambaとLDAPによるドメインコントローラ”. (online) available from <http://nagoya.cool.ne.jp/hoehoe_cool/linux/ldap.html>, (accessed 2003-12-29).
- “The NetBSD Packages Collection: textproc/p5-Convert-ASN1”. (online) available from <http://www.jp.netbsd.org/ja/JP/Documentation/Packages/list/textproc/p5-Convert-ASN1/README.html>, (accessed 2003-12-29).
- “Perl-LDAP Homepage “. (online) available from <http://perl-ldap.sourceforge.net/>, (accessed 2003-12-29).
- sampo. “Net::SSLeay.pm Home Page “. (online) available from <http://www.bacus.pt/Net_SSLeay/>, (accessed 2003-12-29).


