ak47mig的网志(自家用,谢绝无聊斗鸡)

记录有用的网文。谢绝无聊斗鸡评论。

ak saintID:ak47mig
123468次访问,排名661好友0人,关注者0
null
ak47mig的文章
原创 16 篇
翻译 6 篇
转载 219 篇
评论 18 篇
ak47mig的公告
几乎全为转贴,linux,bbs相关,不代表自己观点。自家用,对原文有意见请找原链接。谢谢大家厚爱。谢绝无聊评论。
最近评论
czdvcc:wow power leveling
fdytxz:www.meinv880.cn
www.xingchenbian33.cn
whiteskin:介绍一点先进的方法给你吧
[原创]批量XX新东方flash课件后可在任何PPC和PC上播放
http://bbs.pdafans.com/thread-354337-1-1.html
ak47mig:呵呵,这是我转的别人的文章。
我自己不做mfc开发的,我是搞linux的呵呵:)

现在微软模式的编程都是.net了。你要走通路,还是学java吧
BitApple:我现在大二快完了,C++,数据结构也学过了,现在自己在看WINDOWS 程序设计的书,觉得完全找不到方法,还是在原地踏步,搜前辈的MFC的历程的时候搜出了这篇文章,不过还是没有解决我的问题……
文章分类
收藏
    相册
    技术网站
    chinaunix(RSS)
    kernel
    squid-cache.org
    wxwidgets
    中国IT实验室
    在线应用程序列表(RSS)
    天地人大bbs站(RSS)
    车东
    某些不错的blog
    absurd
    coolcode
    renda(RSS)
    高春辉的blog(RSS)
    朋友们
    maotouying
    小明Miho
    我的
    e-mail我
    友情链接
    anti cnn
    存档
    订阅我的博客
    XML聚合  FeedSky
    订阅到鲜果
    订阅到Google
    订阅到抓虾
    订阅到BlogLines
    订阅到Yahoo
    订阅到GouGou
    订阅到飞鸽
    订阅到Rojo
    订阅到newsgator
    订阅到netvibes

    转载 Linux+Apache+PHP+MySQL+SSL配置详解收藏

    新一篇: wxzh001,进来看关于APACHE+PHP+MYSQL+SSL的LINUX下安装配置(转自奥索) | 旧一篇: 用于实现Web Services安全性的HTTPS

      作者:佚名 文章来源:不详 点击数: 更新时间:2006-9-6 21:56:14 

        约定:
    OS: RedHat 6.2
    Software: apache_1.3.20.tar.gz
    php-4.0.6.tar.gz
    mysql-3.23.41.tar.gz
    mod_ssl-2.8.4-1.3.20.tar.gz
    openssl-0.9.6b.tar.gz

    一 mysql的安装

    cd /usr/local/src/mysql
    ./configure –prefix=/usr/local/mysql
    make
    make install
    配置、编译和安装完成之后
    #./scripts/mysql_install_db对数据库进行初始化
    然后启动mysql服务
    # /usr/local/mysql/bin/safe_mysqld &

    最后验证mysql服务
    # /usr/local/mysql/bin/mysqladmin version 若正常,应该显示版本等参数

    设置mysql的root密码
    /usr/local/mysql/bin/mysqladmin –u root password ‘xxxx’

    二 php的安装

    PHP要求你已经预先配置好的Apache,以便它能知道所需的东西在哪儿。
    cd /usr/local/src/apache

    apache作预处理
    ./configure –prefix=/usr/local/apache

    进入php的源代码的目录
    cd /usr/local/src/php

    对php做配置
    ./configure --with-mysql=/usr/local/mysql --with-xml --with-apache=../apache
    --enable-track-vars
    配置成功后最后会看到“Thank you for using PHP”

    然后进行编译、安装
    make
    make install

    拷贝ini文件到lib目录。
    # cp php.ini-dist /usr/local/lib/php.ini
    注意:php3用户将使用php3.ini,而php4用户将使用php.ini文件。

    三 安装配置openssl、mod_ssl

    # cd openssl
    # ./config -prefix=/usr/local/ssl
    现在make、测试并安装它。
    # make
    # make test
    # make install
    # cd ..

    我们将配置MOD_SSL模块,然后用Apache配置指定它为一个可装载的模块。
    # cd mod_ssl
    # ./configure
    --with-apache=../apache
    # cd ..

    四 安装apache

    安装之前先找到libphp4.a
    find / -name libphp4.a –print
    (/usr/local/src/php/libs/libphp4.a)
    然后把找到的这个文件拷贝到/usr/local/src/apache/src/modules/php4/

    # cd apache
    #SSL_BASE=../openssl ./configure
    --prefix=/usr/local/apache --activate-module=src/modules/php4/libphp4.a
    --enable-module=ssl
    --enable-shared=ssl

    生成Apache,然后生成证书,并安装
    # make
    # make certificate TYPE=custom
    说明:这一步要生成你自己的 CA (如果你不知道,我也不能细说了,简单地说就是认证中心),和用它来为你的服务器签署证书。
    STEP 0:
    选择算法,使用缺省的 RSA

    STEP 1:
    生成 ca.key,CA的私人密钥

    STEP 2:
    为CA生成X.509的认证请求 ca.csr
    要输入一些信息:
    Country Name: cn 国家代码,两个字母
    State or Provice name: An Hui 省份
    Locality Name: Bengbu 城市名
    Organization Name: Home CA 组织名,随便写吧
    Organization Unit Name: Mine CA
    Common Name: Mine CA
    Email Address: wadia@263.net 我的Email
    Certificate Validity: 4096 四千多天,够了吧

    STEP 3:
    生成CA的签名,ca.crt

    STEP 4:
    生成服务器的私人密钥,server.key

    STEP 5:
    生成服务器的认证请求,server.csr
    要输入一些信息,和STEP 2类似,
    不过注意 Common Name是你的网站域名,如 http://www.mydomain.com
    Certificate Validity不要太大,365就可以了。

    STEP 6:
    为你的服务器签名,得到server.crt

    STEP 7-8:
    为你的 ca.key 和 server.key 加密,要记住pass phrase。

    下面完成apache的安装
    make install

    安装成功后会出现
    +--------------------------------------------------------------+
    | You now have successfully built and installed the |
    | Apache 1.3 HTTP server. To verify that Apache actually |
    | works correctly you now should first check the |
    | (initially created or preserved) configuration files |
    | |
    | /usr/local/apache/conf/httpd.conf |
    | |
    | and then you should be able to immediately fire up |
    | Apache the first time by running: |
    | |
    | /usr/local/apache/bin/apachectl start |
    | |
    | Thanks for using Apache. The Apache Group |
    | http://www.apache.org/ |

    五 对apache的httpd.conf的配置

    对php部分的修改如下:
    AddType application/x-httpd-php_.php(去掉前面的#)
    AddType application/x-httpd-php-source_.phps(去掉前面的#)
    AddTyep application/x-httpd-php_.php4(增加)
    AddTyep application/x-httpd-php_.php3(增加)
    注意:上述四个配置语句末尾的空格号。
    另外还要在DirectoryIndex index.html后面加上index.php

    对ssl部分及httpd.conf的修改如下:
    ServerType standalone
    ServerRoot "/usr/local/apache"
    Timeout 300
    KeepAlive On
    MaxKeepAliveRequests 100
    KeepAliveTimeout 15
    MinSpareServers 5
    MaxSpareServers 10
    StartServers 5
    MaxClients 150
    MaxRequestsPerChild 0
    LoadModule ssl_module libexec/libssl.so
    Port 80
    ## SSL Support
    <IfDefine SSL>
    Listen 80
    Listen 443
    </IfDefine>
    User webmaster
    Group webmaster
    ServerAdmin wadia@h4cker
    DocumentRoot /usr/local/apache/htdocs

    DirectoryIndex index.html index.php
    HostnameLookups Off
    ErrorLog /usr/local/apache/logs/error_log
    CustomLog /usr/local/apache/logs/access_log common
    ServerSignature On
    ScriptAlias /cgi-bin/ "/usr/local/apache/cgi-bin/"

    AddType application/x-httpd-php .php
    AddType application/x-httpd-php-source .phps
    AddType application/x-httpd-php .php4
    AddType application/x-httpd-php .php3

    AddType application/x-tar .tgz
    AddHandler cgi-script .cgi

    AddType application/x-x509-ca-cert .crt
    AddType application/x-pkcs7-crl .crl
    SSLPassPhraseDialog builtin
    SSLSessionCache dbm:/usr/local/apache/logs/ssl_scache
    SSLSessionCacheTimeout 300
    SSLMutex file:/usr/local/apache/logs/ssl_mutex
    SSLRandomSeed startup builtin
    SSLRandomSeed connect builtin
    SSLLog /usr/local/apache/logs/ssl_engine_log
    SSLLogLevel info

    <VirtualHost 192.0.0.9:443>
    DocumentRoot "/usr/local/apache/htdocs"
    ServerName h4cker
    ServerAdmin wadia@h4cker
    ErrorLog /usr/local/apache/logs/error_log
    TransferLog /usr/local/apache/logs/access_log
    SSLEngine on
    SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
    SSLCertificateFile /usr/local/apache/conf/ssl.crt/server.crt
    SSLCertificateKeyFile /usr/local/apache/conf/ssl.key/server.key
    SSLCACertificatePath /usr/local/apache/conf/ssl.crt
    SSLCARevocationPath /usr/local/apache/conf/ssl.crl
    SSLVerifyClient 0
    SSLVerifyDepth 0

    要注意ssl.key ssl.crt等目录和文件的权限!
    所有的key,csr,crt,prm文件都应该设为 400

    六 手工签署证书

    虽然在安装MOD_SSL时已经使用 make certificate 命令建立了服务器的证书签名,但是有时你可能需要改变它。

    当然有很多自动的脚本可以实现它,但是最可靠的方法是手工签署证书。首先我假定你已经安装好了openssl和MOD_SSL,如果你的openssl安装时的prefix设置为/usr/local/openssl,那么把/usr/local/openssl/bin加入执行文件查找路径。还需要 MOD_SSL源代码中的一个脚本,它在MOD_SSL的源代码目录树下的pkg.contrib目录中,文件名为 sign.sh。将它拷贝到 /usr/local/openssl/bin 中。

    先建立一个 CA 的证书,
    首先为 CA 创建一个 RSA 私用密钥,
    [S-1]
    openssl genrsa -des3 -out ca.key 1024
    系统提示输入 PEM pass phrase,也就是密码,输入后牢记它。
    生成 ca.key 文件,将文件属性改为400,并放在安全的地方。
    [S-2]
    chmod 400 ca.key
    你可以用下列命令查看它的内容,
    [S-3]
    openssl rsa -noout -text -in ca.key
    利用 CA 的 RSA 密钥创建一个自签署的 CA 证书(X.509结构)
    [S-4]
    openssl req -new -x509 -days 3650 -key ca.key -out ca.crt
    然后需要输入下列信息:
    Country Name: cn 两个字母的国家代号
    State or Province Name: An Hui 省份名称
    Locality Name: Bengbu 城市名称
    Organization Name: Family Network 公司名称
    Organizational Unit Name: Home 部门名称
    Common Name: Chen Yang 你的姓名
    Email Address: sunstorm@263.net Email地址
    生成 ca.crt 文件,将文件属性改为400,并放在安全的地方。
    [S-5]
    chmod 400 ca.crt
    你可以用下列命令查看它的内容,
    [S-6]
    openssl x509 -noout -text -in ca.crt
    下面要创建服务器证书签署请求,
    首先为你的 Apache 创建一个 RSA 私用密钥:
    [S-7]
    openssl genrsa -des3 -out server.key 1024
    这里也要设定pass phrase。
    生成 server.key 文件,将文件属性改为400,并放在安全的地方。
    [S-8]
    chmod 400 server.key
    你可以用下列命令查看它的内容,
    [S-9]
    openssl rsa -noout -text -in server.key
    用 server.key 生成证书签署请求 CSR.
    [S-10]
    openssl req -new -key server.key -out server.csr
    这里也要输入一些信息,和[S-4]中的内容类似。
    至于 extra attributes 不用输入。
    你可以查看 CSR 的细节
    [S-11]
    openssl req -noout -text -in server.csr
    下面可以签署证书了,需要用到脚本 sign.sh
    [S-12]
    sign.sh server.csr
    就可以得到server.crt。
    将文件属性改为400,并放在安全的地方。
    [S-13]
    chmod 400 server.crt
    删除CSR
    [S-14]
    rm server.csr

    七 测试apache、php、ssl

    1 apache的测试
    /usr/local/apache/bin/apachectl start 启动apache,在浏览器中输入ip,这时便会出现apache的页面,说明apache已经运行了。

    2 php的测试
    在htdocs下创建一个test.php文件
    vi test.php
    <?
    phpinfo();
    ?>
    然后在浏览器中输入http://ip/test.php

    若能够看到有关php4信息的页面,则说明php运行正常

    3 ssl的测试
    /usr/local/apache/bin/apachectl startssl
    提示输入pass phrase(就是你前面输入的)
    输入后就启动了一个支持SSL的apache
    在IE里输入https://ip/ 试试,注意是https而不是http。

    以上都是我的实际操作的详细步骤,其中肯定难免会有不当或错误的地方,还望多多大家指正。 

    发表于 @ 2006年11月22日 15:41:00|评论(loading...)|编辑

    新一篇: wxzh001,进来看关于APACHE+PHP+MYSQL+SSL的LINUX下安装配置(转自奥索) | 旧一篇: 用于实现Web Services安全性的HTTPS

    评论:没有评论。

    发表评论  


    当前用户设置只有注册用户才能发表评论。如果你没有登录,请点击登录
    Csdn Blog version 3.1a
    Copyright © ak47mig