|
先说点废话: 俗话说新猪上任三把火,总要烧烧的,今天我也火上浇油一把。关于写本文的目的可不是为了扬名海内外,主要是看到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-Secure SSH(Google一下吧)
二、设置SSH 1、编辑rc.conf开启ssh #echo sshd=YES >> /etc/rc.conf #echo sendmail=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-Secure SSH client登陆上去,利用file transfer将必要的安装包拷贝至/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 如果报错,根据提示进行修改即可,一般会提示"using 127.0.0.1 for ServerName",这个时候只需要: #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/ #./mysqld start #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; make clean //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"> AllowOverride None Options None Order allow,deny Allow from all </Directory> //由于本文不是专门针对apache的,所以很多配置项请参考其它文章
---------------------------------------------------------------------
6、修改php.ini ============ 设置php.ini ============ #cd /usr/php-4.4.0 #cp php.ini-dist /usr/local/lib/php.ini 编辑此文档: safe_mode=on //增加了许多限制能使php更加安全 register_global=off //关闭全局变量 open_basedir= /usr/pkg/share/httpd/htdocs //限制用户访问路径为站点目录 disable_function=phpinfo,get_cfg_var //防止泄露必要的信息 display_errors=off //php的所有错误和警告都不会显示 ---------------------------------------------------------------------
三、安装论坛 略,详细的步骤看动画。论坛一定要到官方站点下载,安装完后一定要打上最新的补丁。
四、最后 最后不要忘了关闭ssh,或者采用密钥登陆。 最好在服务器上开启防火墙,过滤没必要的端口或者防范端口扫描。 将常用的系统命令top等最好备份到软盘上。 本文存在的一些不足: 1、没有对系统作针对性的优化 2、软件安装没有采用通常建议的ports方式 3、没有对apache(httpd.conf)、php(php.ini)、mysql(my.cnf)进行更加深入更全面的设置和讲解
如何进一步提高自己的水平: 1、学习如何优化系统 2、学习ports的安装方式 3、学习SSH的密钥登陆方式 4、学习关于www服务器的安全(知识较多、较难也比较碎,例如jail和chroot等) 5、学习关于www服务器的性能测试 6、学会仔细看帮助文档
感谢:chinaunix.net的BSD版和Freebsdchina.org上所有的作者,也感谢我的父母和老婆能容忍:我这么肆无忌惮的使用电脑而从来不做饭。
|