APサーバ/apache+php +



インストール環境 +

  • OS
    • CentOS 5.5 (kernel 2.6.18-194.3.1.el5)
  • パッケージ
    • httpd-2.2.3-43.el5
    • php-5.1.6-27.el5
    • mod_ssl-2.2.3-43.el5

パッケージのインストール +

  • apacheのインストール
    # yum install httpd
  • SSLモジュールのインストール
    # yum install mod_ssl
  • PHPのインストール
    # yum install php
  • PHPのモジュールを追加(必須ではありません。必要に応じて追加します)
    # yum install php-gd

これでインストールは完了です。

apacheの設定 +

httpd.confの編集 +

  • apacheの設定ファイル「/etc/httpd/conf/httpd.conf」を編集します
    #265行目 サーバ名を設定します
    ServerName www.oss-d.net:80
    
    #327行目「/var/www/html」以下のディレクトリでhtaccessを有効にします
    AllowOverride All

ssl.confの編集 +

  • apacheのSSL設定ファイル「/etc/httpd/conf.d/ssl.conf」を編集します
    #112行目 httpsdの使用する公開鍵の場所(デフォルト値)
    SSLCertificateFile /etc/pki/tls/certs/localhost.crt
    
    #119行目 httpsd の使用する秘密鍵の場所(デフォルト値)
    SSLCertificateKeyFile /etc/pki/tls/private/localhost.key
    
    #134行目 中間証明書の場所を指定します。利用するCAによっては設定が必要になります。
    #        今回はCAを利用せず、自己証明書を利用するため設定しません。
    #SSLCertificateChainFile /etc/pki/tls/certs/server-chain.crt
    
    #227行目 ログの出力形式
    CustomLog logs/ssl_access_log combined

秘密鍵と証明書の作成 +

秘密鍵「localhost.key」と証明書「localhost.crt」を作成します。

  • カレントディレクトリを変更します。
    # cd /etc/pki/tls

  • 秘密鍵を生成します。
    # openssl genrsa -des3 2048 -rand /var/log/ > private/localhost.key
    「Enter PEM pass phrase:」と表示されるので、パスフレーズを入力すると暗号化のための秘密鍵(localhost.key)が生成されます。

  • 秘密鍵からパスフレーズを削除します。削除しないとApache起動時に毎回パスフレーズを入力する必要があります。
    「Enter pass phrase for private/localhost.key:」と表示されるので、先ほどのパスフレーズを入力します。
    # openssl rsa -in private/localhost.key -out private/localhost.key
    Enter pass phrase for private/localhost.key:
    writing RSA key


  • 生成された秘密鍵を使って証明書を発行します(Common NameはURLでのホスト名を入力)
    # openssl req -new -x509 -key private/localhost.key -out certs/localhost.crt -days 3650
    
    -----
    Country Name (2 letter code) [AU]:JP
    State or Province Name (full name) [Some-State]:
    Locality Name (eg, city) []:
    Organization Name (eg, company) [Internet Widgits Pty Ltd]:
    Organizational Unit Name (eg, section) []:
    Common Name (eg, YOUR name) []:www.oss-d.net
    Email Address []:

自動起動の設定 +

  • chkconfigコマンドで自動起動をONにします
    # chkconfig  httpd on

起動 +

  • apacheを起動します。
    # /etc/init.d/httpd start


  • psコマンドでプロセスの確認します。/usr/sbin/httpdがあれば問題ありません。
    # ps ax|grep http
     1747 ?        S      0:00 /usr/sbin/httpd
     1900 ?        S      0:00 /usr/sbin/httpd
     1923 ?        Ss     0:00 /usr/sbin/httpd

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

  • WANから接続できるようファイアウォールの設定を変更します。
    具体的には設定ファイル「/etc/sysconfig/iptables」に設定を追加します。
    追加は「-A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT 」の後に追加します。
    #httpの通信を許可 
    -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
    
    #httpsの通信を許可 
    -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT

動作確認 +

  • phpのスクリプトを用意します。
    # echo "<?php phpinfo(); ?>" >/var/www/html/index.php

  • ブラウザで以下にアクセスしてページが表示されればapacheのインストールは完了です。
    (www.oss-d.netの部分は環境に合わせて変更して下さい)
このエントリーをはてなブックマークに追加
Last-modified: 2010-09-23 (木) 19:39:51 (517d)   最終更新のRSS