当前位置:操作系统 > Unix/Linux >>

NetBSD2.0下架设入门级www服务器

先说点废话:

  俗话说新猪上任三把火,总要烧烧的,今天我也火上浇油一把。关于写本文的目的可不是为了扬名海内外,主要是看到BSD版绝大部分都是FreeBSD和OpenBSD的帖子,而NetBSD少的是可怜兮兮,再加上阿明斑竹的煽动才鼓起勇气在众高手面前板门弄斧一下,还望多多指教。

  看完本教程你将学会:

  1、利用SSH远程登录进行管理

  2、pkg、源代码包的安装方法

  3、利用VI编辑器修改配置文档

  4、通过修改系统文件自启动服务

  5、初级安全知识

  一、前期软件准备:

  由于个人网络环境因素,是先将pkg和源代码包从单位下载回家做的,所以第一步先下载相关软件:apache-2.0.54nb1.tgz、mysql-server-4.1.12nb1.tgz、mysql-client-4.1.12.tgz、perl-5.8.6nb4.tgz、expat-1.95.8nb2.tgz、apr-0.9.6.2.0.54nb1.tgz,以上软件可以从ftp://ftp.netbsd.org/pub/pkgsrc/packages/NetBSD-2.0/i386/All/

  下载到。另外还需php-4.4.0.tar.bz2源代码包(www.php.net);F-SecureSSH(google一下吧)

  二、设置SSH

  1、编辑rc.conf开启ssh

  #echosshd=YES>;>;/etc/rc.conf

  #echosendmail=NO>;>;/etc/rc.conf

  2、编辑sshd_config允许root帐号登陆

  #vi

  /etc/ssh/sshd_config

  找到#PermitRootLogin

  yes将#去掉保存并退出

  重启后ssh随即生效。

  3、修改网卡IP地址

  新建一个ifconfig.pcn0的文件。(pcn0为服务器网卡的类型,可通过ifconfig-a查看到)

  #echo

  192.168.112.10

  netmask

  255.255.255.0

  >;>;

  /etc/ifconfig.pcn0

  注意客户机的IP也应该为192.168.112.*,运行F-SecureSSHclient登陆上去,利用filetransfer将必要的安装包拷贝至/usr下。

  三、安装软件及手工启动

  1、安装perl

  #pkg_add

  /usr/perl-5.8.6nb4.tgz

  不用多说这个是必装的。

  2、安装apache

  #pkg_add

  /usr/apache-2.0.54nb1.tgz

  ============

  手工启动apache

  ============

  #cd

  /usr/pkg/sbin

  #./apachectl

  start

  如果报错,根据提示进行修改即可,一般会提示"using127.0.0.1forServerName",这个时候只需要:

  #hostname

  127.0.0.1

  #./apachectl

  start

  就应该能启动了。//此时打开ff(讨厌用IE)看看是否正常

  

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

  ============设置apache自启动============

  #cp

  /usr/pkg/share/examples/rc.d/apache

  /etc/rc.d

  #echo

  apache=YES

  >;>;

  /etc/rc.conf

  #echo

  hostname="127.0.0.1"

  >;>;

  /etc/rc.conf

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

  3、安装mysql

  #cd

  /usr

  #pkg_add

  mysql-server-4.1.12nb1.tgz

  //安装前最好将所需文件都放至同一目录

  ============

  mysql的手工启动方法

  ============

  #cd

  /usr/pkg/share/examples/rc.d/

  #./mysqldstart

  #mysql

  >;show

  databases;

  >;create

  database

  bbs;

  //为论坛创建bbs数据库

  >;exit

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

  ============

  设置mysql自启动

  ============

  #cp

  /usr/pkg/share/examples/rc.d/mysqld

  /etc/rc.d

  #echo

  mysqld=YES

  >;>;

  /etc/rc.conf

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

  ============

  修改mysql默认密码

  ============

  #cd

  /usr/pkg/bin

  #./mysqladmin

  -u

  root

  password

  '111111'

  //111111为root密码,这里要设置更复杂一些

  //连接本地数据库的方法:#./mysql

  -uroot

  -p

  //出于安全还应该禁止远程访问3306端口(修改my.cnf),改变数据库root的登陆名等等。

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

  4、安装php

  #cd

  /usr

  #tar

  zxvf

  php-4.4.0.tar.gz

  #cd

  php-4.4.0.tar.gz

  #./configure

  --with-mysql

  --with-apxs2=/usr/pkg/sbin/apxs

  --enable-safe-mode

  #make;make

  install;makeclean

  //zend不需要另行安装

  5、修改httpd.conf

  安装完PHP后,还需要手工配置一下httpd.conf文件才能正常解析php文件

  ============

  配置httpd.conf

  ============

  #vi

  /usr/pkg/etc/httpd/httpd.conf

  进入vi后,输入/AddType后回车(通过输入n可以向下寻找),找到不带#开头的后输入命令o,即可往下面添加:

  

  AddType

  application/x-httpd-php

  .php

  AddType

  application/x-httpd-php

  .inc

  AddType

  application/x-httpd-php

  .class//以上两行是为了防止代码泄露

  保存并退出

  #/usr/pkg/sbin/apachectl

  restart

  //注意:如果此文档配置出错,apache将不能正常启动!

  //为了防范脚本攻击和SQL注入还可以添加mod_security.c模块并进行合理设置

  //寻找Options

  Indexes,将Indexes去掉,可以不让别人索引你的的站点目录

  //设置ServerSignature为off

  //关闭CGI,注释掉:

  ScriptAlias/cgi-bin/"/usr/pkg/libexec/cgi-bin/"

  以及下一段

  <Directory"/usr/pkg/libexec/cgi-bin">;

  

  如何进一步提高自己的水平:

  1、学习如何优化系统

  2、学习ports的安装方式

  3、学习SSH的密钥登陆方式

  4、学习关于www服务器的安全(知识较多、较难也比较碎,例如jail和chroot等)

  5、学习关于www服务器的性能测试

  6、学会仔细看帮助文档
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,