当サイトをご利用頂き有難うございます。
当サイトは今月末日にモールタイプの総合検索サイトへリニューアルの予定です。
サイト名も変更となりますが、今後とも宜しくお願いいたします。

2009年2月アーカイブ

既にCUI型で稼動しているメールサーバに管理効率化のため、
Postfix Admin を搭載し構築し直します。
これによりバーチャルドメイン対応でのメール運用がGUI化され、
Webブウウザより楽に運用可能となります。

初めてメールサーバを稼動させる場合はCUI型のFedora10(メールサーバー)も参考に構築します。

Postfix Admin はおおまかですが下記のような事がWebブウウザから操作出来ます。

  ・ ドメインの追加、変更、削除
  ・ メールアカウントやパスワード、転送設定等の追加、変更、削除

また、現在稼動しているデフォルトでのPostfixはMySQLに対応していないので、
MySQLに対応するように再構築します
更に、通信の暗号化対策としてSSLを運用します。


再構築後の動作環境

 Postfix(今回MySQL対応に再構築) + Dovecot + MySQL
                   + Apache + PHP + SSL + Postfix Admin


①PostfixAdminが使用するデータベース作成 

    # mysql -u ユーザ名 -p パスワード(例: mysql -u root -p mysql )
                     →  MySQLへログイン

     mysql> create database postfix;
                     →  postfix データベース作成(環境により名前は変更)

     mysql> use postfix;   → postfix デーダースへ接続

     mysql> grant all privileges on postfix.* to abc@localhost identified by 'パスワード';
                     → ユーザabcに全ての権限を付与しパスワードを設定

     mysql> exit;

②PostfixAdmin用のバーチャルドメインユーザーと専用ディレクトリを作成

     * PostfixAdminでは、データベース化されたユーザーにメールを配送します。

    # groupadd -g 10000 vuser
    # useradd -g vuser -u 10000 vuser
    # mkdir /home/mailvirtual
    # chown vuser:vuser /home/mailvirtual
    # chmod 771 /home/mailvirtual


③postfixをMySQLに対応させる

      * postfixのデフォルトパッケージはMySQLに対応していません。

    # cd /usr/local/src/  →  で作業します。
    # wget http://ftp.riken.jp/Linux/centos/5.2/os/SRPMS/postfix-2.3.3-2.src.rpm
    # mkdir -p /usr/src/redhat/SOURCES  →  SOURCESは大文字で!!
    # rpm -ihv postfix-2.3.3-2.src.rpm

      * 「警告:mockbuild は存在しません -root を使用します」と出ますが、
         ユーザー名 mockbuild が存在しないというだけで影響無いので無視します。

    #cd /usr/src/redhat/SOURCES
    # wget http://vda.sourceforge.net/VDA/postfix-2.3.3-vda.patch.gz
    # gunzip postfix-2.3.3-vda.patch.gz

    # cd /usr/src/redhat/SPECS/
    # cp postfix.spec postfix.spec.df  →  コピーしておきます。
    # vi postfix.spec  →  MySQLを有効にする設定とパッチの追加設定を行います。

      %define MYSQL 0  →  %define MYSQL 1 に変更 
         (省略)
      Patch10: postfix-2.3.3-vda.patch  →  追加
         (省略)
      %patch10 -p1 -b .vda  →  追加

    # yum -y install rpm-build db4-devel zlib-devel openldap-devel cyrus-sasl-devel pcre-devel mysql-devel openssl-devel
                       →  Postfixをリビルドする準備をします。(必要なものだけ)

       * リビルドするには下記パッケージが必要となります。

           # yum list | grep ファイル名(名前の一部でも可)

         としてインストール対象の確認をします。
              (installedと出たものは既にインストールされています。)

             ・ gcc
             ・ rpm-build
             ・ pkgconfig
             ・ db4-devel
             ・ zlib-devel
             ・ openldap-devel
             ・ cyrus-sasl-devel
             ・ pcre-devel
             ・ mysql-devel
             ・ openssl-devel


    # rpmbuild -ba postfix.spec  →  パッチをあてPostfixをリビルドします。

      * 暫し、先達たちの開発者に感謝しながら待ちます。

    # rpm -e postfix-2.3.3-2.1.el5_2  →  既にあるpostfixをアンインストールします。

      * 先の構築によりインストールしたpostfix関連のファイルで編集したものは、
                   xxx.xxx.rpmsave として保存されます。(同一ディレクトリ)

    # rpm -Uhv /usr/src/redhat/RPMS/i386/postfix-2.3.3-2.i386.rpm
                    →  出来上がったMySQL対応のpostfixをインストールします。

      * rpm -Uhv --force /usr/src/redhat/RPMS/i386/postfix-2.3.3-2.i386.rpm
        とすれば同一バージョンの場合はアンインストールとインストールが続けて行われます。

    # yum list | grep postfix  →  バージョンが変わっていることを確認。

    # vi /etc/yum.conf  →  postfixを自動アップデートしないように設定します。
                             (ここを飛ばすと後で大変なことになります。)

      exclude=postfix*  →  最後の行に追加

    # chkconfig sendmail off  →  sendmail の自動起動を停止
    # chkconfig postfix on  →  postfix の自動起動を開始


④バーチャル対応Postfixの設定(main.cfの編集)---右端の数値はおおよその行番号

      * postfixをアンインストールしたので新規の作成になります。
      * セーブ版より全コピーし修正すると間違いが発生する可能性大なので、
        ここは新規に作成としましょう。部分的に旧と同じところは、
                              rpmsave版 よりコピーします。

    # cd /etc/pki/tls/certs/
    # make mail.pem →  環境にあわせます。
    # /etc/postfix/main.cf

      myhostname = mail.abc.xyz.com →  追加71
      mydomain = abc.xyz.com →  追加79
      myorigin = $mydomain →  修正(アンコメント削除;必ず追加します)95 
      myorigin = $myhostname →  修正(アンコメント削除)96
      inet_interfaces = all →  修正(アンコメント削除)114
      #inet_interfaces = localhost →  修正(アンコメント追加)115
      #mydestination = $myhostname, localhost.$mydomain, localhost
                                   →  修正(アンコメント追加)159
     mydestination =
        →  空を追加(仮想サイトに登録したアドレス宛以外は受けない様にします。)163

      mynetworks = 192.168.0.0/24, 127.0.0.0/8 →  追加263
       relay_domains = $mydestination →  修正(アンコメント削除)294
      home_mailbox = Maildir/ →  修正(アンコメント削除)418
      smtpd_banner = $myhostname ESMTP unknown →  追加570
      #sendmail_path = /usr/sbin/sendmail.postfix →  修正(アンコメント追加)643
      sendmail_path = /usr/sbin/sendmail →  追加(CGIの挙動合わせ)644


----------------- 追加 ------------------------

     local_transport = virtual
     virtual_transport = virtual
     virtual_mailbox_base = /home/mailvirtual →  環境にあわせます。
     virtual_alias_maps = mysql:/etc/postfix/mysql_virtual_alias_maps.cf
     virtual_alias_domains = $virtual_alias_maps
     virtual_mailbox_domains = mysql:/etc/postfix/mysql_virtual_domains_maps.cf
     virtual_mailbox_maps = mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf
     virtual_minimum_uid = 10000 →  環境にあわせます。
     virtual_uid_maps = static:10000 →  環境にあわせます。
     virtual_gid_maps = static:10000 →  環境にあわせます。

     smtpd_sasl_auth_enable = yes
     smtpd_sasl_type = dovecot
     smtpd_sasl_path = private/auth
     smtpd_sasl_local_domain = $myhostname
     smtpd_client_restrictions = reject_rbl_client bl.spamcop.net
                                       →  環境にあわせます。
     smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination
     smtpd_sasl_security_options = noanonymous
     broken_sasl_auth_clients = yes

     smtpd_use_tls = yes
     smtpd_tls_cert_file = /etc/pki/tls/certs/mail.pem →  環境にあわせます。
     smtpd_tls_key_file = /etc/pki/tls/certs/mail.pem →  環境にあわせます。
     smtpd_tls_session_cache_database = btree:/etc/postfix/smtpd_scache
     tls_daemon_random_source = dev:/dev/urandom

----------------------------------------------------


⑤PostfixにあわせMySQL認証用ファイルを作成

    # vi /etc/postfix/mysql_virtual_alias_maps.cf

     user = abc
     password = ********
     hosts = localhost
     dbname = postfix
     table = alias
     select_field = goto
     where_field = address


    # vi /etc/postfix/mysql_virtual_domains_maps.cf

     user = abc
     password = ********
     hosts = localhost
     dbname = postfix
     table = domains
     select_field = domains
     where_field = domains
     additional_conditions = and active = '1'


    # vi /etc/postfix/mysql_virtual_mailbox_maps.cf

     user = abc
     password = ********
     hosts = localhost
     dbname = postfix
     table = mailbox
     select_field = maildir
     where_field = username


⑥MySQL用設定ファイル作成

    # vi /etc/dovecot-mysql.conf

     driver = mysql
     default_pass_scheme = PLAIN
     connect = dbname=postfix user=abc host=/var/lib/mysql/mysql.sock password=********
        →  環境にあわせ user host password を設定します。

     password_query = SELECT password FROM mailbox WHERE username = '%u' AND active = '1'
     user_query = SELECT concat('/home/mailvirtual/', maildir) as home, 10000 as uid, 10000 as gid FROM mailbox WHERE username = '%u' AND active = '1'


⑦TLS セッションキャッシュマネージャの設定(master.cf の編集)

     * SSLの利用に必要です。

    # vi /etc/postfix/master.cf

      submission inet n - n - - smtpd  →  アンコメントを外します。
      smtps inet n - n - - smtpd  →  アンコメントを外します。
      -o smtpd_tls_wrappermode=yes  →  アンコメントを外します。
      -o smtpd_sasl_auth_enable=yes  →  アンコメントを外します。


⑧Dovecot の設定(dovecot.confの編集)

    # cd /etc/pki/tls/certs/
    # make mail.pem  →  鍵を作成します。
    # openssl x509 -in mail.pem -outform DER -out mail.der
                    →  クライアント向けインポート用サーバー証明書作成
    # cp /etc/dovecot.conf /etc/dovecot.conf.save
    # vi /etc/dovecot.conf

----------------- 修正内容--右端の数値はおおよその行番号--------------------------------

      protocols = imap imaps pop3 pop3s  →  変更(アンコメントを外す)20
      listen = [::]  →  変更(アンコメントを外す)39
      log_path = /var/log/dovecot.log  →  変更(アンコメントを外しパス追加)61
      ssl_disable = no  →  変更(アンコメントを外す。disable+no = yes。へんなの!!)85
      ssl_cert_file = /etc/pki/tls/certs/mail.pem  →  変更(追加。鍵ファイルを指定)93
      ssl_key_file = /etc/pki/tls/certs/mail.pem  →  変更(追加。鍵ファイルを指定)94
      verbose_ssl = yes  →  変更(アンコメントを外しno→yes;ログ解析用)119
      mail_location = maildir:/home/mailvirtual/%d/%u  →  変更(追加)213
      first_valid_uid = 10000  →  変更(アンコメントを外し数値は環境に合わせ変更)330
      first_valid_gid = 10000  →  変更(アンコメントを外し数値は環境に合わせ変更)338
      protocol pop3 {  →  変更しません。575
       pop3_uidl_format = %08Xu%08Xv  →  変更(アンコメントを外す)626
      } →  変更しません。652
      auth_verbose = yes  →  変更(アンコメントを外しno→yes;ログ解析用)740
      auth_debug = yes  →  変更(アンコメントを外しno→yes;ログ解析用)745
      auth_debug_passwords = yes  →  変更(アンコメントを外しno→yes;ログ解析用)750 
      auth default {  →  そのまま。762
       #mechanisms = plain  →  変更(アンコメントを付ける)766
       mechanisms = plain login digest-md5 cram-md5 apop  →  追加771
       passdb pam {  →  そのまま。805
       }  →  そのまま。838
       passdb sql {  →  変更(アンコメントを外す)879
       args = /etc/dovecot-mysql.conf  →  変更(アンコメントを外しパス追加)881
       }  →  変更(アンコメントを外す)882
       userdb passwd {  →  そのまま。906
       }  →  そのまま。913
       userdb sql {  →  変更(アンコメントを外す)940
       args = /etc/dovecot-mysql.conf  →  変更(アンコメントを外しパス追加)942
       }  →  変更(アンコメントを外す)943
       socket listen {  →  変更(アンコメントを外す)988
       client {  →  変更(アンコメントを外す)999
       path = /var/spool/postfix/private/auth  →  追加(authは自動的に生成される)999
       mode = 0660  →  変更(アンコメントを外す)1005
       user = postfix  →  追加1006
       group = postfix  →  追加1007
       }  →  変更(アンコメントを外す)1008
       }  →  変更(アンコメントを外す)1009
       }  →  そのまま。1010
--------------------------------------------------------------

⑨認証ライブラリ関連のインストール

    # yum -y install cyrus-sasl-md5 cyrus_sasl_sql

      *  cyrus-sasl-plain も必要ですが、インストール済みでした。


⑩postfixadmin のインストール

    # cd /var/www   →  環境により変更
    # wget http://nchc.dl.sourceforge.net/sourceforge/postfixadmin/postfixadmin-2.3beta.tar.gz   →  ダウンロード

     * postfixadmin の最新版を確認します。バージョンpostfixadmin-2.3betaが最新版でした。

    # tar zxvf postfixadmin-2.3beta.tar.gz   →  展開
    # mv postfixadmin-2.3beta/ /var/www/postfixadmin   →  ディレクトリ名変更

⑪コンフィグファイルの編集

    # vi /var/www/postfixadmin/config.inc.php
----------------------------------------------------
     //$CONF['configured'] = false;
       $CONF['configured'] = true;   →  変更

     //$CONF['default_language'] = 'en';
       $CONF['default_language'] = 'ja';   →  変更

     $CONF['database_type'] = 'mysql';   →  既に登録されています。(mysqlの場合)
     $CONF['database_host'] = 'localhost';   →  既に登録されています。
     $CONF['database_user'] = 'abc';   →  登録
     $CONF['database_password'] = '********';   →  登録
     $CONF['database_name'] = 'postfix';   →  登録
     $CONF['database_prefix'] = '';   →  空のまま

     //$CONF['encrypt'] = 'md5crypt';
     $CONF['encrypt'] = 'cleartext';   →  変更

     $CONF['page_size'] = '100';   →  変更

     //$CONF['domain_path'] = 'NO';
     $CONF['domain_path'] = 'YES';   →  変更

     // Default Domain Values
     // Specify your default values below. Quota in MB.
     $CONF['aliases'] = '100';   →  変更
     $CONF['mailboxes'] = '100';   →  変更
     $CONF['maxquota'] = '300';   →  変更

     // Quota
     // When you want to enforce quota for your mailbox users set this to 'YES'.
     $CONF['quota'] = 'NO';   →  YESより変更
     $CONF['backup'] = 'NO';   →  YESより変更
     $CONF['sendmail'] = 'NO';   →  YESより変更
     $CONF['fetchmail'] = 'NO';   →  YESより変更
     $CONF['footer_text'] = 'Postfix Admin Top';   →  変更
     $CONF['footer_link'] = 'http://www.ホスト名ドメイン名/postfixadmin/';   →  変更
     $CONF['emailcheck_resolve_domain']='NO';   →  YESより変更
----------------------------------------------------

⑫Apache用の設定ファイル作成

    # vi /etc/httpd/conf.d/postfixadmin.conf

--------------  追加内容  (注:<>は大文字になっています。)--------------------------

     Alias /postfixadmin "/var/www/postfixadmin"

     <Directory "/var/www/postfixadmin">
      Order allow,deny
      Allow from all
     </Directory>

     <IfModule mod_rewrite.c>
     RewriteEngine On
     RewriteLog "logs/rewrite_log"
     RewriteLogLevel 0
     RewriteCond %{SERVER_PORT} !^443$
     RewriteRule ^/postfixadmin/(.*)?$ https://%{HTTP_HOST}/postfixadmin/$1 [L,R]
     </IfModule>
------------------------------------------------------------------------------------------

    # service dovecot start   →  dovecot の再起動
    # service postfix start   →  postfix の再起動
    # service httpd restart   →  Apache の再起動

⑬ファイアウォールの設定

   サーバーとルーターのポートへ設定

    465 番  SMTP over SSL
    993 番  IMAP over SSL
    995 番  POP3 over SSL

   を開けます。

    まさかと思いますが、25番(SMTP)、110番(POP3)、443番(https)もお忘れなく。

     * /etc/services にサービス名とポート番号の関連リストがあります。


⑬postfixadminのセットアップと管理者情報の登録

 クライアントpcより

   http://www.ホスト名ドメイン名/postfixadmin/setup.php を入力

     Postfix Admin Setup Checker が動作し環境のチェックをします。

      他はOKだったのですが

       # Warning: Depends on: IMAP functions - NOT FOUND
       To install IMAP support, install php5-imap

      と表示された(Warning情報は環境により違ってきます)ので、

     # yum -y install php-imap  としてインストール

            →  php5-imap の 5.1.6-20.el5_2.1 がインストールされました。

   再度

   http://www.ホスト名ドメイン名/postfixadmin/setup.php を入力 

     Checking for dependencies:の項目全て OK となりました。

   次にサーバーより

     # service httpd restart

   次にクライアントPCに戻り

      Postfix Admin Setup Checkerの最後にある、

       Admin(管理者のメールアドレス:唯のidなので架空アドレスでもok)、
       Password(パスワード) 
                                を入力しAdd Admin(登録)します。

         * 次の画面で表示された中にある click here からログインします。

⑭不要ファイルの削除

    # rm -f /var/www/postfixadmin/setup.php
    # rm -f /var/www/postfixadmin/motd*  →  不必要な表示をするので削除。


⑮動作確認

 クライアントpcより

   http://サイト名ドメイン名/postfixadmin/ を入力しログイン

 
 
 
 
いやー今回はハマリどころが多くどっぷりと浸かってしまいました。coldsweats02
とりあえずは完成です。
今回の構築をすることによりメールクライアントの設定も少々変更になります。
特にユーザー名にはPostfixAdminの仕様により「@ホスト名ドメイン名」が追加となります。


サーバー機能の応用例として、通信販売サイトを構築してみます。
通信販売サイトには EC-Cube を搭載します。

現在はレンタルサーバー各社が格安で高機能の通販型ショッピングカートを提供しているところが多くあります。
通常の通信販売サイトでは、業務工数を考えた場合、
レンタルのショッピングカートを利用したほうが対費用効果的には有効ですが、
ここでは、サーバー + α を目指し構築方法を取得します。

動作環境は下記の構築が済んでいる事を前提とします。
また、バーチャルホストが稼動している事も前提として設置しています。

  動作環境 : Apache(httpd) + PHP (v4.1.0以降) + MySQL(v4.1.x以降) + SSL(HTTPS通信)

先に構築したFedora10(EC-Cube)では、公開ディレクトリをホスト名の下の階層に取りましたが、
ここでは、ホスト名のアドレスで直に表示する方法を構築します。

①EC-Cube の導入

  1. データベース作成

    GNOME端末より

     # su + 管理者権限パスワード

     # mysql -u root -p

      Enter password:パスワード  →  MySQLへログイン

      mysql> create database ECCube;  →  ECCube データベース作成(環境により名前は変更)

      mysql> grant all privileges on ECCube.* to abc@localhost identified by 'パスワード';

  →  データベース ECCube に権限を設定(ユーザーabcに全て許可)

          * ユーザー名とパスワードはデータベースの接続情報に合わせます。

      mysql> exit;

     # /etc/rc.d/init.d/mysqld restart  →  MySQL の再起動

  2. 公開ディレクトリ作成

    GNOME端末より

     # su + 管理者権限パスワード

     # mkdir /var/www/html/virtual/++++++++.com/

        →  shop ディレクトリ作成(環境に合わせ変更します)

  3. EC-Cube のダウンロードと設置

    GNOME端末より

     # su -     + 管理者権限パスワード

     # cd /var/www/html/virtual/++++++++.com/

     # wget http://downloads.ec-cube.net/src/eccube-2.3.3.tar.gz   →  ダウンロードします。
          * 今日現在の最新バージョンは Version 2.3.3 でした。
          * EC|CUBE のサイトで最新版を確認しましょう。

     # tar xvfpz eccube-2.3.3.tar.gz   →  必ずpオプションを付けて解凍します。

          * パーミッションを保持したまま解凍する事ができます。
            (パーミッションを保持しないで解凍するとインストールの時に大変な事になります。)

     # rm eccube-2.3.3.tar.gz   →  不要ファイル削除

     # cd eccube-2.3.3   →  ディレクトリの移動

     # mv html /var/www/html/virtual/++++++++.com/   →  htmlディレクトリを、++++++++.com配下に移動します。

     # mv .htaccess /var/www/html/virtual/++++++++.com/   →  .htaccessを、++++++++.com配下に移動します。
  
     # mv data /var/www/html/virtual/++++++++.com/   →  dataディレクトリを、++++++++.com配下に移動します。

     # cd
 
     # rm -r /var/www/html/virtual/++++++++.com/eccube-2.3.3   →  空になったディレクトリは不要となる為、削除します。

     # chown -R abc:abc /var/www/html/virtual/++++++++.com/  →  所有者と権限を abc に変更

     # mv /var/www/html/virtual/++++++++.com/html/*.* /var/www/html/virtual/++++++++.com/

      →  htmlディレクトリ配下にあるフォルダーとファイルを全て、++++++++.com配下に移動します。(この時に.htaccessも忘れずに移動します。)

     # rm -r /var/www/html/virtual/++++++++.com/html   →  空になったディレクトリは不要となる為、削除します。


②ファイルの編集

    GNOME端末より

     # vi /var/www/html/virtual/++++++++.com/define.php

       /** HTMLディレクトリからのDATAディレクトリの相対パス */

        define("HTML2DATA_DIR", "/../data/");

          →  define("HTML2DATA_DIR", "/data/"); へ変更

       /** DATA ディレクトリから HTML ディレクトリの相対パス */

        define("DATA_DIR2HTML", "/../html/");

          →  define("DATA_DIR2HTML", "../"); へ変更

    インストーラ実行の時に読みにいくパスを変更しておきます。


③インストーラの開始

     http://サイト名ドメイン名/install/  →  ブラウザで開きます。

      後は画面の指示に従い設定します。


④インストールファイルの削除

    GNOME端末より

     # su + 管理者権限パスワード

     # cd /var/www/html/virtual/++++++++.com/install
     # rm index.php

⑤確認

   インストール時に設定したログイン名+パスワードで確認します。

     管理画面 http://サイト名ドメイン名/admin/

   お店の完成です。(、、、、、まだこれからでした。。)

     サイト http://サイト名ドメイン名/

バーチャルホストの構築に関してはFedora10(バーチャルホスト)を参考に構築します。

Web公開するツールとして、当サイトでは Movable Type の個人ライセンス(無償)を使用して構築していますが、
今回は、別のサーバーより引越しの方法を記載します。
引越し先のサーバーに Apache + Perl + MySQL の環境が構築済みなことが前提です。

初めての構築には、Fedora10(Movable Type)を参照願います。


①データベース以外のデータの引越し

 1. アップロード

    ダウンロードとアップロードにはLinuxに標準で搭載されている lftp ソフトを使い、
    引越し先のサーバーへデータ(Movable Typeの本体も含め、対象ディレクトリ全て)を
    アップロードします。

      $ lftp
      lftp :~> open -u <転送先FTPサーバのユーザ名> < 転送先FTPサーバのipアドレス>
      パスワード:xxxxxxxx
      lftp 転送先FTPサーバのユーザ名@転送先FTPサーバのipアドレス:~> mirror /var/www/html/ /var/www/html  →  ミラーコマンドで転送します(環境により読み替え)
      lftp 転送先FTPサーバのユーザ名@転送先FTPサーバのipアドレス:~>quit

 2. パーミッションの確認

    * Movable Type本体の配下にある xxx.cgi を引越し元のサーバーを参照し
      パーミッションが同一か確認します。

②データベースの作成(引越し先のサーバー) 

    # mysql -u ユーザ名 -p パスワード(例: mysql -u root -p mysql )

        →  MySQLへログイン

     mysql> create database mt;  →  mt データベース作成(環境により名前は変更)

     mysql> use mt;   → mt デーダースへ接続

     mysql> grant all privileges on mt.* to abc@localhost identified by 'パスワード';

                  → ユーザabcに全ての権限を付与しパスワードを設定

③データベースの引越し

  1. データを取り出します。(引越し前のサーバー)

    # mysqldump データベース名(mt) -uroot -pルートのパスワード -Q --opt -rバックアップ先ファイル名(/home/ユーザ名/デスクトップ/mt)

  2. ダウンロード(クライアントpc)

    Filezillaなどのソフトを使い、クライアントpcにデータ(mt)をダウンロードします。

  3. アップロード(引越し先のサーバーへ)

     ディレクトリを指定し(/home/ユーザ名/Desktop/mt)データをアップロードします。

  4. データベースへの引越し(引越し先のサーバー)

    # mysql -uroot -pルートのパスワード データベース名(mt) < バックアップ先ファイル名(/home/ユーザ名/Desktop/mt)

    # rm -f /home/ユーザ名/Desktop/mt  →  データ削除

④確認

  phpMyAdminなどにより移ったデータを見てみます。


あっという間に引越しの完了です。、、、、でもないかあ、、、。

初めての構築には、Fedora10(メールサーバー)を参照願います。

CentOS5では受信メールサーバーの dovecot は既にインストールされています。


①Postfix のインストール(送信メールサーバー)

     1. # su -   + root管理者権限パスワード を入力

     2. # yum -y install postfix cyrus-sasl system-switch-mail-gnome を入力

         Complete!

②ファイアーウォールの設定

   システム → 管理 → セキュリティレベルとファイアーウォールの設定 → 信頼できるサービス

     一覧の中から メール(SMTP) にチェックを入れる

    → その他のポート → 追加(下記を追加します)

        ポート       110 tcp
                   110 udp
                   143 tcp
                   143 udp
                   993 tcp
                   993 udp
                   995 tcp
                   995 udp   を入力 → 適用 → OK

③これより以降の設定については

   Fedora10(メールサーバー)構築の

       ⑤Postfixの設定(main.cfの編集) 以降を参考に構築します。

初めてDynamic DNSへ登録する場合とDiCE(ipアドレスの自動化)を利用して構築するには、
Fedora10(Dynamic DNS)を参照願います。

Dynamic DNSには no-ip.com にお世話になります。
no-ip.com では 5つまでのアドレスが無料で登録でき大変に有効です。

ここでは、DUC(Dynamic Update Client) を利用する方法を記載します。

①DUCのダウンロードと設置

     DUC(Dynamic Update Client)を搭載します。

     # cd /usr/local →  移動
     # tar xvzf /tmp/noip-duc-linux.tar.gz →  展開
     # mv noip-2.1.9 noip →  ディレクトリ名の変更
     # yum -y install gcc →  コンパイル用パッケージのインストール
     # make && make install →  makeでコンパイルしインストール開始

       Please enter the login/email string for no-ip.com →  [メールアドレス入力]
       Please enter the password for user '(メールアドレス)' →  [パスワード入力]
       Do you wish to have them all updated?[N](y/N) →  y
       Do you wish to run something at successful update?[N] (y/N) →  N

       New configuration file '/tmp/no-ip2.conf' created.
       mv /tmp/no-ip2.conf /usr/local/etc/no-ip2.conf

     # /usr/local/bin/noip2 →  アドレスを即時発行するために、一時実行します。

     # ps aux | grep noip
       nobody 6519 0.0 0.1 1844 732 ? Ss 21:19 0:00 /usr/local/bin/noip2
         →  これを即止めます。
     # /usr/local/bin/noip2 -K 6519 →  実行を止めます。
       Process 6519 terminated.

②自動起動の設定

     # cp /usr/local/noip/redhat.noip.sh /etc/init.d/noip
           →  ファイル名を変え自動起動先へコピーします。
     # chmod +x /etc/init.d/noip →  実行権限を付与
     # /sbin/chkconfig noip on →  再起動の時に自動起動する様に設定
     # /etc/init.d/noip start →  自動起動を開始
     # /usr/local/bin/noip2 -U 30 →  30分毎に実行
     # /usr/local/bin/noip2 -S →  確認します。


      * 30分毎に実行という事で設定しましたが、これでいくと最大29分59秒+の
        不通が発生してしまいます。かといって、1分毎に更新しても不通になることに
         変わり無く、更にはDDNSさんに多大なるご迷惑。
         時限稼動のサーバー向きと思います。
         常時稼動のサーバーには DiCE がおススメです。

バッファ・オーバーフロー対策の構築はFedora10(バッファ・オーバーフロー対策)を参照ねがいます。

アクセスログ解析 Awstats の構築はFedora10(アクセスログ解析 Awstats)を参照ねがいます。

データベースのMySQLを楽に操作するため、phpMyAdminを搭載します。
これは、GUIで視覚的に操作できますので、作業効率化のために欠かせません。

phpMyAdmin動作環境

  3.0 series : PHP 5.2+ and MySQL 5.0+.
  2.0 series : PHP 4+ and MySQL 3+.

CentOS5.2の PHPのバージョンは5.1.x、 MySQLのバージョンが5.0.x なので、
phpMyAdminは 2.0 series のbranch版の最新(phpMyAdmin 2.11.9.4)をインストールします。

①phpMyAdminのインストール

   # su -      + 管理者権限パスワード
   # wget http://jaist.dl.sourceforge.net/sourceforge/phpmyadmin/phpMyAdmin-2.11.9.4-all-languages.tar.gz
   # tar zxvf phpMyAdmin-2.11.9.4-all-languages.tar.gz
   # mv phpMyAdmin-2.11.9.4-all-languages /var/www/phpMyAdmin

②php-mcrypt(暗号化ライブラリ)のインストール

   # yum -y install php-mcrypt  を入力

    Complete!

③設定ファイルの編集

   # su -   + 管理者権限パスワード

   # vi /var/www/phpMyAdmin/config.inc.php  を入力

      $i++;
      $cfg['blowfish_secret'] = 'パスフレーズ';  →  一行追加(パスフレーズは使用の際には入力要求されません)

      $cfg['Servers'][$i]['auth_type'] = 'cookie';  →  変更しません。

        * 認証モードは「クッキー」になっています。   

④phpMyAdminの所有者を変更

   # chown -R root.apache /var/www/phpMyAdmin/

⑤設定ファイルの作成(アクセス制限)

   # vi /etc/httpd/conf.d/phpMyAdmin.conf

----------------- 作成内容 --------------------

Alias /phpMyAdmin "/var/www/phpMyAdmin"

<Directory "/var/www/phpMyAdmin">   
    order deny,allow
    deny from all
    allow from 127.0.0.1
    allow from 192.168.0  →  LAN内のクライアントのみ接続を許可します
</Directory>

-----------------------------------------------------
   
      * LANの外から操作をする場合は設定を
          allow fromの部分を一つにして Allow from all に変えます。

⑥設定ファイルを設置するディレクトリ作成

   # mkdir /var/www/phpMyAdmin/config  →  ディレクトリ作成
   # chmod 777 /var/www/phpMyAdmin/config  →  権限の設定

⑦httpd(Apache)を再起動

   # service httpd restart を入力

⑧phpMyAdminのコンフィグレーション(クライアントpcより)

   http://ipアドレス/phpMyAdmin/scripts/setup.php  →  アクセスします。

     phpMyAdmin 2.11.9.4 setup の画面にあるボタンを順番に押します。

       1. Configuration : Load  →  ボタン押下
       2. Servers : Add  →  ボタン押下

           Configure server の中段あたりにある

                  Authentication type = http  →  プルダウンより選ぶ

       3. Actions : Add  →  ボタン押下(注意→Servers:Addではありません)
       4. Configuration : Save  →  ボタン押下

⑨設定ファイルの移動

   # mv /var/www/phpMyAdmin/config/config.inc.php /var/www/phpMyAdmin/config.inc.php

⑩設定ファイルのパーミッション変更

   # chmod 660 /var/www/phpMyAdmin/config.inc.php  →  パーミッション変更

⑪phpMyAdmin確認

   LAN内のクライアントPCより

   http://サーバのIPアドレス/phpmyadmin/へアクセスし

     phpMyAdminのログイン画面が表示されることを確認します。

      * クライアントPCはクッキーを使えるようにしておきます。
      * 画面表示で文字化けに遭遇したら、もう一度、php+php_Smarty の中の
        php.iniの編集での文字設定の箇所をおさらいしましょう。

⑫コンフィグレーションファイルの削除

   # rm -f /var/www/phpMyAdmin/scripts/setup.php

アプリケーションの稼動に必要なソフトの中から、今回は php5 をインストールします。
現在の最新バージョンは5.2.8(2009/01/16リリース)ですが
CentOS5にはちょっと古いバージョン5.1.6 がインストール済みになっています。
ベースは古いですがセキュリティパッチは施されている様です。

また、テンプレートエンジンにはphp-Smartyを使用します。
遅いという評判もありますが、暫くはphp-Smartyで行きます。

①phpの確認

   # su + 管理者権限パスワード

   # yum list | grep php  を入力

     php.i386    5.1.6-20.el5_2.1    installed  →  と表示されればOKです。

      * 古いのですがこのままにしておきます。セキュリティと安定化が優先なので、
        必要性が生じない限り、CentOS5の自動バージョンアップに同期させます。
         最新のバージョンはFedoraサーバーで検証します。

②php-pear(PHPの拡張ライブラリ)のインストール

   # yum -y install php-pear  を入力

    Complete!

③php-mbstring(日本語の処理)のインストール

   # yum -y install php-mbstring  を入力

    Complete!

④php-mysql(PHPからはMySQLに接続するのに必要)のインストール

   # yum -y install php-mysql  を入力

    Complete!

⑤php-Smarty(テンプレートエンジン)のダウンロード

  Fedoraのリポジトリには在るのですが、
  CentOSのリポジトリには無いのでサイトSmarty : Downloadsから直接ダウンロードしてインストールします。

      * 最新版を確認してバージョンを置き換えます。

   # wget http://www.smarty.net/do_download.php?download_file=Smarty-2.6.22.tar.gz
       →  Smartyのダウンロード

   # tar xvzf Smarty-2.6.22.tar.gz

⑥Smarty 用のディレクトリを作成

   # mkdir -p /var/www/html/smarty   →  環境に合わせ変更(プログラム毎に配置します)
   # cd /var/www/html/smarty
   # mkdir templates templates_c configs cache   →  Smarty 用に4つのディレクトリを作成

⑦Smartyを配置

   # mv Smarty-2.6.22 Smarty   →  ディレクトリ名を変更
   # mkdir /usr/local/lib/php   →  smartyを配置するディレクトリを作成 
   # mv Smarty /usr/local/lib/php/   →  展開したsmartyを配置ディレクトリへ移動

⑧フォルダのパーミッションを変更(書き込みが出来るようにします)

   # chmod 777 /var/www/html/smarty/templates_c   →  パーミッションを変更

   # chmod 777 /var/www/html/smarty/cache   →  パーミッションを変更

⑨smarty ディレクトリの所有権の変更

   # chown -R apache:apache /var/www/html/smarty   →  所有権の変更

    * 既定(httpd.conf)で apache:apache が設定されています。

⑩php.iniの編集(日本語が使えるようにします)

   # vi /etc/php.ini  を入力

;;;;;;;;;;;;;;;;;;;;
; Language Options ;
;;;;;;;;;;;;;;;;;;;;

;allow_call_time_pass_reference = Off
allow_call_time_pass_reference = On   →  関数の引数としてリファレンスを使用

( 省略 )

output_buffering = On   →  HTTP BODYを出力した後でもHTTPヘッダが出力できます。
output_handler = mb_output_handler   →  PHPからの標準出力を指定の関数にリダイレクト
 
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Error handling and logging ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

; Log errors to specified file.
;error_log = filename
error_log = "/var/log/php_error"   →  追加

;;;;;;;;;;;;;;;;;
; Data Handling ;
;;;;;;;;;;;;;;;;;

;register_argc_argv = Off
register_argc_argv = On   →  修正

( 省略 )

;default_charset = Shift_JIS
default_charset = EUC-JP

;;;;;;;;;;;;;;;;;;;;;;;;;
; Paths and Directories ;
;;;;;;;;;;;;;;;;;;;;;;;;;

; UNIX: "/path1:/path2"
;include_path = ".:/php/includes"
include_path = ".:/usr/share/pear:/usr/local/lib/php/Smarty/libs"   →  追加

;;;;;;;;;;;;;;;;
; File Uploads ;
;;;;;;;;;;;;;;;;

; Maximum allowed size for uploaded files.
; upload_max_filesize = 2M         →  コメントアウト
multibyte/upload_max_filesize = 100M   →  リストアで利用できるバックアップデータの最大サイズ

;;;;;;;;;;;;;;;;
; Module Settings ;
;;;;;;;;;;;;;;;;

( 省略 )

[mbstring]------- コメント(;)の削除 & 設定変更(環境に合わせ変更します) -------
                  
 mbstring.language = Japanese
 mbstring.internal_encoding = UTF-8
 mbstring.http_input = auto
 mbstring.http_output = UTF-8
 mbstring.encoding_translation = On
 mbstring.detect_order = auto

     * この設定は上手く環境に合わせ構築しておかないと、後々に使用する、
       phpMyAdmin等での文字化けに悩む事になります。
        php関連の文字化けが発生したら、真っ先にココの設定を調整してみましょう。

⑪Smarty_App クラスファイルを作成

    /var/www/html/smarty/Smarty_App.php として保存

    ----------- Smarty_App.php -----------
    <?php
    require_once 'Smarty.class.php';

    class Smarty_App extends Smarty {
     private $smartyAppBase = '/var/www/html/smarty';
     public function __construct() {
     parent :: __construct();

     $this->template_dir = $this->smartyAppBase.'/templates/';
     $this->compile_dir = $this->smartyAppBase.'/templates_c/';
     $this->config_dir = $this->smartyAppBase.'/configs/';
     $this->cache_dir = $this->smartyAppBase.'/cache/';

     $this->caching = true;
     }
    }
    ?>
    --------------------------------- 以上 ----

⑫Smarty テスト用の php ファイルを作成

    /var/www/html/test_smarty.php として保存

    ----------- test_smarty.php -----------
    <?php
    require_once '/var/www/html/smarty/Smarty_App.php';

    $smarty = new Smarty_App;
    $smarty->assign('var1', 'test_smarty.php');
    $inc_path = ini_get('include_path');
    $smarty->assign('var2', $inc_path);
    $smarty->display('test_smarty.tpl')
    ?>
    --------------------------------- 以上 ----

⑬Smarty テンプレートファイルを作成

    /var/www/html/smarty/templates/test_smarty.tpl として保存

    ----------- test_smarty.tpl -----------
    <HTML>
     <HEAD>
     <META http-equiv=Content-Type content="text/html; charset=utf-8">
     <TITLE>test_smarty.tpl</TITLE>
     </HEAD>
     <BODY>
     file name = {$var1}<BR/>
     php include_path = {$var2}<BR/>
     SMARTY_DIR = {$smarty.const.SMARTY_DIR}<BR/>
     </BODY>
    </HTML>
    --------------------------------- 以上 ----


⑭httpd(Apache)を再起動

   # service httpd restart を入力

⑮確認

  ブラウザで Smarty テスト用の php ファイル(test_smarty.php)にアクセス


インストール終了です。

Webヘージとサーバー間での HTTP 通信の暗号化を行うSSLを搭載しておきます。
Webヘージで入力するユーザー名やパスワードなどが盗聴される被害に会わないために搭載します。

CentOS5ではSSLが既に搭載済みです。さすがです。
確認およびSSLを有効にさせる設定をします。


①搭載の確認をしてみます。mod_ssl

 GNOME端末より

   $ su -    + 管理者権限パスワード

   # rpm -qa | grep mod_ssl

    mod_ssl-2.2.3-11.el5_2.centos.4  →  と表示されればOKです。

    * centosのバージョンによりmod_sslのバージョンも変わりますので適時読み替えます。

②ファイアウォールを有効にする。

  システム → 管理 → セキュリティレベルとファイアウォールの設定
     → ファイアウォールのオプション(タブ)
       → Secure WWW(HTTPS)にチェック → OK →  終了

③サーバー証明書と鍵の作成

   1. 秘密鍵を作成

        # openssl genrsa -des3 1024 > /etc/pki/tls/private/server.key を入力

          Enter pass phrase:パスフレーズ(英数)を入力
          Verifying - Enter pass phrase:パスフレーズ(英数)を入力

        * 1024bit の RSA 秘密鍵を生成し、server.key というファイルに出力

   2. 秘密鍵からパスワードを削除

        # openssl rsa -in /etc/pki/tls/private/server.key -out /etc/pki/tls/private/server.key を入力

          Enter pass phrase for /etc/pki/tls/private/server.key:パスフレーズ(英数)を入力

   3. アクセス権を変更

        # chmod 400 /etc/pki/tls/private/server.key を入力

        * 秘密鍵を同じサーバ内のユーザにも見られないように、作成後はすぐに変更

④Web サーバー用の公開鍵を作成

   # openssl req -new -key /etc/pki/tls/private/server.key -out /etc/pki/tls/certs/server.csr を入力


        Country Name (2 letter code) [GB]:JP
            → 国を指定
        State or Province Name (full name) [Berkshire]:Kanagawa
            → 都道府県を指定
        Locality Name (eg, city) [Newbury]:Yokohama
            → 市区町村を指定
        Organization Name (eg, company) [My Company Ltd]:applejam.com
            → 組織名を指定 ※組織名がない場合はドメイン名などを指定
        Organizational Unit Name (eg, section) []:Customer Service
            → 部門名を指定 ※部門名がない場合は空で可
        Common Name (eg, your name or your server's hostname) []:www.applejam.com
            → サイト名またはサーバー名を指定
        Email Address []:webmaster@applejam.com
            → 管理者のメールアドレスを指定

          A challenge password[]:  →  何も入力しないで Enter
          An optional company name[]:  →  何も入力しないで Enter

     完了です。

⑤サーバー証明書を作成

   # openssl x509 -in /etc/pki/tls/certs/server.csr -out /etc/pki/tls/certs/server.crt -req -signkey /etc/pki/tls/private/server.key -days 365 を入力

        * 入力ファイル (CSR) に server.csr を指定します。
        * 出力ファイル (証明書) に server.crt を指定します。
        * openssl x509 のデフォルトでは、入力ファイル形式は X.509 証明書となっています。
           -req オプションを付けて入力ファイルが CSR であることを指定します。
        * -signkey は自己署名用のオプションで、その直後にRSA 秘密鍵のファイル
          (openssl genrsa で生成したファイルserver.key) を指定します。
        * 自己署名の場合は証明書の有効期間がデフォルトでは 1ヵ月です。
          ここでは -days 365 として 1年間にしています。

⑥httpd(Apache)のSSLファイル設定

   # vi /etc/httpd/conf.d/ssl.conf を入力

      (省略)

     コメント欄の # Server Certificate: にある(検索ツールでハイライトさせる)

      SSLCertificateFile /etc/pki/tls/certs/localhost.crt
        → SSLCertificateFile /etc/pki/tls/certs/server.crt
          → 作成した Web サーバー証明書を指定(修正)

     コメント欄の # Server Private Key: にある(検索ツールでハイライトさせる)

      SSLCertificateKeyFile /etc/pki/tls/private/localhost.key
        → SSLCertificateKeyFile /etc/pki/tls/private/server.key
          → 作成した Web サーバーの秘密鍵を指定(修正)

完了です。

初めてインストールする場合はFedora10(DBサーバー MySQL)と同じ設定で構築します。

下記は必要最小限の内容を抜粋しています。(お急ぎの場合はお勧めです。)

①MySQLのインストール

   # su -   + 管理者権限パスワード

   # yum -y install mysql-server  →  MySQLのインストール

      暫く、待ちます。

   Complete! で完了です。

②MySQLデータベースの設定

   1. データベースを初期化

        # /etc/init.d/mysqld start

   2. MySQLの自動起動の設定

        # /sbin/chkconfig --level 2345 mysqld on

   3. MySQLデータベースの作成

        # mysql -u root → MySQLサーバーへログイン(初回)

        mysql> select user,host,password from mysql.user;
              → パスワードとユーザーの確認

        mysql> set password for root@localhost=password('パスワード');
              → rootユーザーのlocalhostにパスワードを設定

        mysql> select user,host,password from mysql.user;
              → rootユーザーのlocalhostのパスワードが設定されたかの確認

        mysql> delete from mysql.user where password='';
              → パスワードがブランクを削除

        mysql> grant all privileges on abc.* to xxxxx@localhost identified by 'パスワード';
              → 新規ユーザ xxxxx を登録

            (ユーザ xxxxx に データベース abc への権限を付与
                        ;データベース abc はまだ無くて良い)

        mysql> select user,host,password from mysql.user;
              → パスワードとユーザーを再度確認します。

新規でインストールする場合はFedora10(WEBサーバー)と同じ設定で構築します。

下記はFedora10(WEBサーバー)が稼動している事が前提です。

①インストールパッケージの確認

  必要パッケージの httpd + mod_perl + firefox を確認します。

    * firefox は既にブラウザで使用していますので確認しません。

  # su -   + 管理者権限パスワード
  # rpm -qa | grep httpd

    httpd-2.2.3-11.el5_2.centos.4  →  があれば WebサーバーはOKです。

  # rpm -qa | grep mod_perl

    mod_perl-2.0.2-6.3.el5  →  があれば 下準備OKです。すも

②WEBサーバーの設定

  いよいよFTPサーバーの出番です。

  1. FTPソフトを立ち上げFedora10サーバーに接続にします。

    FTPソフト例 ; Filezilla

  2. 必要ファイルをダウンロードします。

      /etc/httpd/conf/httpd.conf  →  httpd.confをダウンロードします。

  3. ファイル(httpd.conf)のアップロード

      /home/hikosan/Desktop  →  新サーバーのDesktopへhttpd.confをアップロードします。

  4. ファイル(httpd.conf)のコピー

     GNOME端末で   

      # cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd_df.conf

             →  デフォルトファイルの保存

      # cp /home/hikosan/Desktop/httpd.conf /etc/httpd/conf/

             →  上書きでコピーします。

        * パーミッションはデフォルトとアップロードファイルが同一なので変更しません。

      # rm -f /home/hikosan/Desktop/httpd.conf  →  不要なファイルを削除

③Perlのシンボリックリンク設定

  続けて(GNOME端末で)

    # ln -s /usr/bin/perl /usr/local/bin/perl を入力

     * シンボリックリンク設定(/usr/local/bin/perl から /usr/bin/perl へリンクする)
     * この設定でPerlのパスが/usr/local/bin/perlでもCGIが実行出来る様になります。

④ドキュメントルートの所有者変更

  続けて(GNOME端末で)

    # chown xxxx:xxx /var/www/html/ を入力

     * ドキュメントルートの所有者を変更します。
     * 所有者は /etc/passwd ファイル にあるログイン名(例ではxxxx)を指定します。
       rootのままだと何かと不都合なので変更します。

⑤WEBサーバーの起動

  続けて(GNOME端末で)

    # /sbin/chkconfig --level 2345 httpd on    でApacheを自動起動に設定

Fedora10(アクセス制限)と同じ設定です。

サーバーの立ち上げを短期間で済ませるためにtoolとして使う、
FTPサーバーの設定を最初に済ませます。

①FTPサーバーの登録確認

  # su -   + 管理者権限パスワード
  # rpm -qa | grep vsftpd

    vsftpd-2.0.5-12.e15  →  と表示されればOKです。

     登録が無い場合は

       # yum -y install vsftpd  と入力しインストールします。

②FTPサービスを有効にする。

  システム → 管理 → サービス → サービスの設定

    一覧の中から vsftpd にチェックを入れ → 開始 → 保存 → 終了

③ファイアーウォールの設定確認

   システム → 管理 → セキュリティレベルとファイアーウォールの設定
     → rootパスワード
       → 信頼できるサービス → FTP にチェックを入れ → OK → 終了します。

④Anonymous FTP の設定(機能の無効化)

    # vi /etc/vsftpd/vsftpd.conf

     aonymous_enable=YES  →  NOに変更

⑤WindowsクライアントPCからのアクセス確認

   Filezilla などのソフトで、ホストの設定を行い接続を確認します。

    * UTF-8に対応していないソフトでは文字化けします。
    * ホストには固定ipアドレスを設定します。

インストールの時にSELinuxは無効化しましたが、
その他にも最初に実行しておいたほうが良いところを設定します。

①ディスプレイの解像度を変更します(例:1024x768の場合)

  GUIで操作します。

   システム → 管理 → ディスプレイ

    → root 権限のパスワード

     → ディスプレイ設定 → ハードウェア  → モニター → xxx LCD xxx を選択

       → LCD Panel 1024x768 を選択 → OK → OK → OK

        → システム → xxxのログアウト → ユーザー名パスワードで再立ち上げ

     * Fedora10と違い素直に立ち上がりました。

②ルーターより固定ipアドレスを払い出します。
    (CentOSインストール時に固定の設定をした場合は必要ありません。)

  1. GNOME端末を呼び出し、

   $ su -  (rootユーザー管理権限+パスワード)

   # ifconfig

     HWaddr マックアドレス  →  マックアドレスで払い出すので控えを取ります。

  2. ルーターを立ち上げ、

      →  ipアドレスの払い出しの設定(DHCP)にマックアドレスを登録
       →  ipアドレスを決定します。
        →  ルーターを再起動し設定を反映させます。  

  3. サーバーを再起動し、

   GNOME端末を呼び出します。

    $ su -  (rootユーザー管理権限+パスワード)

    # ifconfig

     inet addr:ipアドレス  →  ipアドレスが変更されている事を確認します。