Linuxサーバ設定

1999/11/16


■1.準備

(1)サブドメイン名取得

・プライマリドメインを管理している組織に「mydomain.hoge.co.jp」という名前の登録を依頼。

(2)ハードウェア情報収集

・もともとWindows95が入っていたので、デバイスマネージャを利用してNICの種類とI/Oポート/IRQの値を確認。

(3)フォーマット

・MS-DOSシステムフロッピーで起動。fdiskでHDDを初期化。

■2.OSインストール

・「TurboLinux4.2日本語版」CD-ROMを入れて再起動。自動的にインストーラが立ち上がる。

インストーラのメッセージ(簡略化) それに対する応答
色の選択:カラーディスプレイをお持ちですか? はい
キーボードタイプ:お使いのキーボードを選択して下さい。 jp106
PCMCIA:このコンピュータでPCMCIAを使用しますか? いいえ
ハードウェアを自動設定しますか? いいえ
パラレルポートIDE:パラレルポートIDE機器が必要ですか? いいえ
インストール元のメディアを選択して下さい。 CD-ROM
詳細設定:システムモジュール設定: LAN、iBCSを選択
SCSI設定:SCSI機器がありますか? いいえ
ディスクの分割方法:自動or手動? 手動
/dev/hda2をスワップとして100MB割り当て。
/dev/hda1をLinuxファイルシステムとして残り全部割り当て。(900MB弱)
TCP/IP設定: キャンセル(OS導入後で設定)
インストールタイプ: 「ネットワークサーバ(188MB)」を選択。
選択の確認:続ける?カスタマイズする? 続ける
(ここで「カスタマイズ」を選びGCCも選択しておいた方が楽)
カーネルの選択: ノーマルのカーネル(SMP,APMサポートなし)
LILO設定:どこにLILOをインストールする? /dev/hda マスタブートレコード
時間帯の設定: Japan
プリンタの設定: キャンセル
ISAプラグアンドプレイの設定: いいえ
PPPの設定: 終わる
起動サービス設定: デフォルトで設定されているものからapmd, pcmcia, soundを無効に
ルートパスワード設定: 設定
ユーザ設定: 自分のユーザ名を設定

・「完了」を押せば再起動してLinuxが立ち上がる。再起動の瞬間にCD-ROMを取り出すこと。


■3.各種設定

(1)ネットワークカード

 ・/etc/conf.modulesを編集。
     alias eth0 ne io=0x240

     ※イーサネットカードeth0のドライバとしてne(NE2000/ISA)を利
用。
       I/Oポート240。

 ・モジュール読み込み
      /etc/rc.d/rc.modules を編集。

        #!/bin/sh

        echo "Inserting iBCS module..."
        modprobe iBCS

        echo Local network setup for mola

        echo Configuring NIC
        modprobe ne io=0x240
        depmod -a

        echo ifconfig setup
        ifconfig eth0 172.27.68.50 netmask 255.255.255.0 broadcast 172.27.68.255
 up
        ifconfig eth0

        echo Setting default route
        route add default gw scbgw metric 1
        netstat -r


 ・起動時に読み込まれるように設定
     mkinitrd -f /boot/initrd `uname -r`
          lilo

 ・turbonetcfg起動
     設定を表示
     ネットワークインタフェース:追加
     インタフェースのタイプ:イーサネット
     eth0が表示されたら選択([*]をつける)
     編集(以下の値を入力)
       IP Address:     172.27.68.050
       Net Mask:       255.255.255.0
       Network Addr:   172.27.68.0
       Broadcast Addr: 172.27.68.255

  ・/etc/hosts編集(ホスト名はmola)
       127.0.0.1      localhost.localdomain  localhost
       172.27.68.50   mola.localdomain       mola       # Server
       172.27.68.1    scbgw.localdomain      scbgw      # Router

 ・設定確認
       /etc/rc.d/rc.modules 実行。

(2)DNSサーバ(BIND)設定

・リゾルバ設定ファイル /etc/resolv.conf編集
       domain mydomain.hoge.co.jp
       search mydomain.hoge.co.jp
       nameserver 172.16.1.50
      
・bind設定

(a)初期設定ファイル/etc/named.conf編集
   ※参照すべきファイルとドメインの基本情報

      zone "." {
              type hint;
              file "named.ca";
      };
      
      zone "0.0.127.in-addr.arpa" {
              type master;
              file "named.local";
      };
      
      zone "mydomain.hoge.co.jp" {
              type master;
              file "mydomain.hoge.co.jp";
      };
      
      zone "1.16.172.in-addr.arpa" {
              type master;
              file "1.16.172.in-addr.arpa";
      };
      
(b)ゾーンファイル/var/named/mydomain.hoge.co.jp編集
   ※mydomain.hoge.co.jpドメインに属するホスト名からIPアドレスを割り出す設定

     @ IN    SOA     mola.mydomain.hoge.co.jp. root.mydomain.hoge.co.jp. (
        99101802      ;serial
        8H            ;refresh
        2H            ;retry
        1W            ;expire
        1D)           ;minimum TTL
      ;
        IN    NS      mola
        IN    NS      ns.hoge.co.jp.
        IN    MX      10      mola
      ;
      mola    IN      A       172.16.1.50
      ;
      ns      IN      CNAME   mola
      mx      IN      CNAME   mola
      mail    IN      CNAME   mola
      www     IN      CNAME   mola
      ftp     IN      CNAME   mola
      pop     IN      CNAME   mola
      smtp    IN      CNAME   mola
      proxy   IN      CNAME   mola
      ;
      
(c)逆引きファイル/var/named/1.16.172.in-addr.arpa編集
   ※mydomain.hoge.co.jpドメインに属するホスト名をIPアドレスから割り出す設定

      @ IN    SOA     mola.mydomain.hoge.co.jp. root.mydomain.hoge.co.jp. (
        99101802      ;serial
        8H            ;refresh
        2H            ;retry
        1W            ;expire
        1D)           ;minimum TTL
      ;
        IN    NS      mola.mydomain.hoge.co.jp.
        IN    NS      ns.hoge.co.jp.
      ;
      50      IN      PTR     mola.mydomain.hoge.co.jp.
      
(d)ネームサーバ起動
     turboservice起動。namedを選択して「有効[E]」、「開始[S]」を実行。
      
(e)稼動確認
      nslookup www.mydomain.hoge.co.jp.(IPアドレスが返ってくればOK)
      nslookup 172.16.1.50(ホスト名が返ってくればOK)

 

(3)HTTPサーバ(Apache)設定

 (a)設定ファイル/etc/httpd/conf/httpd.confを編集
      ServerAdminに管理者のアドレスを設定:root@mydomain.hoge.co.jp
      ServerNameにサーバ名を設定:www.mydomain.hoge.co.jp
      
 (b)HTTPサーバ起動
      turboservice起動。httpdを選択して「有効[E]」、「開始[S]」を実行。
      
 

(4)SMTPサーバ(Sendmail)設定

 (a)CF設定ファイル/usr/src/CF-3.7Wpl2/mola.defを編集
   ※TurboLinuxだがOS_TYPEにlinux-redhatを指定するのがキモ
      
      #1 作成するsendmail.cfの種別の宣言
      CF_TYPE=R8V8
      DEF_ID='mola.def'
      
      #2 cf作成情報の設定
      VERSION_SEPARATOR=-
      LOCAL_VERSION=mx
      
      #3 OS種別(Master/OSTYPE下から選択)
      OS_TYPE=linux-redhat
      
      #4 ホストのオフィシャルアドレス(FQDNなホスト名)の設定
      OFFICIAL_NAME='mola.mydomain.hoge.co.jp'   # R8
      
      #5 ホストの別名の設定
      
      #6 ドメイン名の設定 (オフィシャルアドレス - ホスト名)
      MY_DOMAIN='mydomain.hoge.co.jp'
      MY_NAME='mola'
      
      #7 Fromアドレスの設定
      FROM_ADDRESS='$m'      # $mはドメイン名と同一を示す
      
      #9 MX sendmail / NOMX sendmailの指定
      MX_SENDMAIL=yes     # yesはsendmail.mx、noはsendmail.nomx
      
      #10 ホストの別名以外の受け取るべきアドレスの指定
      ACCEPT_ADDRS='$m'
      
      #12 BITNET宛メールの配送定義
      BITNET=no       # (mx/static/no)   noはDEFAULT_RELAYに転送
      
      #13 直接/間接配送の設定
      DEFAULT_RELAY='smtp:mx.hoge.co.jp'  #全てのメールをここに転送
      DIRECT_DELIVER_DOMAINS='hoge.co.jp'
      
      #15 Errors-To: ヘッダの解釈
      USE_ERRORS_TO='True'
      
      #16 配送エラーのpostmasterへの通知
      COPY_ERRORS_TO='postmaster'
      
      #17 mqueueに保存する期間
      MSG_TIMEOUT='7d/1d'    #7日保存/1日過ぎたものには未配送通知
      
      #18 プライマリMXホストでのAレコードの参照
      
      FORMAT_RECEIVED=Fold
      REJECT_JUNET=yes
      
      MCI_CACHE_SIZE=10
      PRIVACY_FLAGS='goaway'
      
      #19 不正な中継を禁止するルールセット(8.8以降)
      MAIL_RELAY_RESTRICTION=yes
      LOCAL_HOST_IPADDR=172.16.1
      LOCAL_HOST_DOMAIN=hoge.co.jp
      CLIENT_HOST_IPADDR=172.27
      CLIENT_FROM_DOMAIN=hoge.co.jp
      
 (b)CF設定ファイルからsendmail.cfを作成
      cd /usr/src/CF-3.7Wpl2
      make mola.cf
      cp mola.cf /etc/sendmail.cf
      
 (c)テスト
      /usr/sbin/sendmail -bt -C/etc/sendmail.cf(テストモードで起動)
      >3,0 root@mydomain.hoge.co.jp (自分宛配送テスト。returnsが表示されればOK)
      >3,0 kitada@u-netsurf.ne.jp (外部宛配送テスト。returnsが表示されればOK)
      ctrl+dでテストモード終了。
      
 (d)sendmail起動
      /etc/rc.d/init.d/sendmail restart
      

 

(4)POPサーバ(qpopper)設定

※実際にはqpopperの前にGCC(egcc)の導入を行っています。 (a)qpopperをWebからダウンロード。 http://eudora.qualcomm.com/free/servers.html (b)/usr/local/src下に解凍 cd /usr/local/src tar xvf (ダウンロードしたパス)/qpopper3.0b25.tar.Z (c)コンパイル cd qpopper3.0b25 ./configure make install -s popper/popper /usr/sbin (d)設定ファイル/etc/inetd.conf編集(以下の行を追加) pop-3 stream tcp nowait root /usr/sbin/tcpd popper -s (e)設定を反映 /etc/rc.d/init.d/inet reload

(5)ファイルサーバ(SAMBA)設定

 (a)設定ファイル /etc/smb.conf 編集
   以下の行はコメントアウト(;)されているので外して値を設定
     workgroup = my_workgroup               ;ワークグループ名
     server string = Samba Server on Linux ;コメント
     hosts allow = 172.16.1. 127.     ;接続許可するIPアドレス
     encrypt passwords = yes        ;パスワード暗号化
     smb passwd file = /etc/smbpasswd

   以下の行を追加
     coding system = cap

 (b)samba用パスワード設定
     smbpasswd -a ユーザ名

 (c)sambaサーバ起動
      turboservice起動。smbdを選択して「有効[E]」、「開始[S]」を実行。

■4.バックアップ

(1)環境設定

 重要な環境設定ファイルをバックアップするシェルを作成。 (/root/backup/backup.sh) ------------------------------------------------- #!/bin/bash # Linux Server Env. Backup Shell 99/10/20 # ROOT=/root/backup mkdir etc init.d apache named CF network echo '* Backup /etc.' cd /etc cp passwd group shadow inetd.conf sendmail.cf smb.conf aliases \ HOSTNAME hosts hosts.conf hosts.allow hosts.deny resolv.conf \ named.conf namedb conf.modules inittab ${ROOT}/etc echo '* Backup /etc/rc.d/init.d' cd /etc/rc.d/init.d cp httpd route ${ROOT}/init.d echo '* Backup Apeche.' cp /etc/httpd/conf/*.conf ${ROOT}/apache echo '* Backup BIND.' cp /var/named/* ${ROOT}/named echo '* Backup CF.' cp /usr/src/CF-3.7Wpl2/mola.def ${ROOT}/CF echo '* Backup network.' cp /etc/sysconfig/network ${ROOT}/network echo '* Compressing..' cd ${ROOT} tar cvf backup.tar * gzip backup.tar echo '* Done.' -------------------------------------------------  実行するとbackup.tar.gzというアーカイブファイルが生成される ので、これをFTPで適当なマシンに退避。

(2)ホームページ

/home/httpd 以下をtar,gzipでまとめてバックアップ。FTPで他の マシンへ退避。

(3)ユーザファイル

 ユーザ毎に対応