Let's Enjoy Network

山梨県立谷村工業高等学校 御影裕文
キーワード インターネット,サーバ,課題研究,地域


インターネット利用の意図
 本県では平成10年度に全県立学校が教育センター由でインターネットに接続された。そのとき,本校は教育センターに専用線接続となり,周辺地区学校へのアクセスポイントとなった。本校周辺の県立学校は最低1台のパソコンがダイアルアップルータ経由でつながっており,これらの学校にはHUBとLANケーブル,パソコンを追加すれば構内(校内)ネットワークを構築できる素地がある。
 そこで,課題研究の実習内容のまとめとしてテキストを作り,周辺学校の教員および地域の住民対象に小規模な研修会を開き,地域の人々とネットワークを共に楽しみたいと企画した。


1 実践内容
(1) 課題研究
1) 研究者 電子情報科3年「UNIX班」  生徒2名 指導教員2名
2) 期間 平成11年6月〜平成12年2月
3) 本年度の目標
 パソコンに UNIXを組込みさまざまなサーバ機能を設定して,OSやコンピュータネットワークについて学ぶ。
 Windows とUNIX を比較して両者の特長を調べる。
4) 主な使用機器など
 CPU:i486 66MHz, MEM:24MB, HDD:430MB ...1台 ,CPU:I486 100MHz,MEM:16MB,HDD:530MB...1台
 CPU:Pentium133MHz,MEM:48MB,HDD:2GB...1台 ,CPU:K6 330MHz,MEM:64MB,HDD6.4GB........2台
 CPU:Pentim
II4450MHz,MEM64MB,HDD8.2GB....3台 以上すべてDOS/Vマシン
 FreeBSD 2.6,2.8,3.3;Red Hat Linux 5.2;Turbo Linux 3.0,4.0,4.2;Windows98;WindowsNT Workstation版
5) OSの学習と実験
 OSの歴史について学んだあと,組み立てパソコンを組み立て,Windows95をインストールして学校のLANへ接続した。その後数台のパソコンを使ってWindowsNT,LinuxとFreeBSD等のインストールと設定を行った。また,各種サーバの設定を実験した。WWWサーバ,DHCサーバ,ファイルサーバなどの実験はうまく行った。またWWWサーバ上でCGIを動かすこともできた。しかし,Turbo Linux 4.2ではプリンタを動かすことに失敗し,プリンタサーバの実験ができなかった。またファイルサーバの実験はTurbo Linuxではうまくいったが,FreeBSDでは失敗した。Turbo Linux4.2,FreeBSDともにLANボードの2枚ざしとそれぞれのセグメントへの通信はできたが,ルータとしての実験にはまだ成功していないなど,まだまだ項目は多く残っている。
(2) テキストを作成
 うまく行ったWWWサーバ,DHCサーバ,ファイルサーバについてテキストをつくり講習に使うことができた。
(3) 校内LANの調査と整備
 学校のLANは増設に告ぐ増設で,最終的な系統がわからなくなってしまっていた。系統を調査して図面化し,HUBの段数が適正か調べた。また2000年問題に対応していない系統を切り離した。
以上参照URL  http://www.yamura-th.ed.jp/mikage/kadaiken99/

(4) 小規模な講習会を開催

1) 日程
 時間 7:00pm〜9:00pm
 12/10(金)概要,Turbo Linuxのインストール
 12/13(月)UNIXサーバの管理
 12/15(水)DHCPサーバ,WWWサーバ
 12/17(金)ファイルサーバ
 12/20(月)校内用ホームページ

     

    図1

     図2

 近隣の県立学校の先生を対象に文書とホームページで講習会案内と募集をした。計画の遅れによるPR不足と期末の忙しい日程にもかかわらず2名の先生が参加してくださった。学校側でこのために用意できた設備が3台と少なかったことと,実習中心の講習ということもあり,ちょうどよい規模であった。
2) TurboLinuxのインストール
 今回は手元にあった雑誌の付録Turbo Linux4.2配布版をインストールする。4.0のマニュアルはhttp://www.turbolinux.co.jp/products/pdfs/tlj40userguide.pdf からPDFファイルをダウンロードできる。
インストール前の準備
最低限以下の項目を調べておくべき
 ビデオカードの名前と使用チップ名,VRAMの容量
 ディスプレイの帯域周波数,水平同期周波数,垂直同期周波数,解像度とその時の垂直同期周波数
 LANカードの型名,割り込み要求番号,I./Oポート番号
今回使用する機器は以下のものである。ちなみにこれらはTurboLinuxに対応しており,インストローラが自動認識してくれる。
インストールするパソコン(3台)
CPU : Pentium
III450MHz;Memory : 64MB;HDD : 8.4GB
Video Card : 3D Navigator PA3000 Plus chip:NVIDIA RIVA TNT2 Model 64 VRAM:32MB
Display Pixel Clock(Max):110MHz H:30KHz〜70KHz V:47Hz〜150Hz
     640x480(75Hz),800x600(75Hz),1024x768(75Hz),1280x1024K(60Hz)
LAN Card: Acer LAN ALN-325 10/100 Base-TX Fast Ethernet Adapter ;   irq=11 io=0x9400

ネットワーク設定
Doman Name: yamura-th.ed.jp
Host Name: kaiho1 IP Address 192.168.0.11 Host Name: kaiho2 IP Address 192.168.0.12
Host Name: kaiho3  IP Address 192.168.0.13
Subnnet Mask:   255.255.255.0  Gate Way Address: 192.168.0.1 Domain Name Server: 192.168.0.1

インストールディスクの作成
 もし,CD-ROMを入れて再起動したときにCD-ROMから直接インストローラが立ち上がる設定にできなければ,Windows98上でインストールディスクを作成する必要がある。2枚のフォーマット済みのフロッピーディスクを用意し,LinuxインストールCD-ROMのDosutilsディレクトリにあるMkboot.batを実行して,「インストールディスク」を,Mkehw.batを実行して「追加モジュールディスク」を作成する。
空き容量の確保
 TurboLinux4.2をフルインストールするには2GB程度の空き容量を必要とする。機能を限定して使うなら200MB以上ぐらいからできる。今回使うパソコンのハードディスク容量は8GBで,前半4GBにはWindows98がインストールしてあり,後半4BGにLinuxを入れることにする。もし,現在Windows98の入ったパーティションの空いた部分にLinuxを入れたいときは,LinuxインストールCD-ROMのDosutilsディレクトリにあるFips.exeをハードディスクにコピーしてWindows98でデフラグを実行し,空き容量を確認する。その後Fips.exeを実行して新しいパーティションを作るべき空きスペースを確保する。
Linuxのためのパーティション
 もしあまり難しいことを考えたくなければFDISKの項目で自動を選べばインストローラが勝手にパーティションの設定をやってくれる。ただ,この方法だとシステム領域が小さくてかなり苦しそうである。システム領域が何かの事情でいっぱいになってしまうとシステムが立ち上がらなくなるので注意。今回は以下のようなディスク構成にする。

3.ディスクパーティションの例

マウントポイント

容量

備考

swap領域

100MB

メモリの2倍程度

/

200MB

システム領域

/usr

2500MB

アプリケーションなど

/home

1000MB

登録者の個人データ

/var

200MB

ログファイルなど

 

ターボツール
 TurboLinux独特の管理用ツール群が用意されている。これらはコマンド入力で起動する。
turbofscfg     ファイルシステム設定
turbohw      ハードウェア検出
turbonetcfg    ネットワーク設定
turbopkg      パッケージ管理
turbopnpcfg    プラグアンドプレー機器のリセット
turbopppcfg    PPP設定
turboprintcfg   プリンタの設定
turboservice   サービスマネージャ
turbosoundcfg  サウンド設定
turbotimecfg   時間帯(タイムゾーン)の設定
turbousercfg   アカウント(ユーザやグループの)管理
turbowmcfg    Window Managerの設定
xturbosoundcfg  X−Window上のサウンド設定


3) DHCPサーバの設定
DHCPサーバ
 DHCPサーバとはIPアドレスを割り振ってくれるサーバである。限られたIPアドレスを時々しか接続しない多くのコンピュータで有効に使いまわししたい時等に使われる。学校などでは固定アドレスの運用で十分と思うが,DHCPサーバがほしいときもある。たとえばノートパソコンなど常時接続でないクライアントパソコンの設定を同じ設定に統一したい場合など。
 ダイアルアップルータのMN128やそのコンパチ機などは,DHCPサーバ機能を持っており,簡単な設定でこの機能を使うことができる。ここではダイアルアップルータによる方法と,Linuxによる方法について述べる。
サーバ側の設定
ダイアルアップルータによる方法(MN128及びコンパチ機)

3. ダイアルアップルータ設定画面

 

 

 それぞれのネットワーク環境で設定IPアドレスは異なると思うが,初期設定ではダイアルアップルータのIPアドレスは192.168.0.1に設定されるので,この場合について述べる。
http://192.168.0.1
でクイック設定画面が出るので,[詳細設定][IP設定]を選択すると左の画面になる。(
3)
(a) IPアドレス/サブネットマスク長はディフォルトで192.168.0.1/24 192.168.0.1の部分を使う環境に合わせて変更する。
Cクラスのアドレスをルータを介していくつかのLANに分けていなければブロードキャストアドレスはディフォルトのまま。
(b) DHCサーバ機能をONに
(c) DHCPサーバが配布するIPアドレスの先頭アドレスと個数
(d) ドメイン名
(e) リース時間(ディフォルトでは24時間)
(f) AutoDNS機能をON
(g) [設定]をクリック

 

 

 

Linuxによる方法

1 まず,DHCPサーバがインストールされているか確認する。
インストールされているパッケージで dhcpを含むものを表示するために
   #rpm -qa |grep dhcp
とコマンド入力する。
   dhcpcd-1.3.17p13-1
などと表示されれば DHCPサーバがインストールされている。インストールされていなければ turbopkgコマンドなどでインストールする。

2 /etc/dhcpd.conf がなければ以下のように 作成する。
# dhcpd.conf
server-identifier kaiho1.yamura-th.ed.jp;           「自分のサーバ名に変更」
shared-network DHCP {
  subnet 192.168.0.0 netmask 255.255.255.0 {       「LANのネットワークアドレスとサブネットマスク」
    range 192.168.0.200 192.168.0.247;           「DHCPで自動的に割り振るアドレスの範囲」
    option broadcast-address 192.168.0.255;        「LANのブロードキャストアドレス」
    option routers 192.168.0.1;               「ゲートウェイアドレス」
    option domain-name "yamura-th.ed.jp";        「ドメインネーム」
    option domain-name-servers 192.168.0.1;      「ドメインネームサーバ」
    default-lease-time 6000; max-lease-time 72000;  「アドレスを割り当てている時間(秒)」 }}

3 次のようにコマンド入力して /var/dhcp/dhcpd.leasesという空のファイルを作成する。
touch /var/dhcp/dhcpd.leases

4 DHCPのデーモンを起動する
# cd /etc/rc.d/init.d
# ./dhcpd start

クライアント側の設定
Windowsの設定

4
(a) ディスクトップのネットワークコンピュータのアイコンを[右クリック]
[プロパティ]
または[スタート]
[設定][コントロールパネル][ネットワーク]
(b) TCP/IPが組込んでなかったら追加する。  
(c) TCP/IPのプロパティを選択
図5
(d) IPアドレスを自動的に取得を選択      (e) Windowsを再起動しDOS窓より,winipcfgコマンドを実行してIPアドレスを取得しているかどうかを確認する。
           

4.DHCPクライアント側設定1

 

5.DHCPクライアント側設定2

4) sambaによるファイルサーバ
 まずsambaがインストールされているか,確認する。
#rpm -qa |grep samba
インストールされていればsamba-2.0.5a-19990721などと表示される。
現在の設定ファイルを名前を変更して保存
# cp /etc/smb.conf /etc/smb.conf.orig
Linuxのユーザ情報からsamba用のパスワードファイルsmbpasswdを作成する。
# mksmbpasswd.sh < /etc/passwd > /etc/smbpasswd
samba利用者のパスワードを設定
# smbpasswd 利用者のID
パスワードを2回聞いてくるので入力する。
設定ファイル/etc/smb.confを書きかえる。

samba.conf 24行目から
#======================= Global Settings =====================================
[global]

# workgroup = NT-Domain-Name or Workgroup-Name
workgroup = MYGROUP kaiho    「Windowsで表示されるワークグループ(ドメイン)名 」
netbios name = kaiho1        「Windowsネットワークで表示されるこのサーバのコンピュータ名 」

hosts allow = 192.168.1. 192.168.2. 127.  192.168.0.0/255.255.255.0
71行目から
# You may wish to use password encryption. Please read
# ENCRYPTION.txt, Win95.txt and WinNT.txt in the Samba documentation.
# Do not enable this option unless you have read those documents
; encrypt passwords = yes          encrypt passwords = yes        「Windowsの暗号化パスワードを使う」
; smb passwd file = /etc/smbpasswd   smb passwd file = /etc/smbpasswd  「パスワードファイルの位置」
190行目あたりからさまざまな設定例が出てくるので注意
134行目付近に共有ディレクトリの設定を追加
                  「自由に書きこめる共用スペース」
[kyoyo]
comment = kyoyo space
browseable = yes
create mode = 0777
path = /usr/local/kyoyo
public = yes
only guest = yes
readonly = no

sambaを再起動する。
# cd /etc/rc.d/init.d
# ./smb restart
パソコン側の設定

6. sambaパソコン側1

7. sambaパソコン側2

8. sambaパソコン側3

6 ディスクトップの[マイコンピュータ]を右クリックするか,[スタートメニュー][設定][コントロールパネル][ネットワーク]を選択。[Microsoftネットワーククライアント][プロパティ]をクリック。
図7  [WindowsNTのドメインにログオンする]をチェック[WindowsNTドメイン名][OK]をクリック。
図8  [識別情報][コンピュータ名]の入力,[ワークグループ]の入力,[コンピュータの説明]の入力,[OK]クリック。
5) WWWサーバの設定
 TurboLinuxの場合インストール時 apache というwwwサーバが組込まれ,組込み時にhttpdの起動選択をしていればすでに動いている。ps ax コマンドを実行してhttpdが起動しているか見てみる。起動設定をしていないときは,スーパーユーザになってコマンドラインからturboserviceを実行し,httpdを[有効],[実行]を選択して起動する。
 ブラウザを立ち上げてhttp://localhost/を見てみるとapacheが動いているというページを見ることができる。データを置くべきディレクトリや設定ファイルの場所についての情報もある。TurboLinux4.2の場合ディフォルトでホームページのデータは/home/httpd/htmlというディレクトリに置くことになっている。このあたりはディストリビューションによって異なるので,設定ファイルを読むこと。また,ユーザのホームディレクトリの public_htmlというディレクトリに作成されたページは,http://サーバ名.yamura-th.ed.jp/~ユーザ名/ でアクセスできる。 
 apacheの設定は設定ファイルをエディタで編集するかコマンドラインからturbonetcfgを実行するとネット関係の設定項目のほかにapacheの設定をする項目もある。
 設定ファイルを編集する場合は/etc/httpd/confというディレクトリにある httpd.conf ,srm.conf , access.conf という三つのファイルを編集するが,編集が必要な個所はそれほどはない。(注:最近のapacheでは httpd.conf にすべての設定を書くよう奨励されているようだ。)これらのファイルを編集した後,
# cd /etc/rc.d/init.d
# ./httpd restart
と入力してapacheを再起動させると設定が反映される。

今回変更した個所を以下に示す。
httpd.confの132行目
User nobody wwwuser      「wwwやwwwuserなどのuserやgroupを作成し,これらに変更する。」
Group nobody wwwuser     
# ServerAdmin: Your address, where problems with the server should be
# e-mailed.
ServerAdmin root@localhost   「rootでログインするとメールが読めるが,管理者のメールアドレスに変更してよい。」
226行目
#ServerName servidor.pht.co.jp
ServerName kaiho1.yamura-th.ed.jp    「サーバ名をつける」

srm.confの28行目
DirectoryIndex index.html index.shtml index.cgi index.htm 「を追加する」
183行目
AddHandler cgi-script .cgi .pl 「を追加」
Access.confの20行目

<Directory />
Options FollowSymLinks    「すべてのディレクトリでシンボリックリンクが許される」
AllowOverride None       「すべてのディレクトリで.htaccessファイルによる変更を禁止する。
</Directory>             もし,.htaccessファイルを有効にしたければ#を先頭につけてコメント文にしてしまうこと。」

6) 校内用用ページをイントラネットで作成する利点
 生徒たちに情報発信についての教育をする上で,生徒が自由に書きこめるサーバがあれば便利である。
しかし,いきなり外部公開サーバに生徒に自由に書きこませることは危険が伴う。ネチケットに違反する内容や,著作権上問題になる個所,個人情報などを外部に漏らしてしまうなど,さまざまなふさわしくない内容を流してしまう危険がある。多くの生徒たちが頻繁に更新するページを常に隅から隅までチェックすることは不可能である。
 その点,校内専用ページならより危険が少ない。著作権などのシビアな問題にもそれほど神経をとがらせなくてもよい。外部公開用のページのようにセキュリティに気を使わなくてもよいので,生徒にCGI等のさまざまな実験を許す設定が可能である。
 しかし,校内専用ページといえども公共の場であり,情報発信するにあたってはネチケットについてしっかり教え,発信する情報に責任を持たせるべきである。
 教員側にとっても生徒に必要な教材を提供したり,教員間の連絡や,必要な情報の共有などに使うことができる。しかし,生徒には見せたくない情報を扱う場合は,パスワードによる保護やアクセスできる端末の制限などの設定が必要である。生徒用の実験・実習用のサーバとは別にすべきだ。
CGIを実行するにはpublic_htmlディレクトリなどに以下のような.htaccessファイルをいれておく。

Options ExecCGI
AddType text/x-server-parsed-html .htm
AddType text/x-server-parsed-html .htm
AddType application/x-httpd-cgi .cgi
AddType application/x-httpd-cgi .pl
AddType application/x-httpd-cgi .sh
AddType application/x-httpd-cgi .csh
AddType application/x-httpd-cgi .c
AddType application/x-sh .sh
AddType application/x-csh .csh
電子掲示板や多くのフリーで使えるCGIとその設定法がhttp://www.rescue.ne.jp/で紹介されている。

2 実践を終えて
 課題研究でサーバ構築に取り組んだのは今年がはじめてで,簡単なことにもつまづいたりして,計画した一つ一つの項目をなかなか1年間の課題研究だけでは消化しきれなかった。しかし,パソコンUNIXにより,安価にサーバを構築できることが確認できた。また,実際にやってみていろいろな可能性について見えてきた。
 1年間の課題研究の時間ではそれほど多くのことはできない。現在でも,興味を持った一部の生徒には学年に関係なく校内LAN上にクライアントを接続したり,サーバを立てることを許可している。しかし,このままでは実験により校内ネットワーク全体が悪影響を受ける可能性がある。そのため,インターネット接続ができる生徒用のローカルIPアドレスの空間と機材を用意しもっと自由な実験の場を提供できるよう努力したいと思っている。
 地域で講習会を開くことは,対象人数は少ないものの,集まりやすいという利点があり,これからも勉強会的に続けて行ければと思う。実際に共に作業することよる情報量は電子メールだけによるやり取りよりもはるかに大きいということを実感できた。また来てくださった人達がどのようなことをやりたくて,どんな問題にぶつかっているのかを聞くことができたので,共同研究や課題研究として取り組めると思う。これを機に地域での横のつながりを作っていきたい。

ワンポイントアドバイス
 パソコンUNIXは機能を絞れば古い機械でも充分動く。しかし,ビデオボードさえ対応していれば,ハードディスク容量の多い新しい機械に組込むほうがずっと簡単に組み込める。


参考文献
 「TurboLinux3.0ではじめるPC-UNIX」  海上 忍  株式会社技術評論社
 「できるLinuxサーバ構築編」 辻 秀典・渡辺高志・アクロバイト&インプレス書籍編集部編  株式会社インプレス

利用したURLなど
 ターボリナックスジャパン( http://wwwturbolinux.co.jp/)
 ネットサーフレスキュー【Web裏技】( http://www.rescue.ne.jp/)
 注:UNIXという名称は現在,米国X/Open Company Ltd.が独占的な使用許諾を有する米国登録商標である。
  Windows,Windows95,WindowsNTは米国マイクロソフト社の登録商標です。
  Mac OS及びMacintoshは,アップルコンピュータ・インクの登録商標または商標である。