奇趣技术网 收藏本站
设为主页
商务合作
首页 新闻中心 行业动态 软件新闻 安全资讯 病毒预警 漏洞发布 操作系统 Dos Win9x Win2000 WinXP Win2003 WinVista Linux Unix
数据库 DB2 Access MSSQL MySQL Oracle Sybase 编程技术 ASP PHP JSP CGI/Perl XML .Net C/C++/C# VB VC Delphi Java 汇编
安全技术 安全教学 工具介绍 漏洞利用 病毒防范 入侵检测 防火墙 安全防范 汉化破解 攻击实例 加密解密 技术论坛
中华网络安全联盟 >> 操作系统 >> Unix >> FreeBSD WEB服务器架设笔记 2
操作系统
Windows XP
Windows 2000
Windows Vista
Windows 2003
Windows 9x
DOS
Linux
Unix
  • FreeBSD从零学起图文手

  • FreeBSD服务器的安装与

  • FreeBSD服务器的安装与

  • FreeBSD服务器的安装与

  • FreeBSD+IPFILTER实现

  • FreeBSD下vmware的网络

  • FreeBSD 5.x 中 gbfs 

  • FREEBSD下VINUM做软RA

  • FreeBSD WEB服务器架设笔记 2
    字体:

    中华网络安全联盟    作者:佚名    来源:转载    时间:2006-3-31

    安装服务器软件

    mysql

     

      Code: [Copy to clipboard]  
    cd /usr/ports/databases/mysql4-server
     


    因为我安装系统时将数据库单独分了一个区存放,所以我要修改一下mysql默认的数据库存放目录

     

      Code: [Copy to clipboard]  
    ee Makefile
     

     

     


      Code: [Copy to clipboard]  
    DB_DIR?= 你的数据库存放目录
    #CONFIGURE_TARGET那行前面的空行加上两行优化选项:
    BUILD_OPTIMIZED=yes
    BUILD_STATIC= yes 
     


    保存退出编辑。然后

     

      Code: [Copy to clipboard]  
    make
    make install clean
     


    安装完毕后,加大mysql的最大连接数

     

      Code: [Copy to clipboard]  
    ee /usr/local/bin/mysqld_safe 
     


    向下寻找到第314行(4.0.20版是314行),其行很长,以“$NOHUP_NICENESS”开头,以“>> $err_log 2>&1”结尾。该行被嵌套在一个if语句里。在314这行末尾的“ >> $err_log 2>&1”前面加上“ -O max_connections=1000 ”,(注意前后各留一个空格)。
    然后向下找到316行,也是很长的一行,以“eval "$NOHUP_NICENESS”开头,以“>> $err_log 2>&1”结尾。同样在“ >> $err_log 2>&1”前面加上“ -O max_connections=1000 ”。
    保存退出。然后重启,此时的mysql40就是1000个并发连接的数据库了。可以用下面的方法检查一下:

     

      Code: [Copy to clipboard]  
    cd /usr/local/bin
    mysqladmin -uroot -p variables 
     


    将会打出一个长列表,按scroll lock后向上卷动屏幕,能看到里面有一项显示

    | max_connections | 1000 |

    那么表示最大并发连接数已经修改到1000了。

    修改 mysql 的 root 密码

     

      Code: [Copy to clipboard]  
    mysqladmin -u root password '你要的密码'
     

    apache

    先安装openssl

     

      Code: [Copy to clipboard]  
    cd /usr/ports/security/openssl
    make install clean
     


    然后升级一下 expat2

     

      Code: [Copy to clipboard]  
    cd /usr/ports/textproc/expat2
    make deinstall
    make install clean
     


    安装 apache2

     

      Code: [Copy to clipboard]  
    cd /usr/ports/www/apache2
    make install clean
     


    安装 apache 的 mod

    fastcgi:

     

      Code: [Copy to clipboard]  
    cd /usr/ports/www/mod_fastcgi
    make WITH_APACHE2=yes install clean
     


    OK,完成了。

    下来是php:

     

      Code: [Copy to clipboard]  
    cd /usr/ports/www/mod_php4
    make install clean
     


    安装后的设置:
    看一下 /usr/etc/apache2 目录下面已经有几个 httpd 的设置文件了,拷一个当正式的配置文件

     

      Code: [Copy to clipboard]  
    cp /usr/local/etc/apache2/httpd-dist.conf /usr/local/etc/apache2/httpd.conf
     


    然后编辑 httpd.conf

     

      Code: [Copy to clipboard]  
    ee /usr/local/etc/apache2/httpd.conf
     

     

     


      Code: [Copy to clipboard]  
    #增加对php的支持,在AddType application/x-gzip .gz .tgz后面加:
    AddType application/x-httpd-php .php
    AddType application/x-httpd-php-source .phps

    #随后设置网站默认启动页允许为index.php,找到 DirectoryIndex这行,改为:
    DirectoryIndex index.html index.htm index.php index.html.var

    #再设置apache默认字符集为简体中文。找到 AddDefaultCharset 改成:
    AddDefaultCharset GB2312

    #另外,一个访问量较大的网站,apache默认的150连接肯定是不行的。以下各行改为:
    StartServers 10
    MinSpareServers 10
    MaxSpareServers 15
    ServerLimit 2000
    MaxClients 1500
    MaxRequestsPerChild 10000 
     


    最后,要在服务器启动时自动启动 apache,需要编辑 /etc/rc.conf

     

      Code: [Copy to clipboard]  
    ee /etc/rc.conf
     


    加入以下两行:

     

      Code: [Copy to clipboard]  
    apache2_enable="YES"
    apache2ssl_enable="YES"
     


    这时候,你可以用以下命令来试着启动 apache

     

      Code: [Copy to clipboard]  
    /usr/local/etc/rc.d/apache2.sh start
     


    ===============================================
    如果提示说 ssl.conf 配置文件某行有错,server.crt 证书文件不存在的话,那么恭喜你,跟我一样中奖了,我不知道这是否是 apache2 port的一个bug,总之这样安装完的apache+mod_ssl 是没有服务器证书的,apache2启动失败了,我们需要手工来签属一个可用的证书
    先下载一下证书生成程序:http://www.openssl.org/contrib/ssl.ca-0.1.tar.gz
    然后:

     

      Code: [Copy to clipboard]  
    tar zxvf ssl.ca-0.1.tar.gz
    cd ssl.ca-0.1
    ./new-root-ca.sh
    ./new-server-cert.sh server
    ./sign-server-cert.sh server           
     


    我只写了相关的命令,后面三个命令执行时会有一系列的问题需要回答:密码、省份、城市、机构  。。。。有够烦的,自己看着办吧,赫赫
    不过友情提示一下:./new-server-cert.sh server 的时候,commonName 最好设成跟你的 ServerName 一样,不然 apache 启动中会生成错误日志。

    好了,然后到 /usr/local/etc/apache2 目录下面建两个目录来存放刚才生成的 crt 和 key 文件

     

      Code: [Copy to clipboard]  
    mkdir ssl_crt
    mkdir ssl_key
     


    然后将刚才生成的四个文件放到新目录下面,再修改属性,以策安全

     

      Code: [Copy to clipboard]  
    cp ca.crt /usr/local/etc/apache2/ssl_crt
    cp ca.key /usr/local/etc/apache2/ssl_key
    cp server.crt /usr/local/etc/apache2/ssl_crt
    cp server.key /usr/local/etc/apache2/ssl_key
    cd /usr/local/etc/apache2/ssl_key
    chmod 444 server.key
    chmod 444 server.key
    cd /usr/local/etc/apache2/ssl_crt
    chmod 444 server.crt
    chmod 444 server.crt
     


    OK,搞定,现在启动 apache2 应该没有问题了


     

    字体:
     
    设为主页 收藏本站 联系我们 友情连接 商务合作 网友留言
    Copyright©2006-2008 中华网络安全联盟 All rights reserved.