基本上,这是在写观念,关于详细作法及组态,有机会再互相讨论,否则我做的很用力但没人用的着也是白搭。
一、安装Windows server2003的部分
1. 自然就是administrator更名,密码机车、patch要上、必要的软体装一装(例如Ultra Edit我是觉得一定会用到)
2. 关闭不必要服务:
当初资策会的讲义是这样写:Alerter, Clipbook伺服器, DHCP用户端,Diectory Replicator, FTP Publishing Service, License Logging Service, Messenger, Netlogon, Network DDE, Network Monitor, Remote Access Server, Remote Procedure Call Locator, Schedule Server, Simple Services, spooler, TCP/IP NetBIOS Helper, Telephone Service等
不过我有些服务我无法关闭,也不知道为什么….跟登录档一样,要多看一些文章来决定哪些非必要的通通关起来。
3. pagefile换位置,不要同一颗号称比较好,更实际的是,要ghost的时候也快一点,映像档也小一点
4. 控制台-系统-进阶-效能设定 处理器排程跟记忆体使用量(就是改虚拟记忆体同一个地方的上面啦)改到右边的背景服务跟系统快取记忆体
5. 网路连线右键内容那个有名的「File and Printer Sharing for Microsoft Networks」,我真的不懂要不要勾,我记得不勾的话该Web Server 也可以正常运作。勾下去可以选「内容」-「伺服器最佳化」,动态网站要勾「网路应用程式的资料传输量最大化」
6. 修改登录档:例如L2 cache、磁碟缓冲跟一些有的没的,视各人喜好,这部分还有待整理,sese12讨论区有,主题好像叫做「榨干XP效能」之类的
7. 群组原则部分,需要多花一点时间来配置成自己所希望的状态,例如帐号密码原则啦、帐户锁定时间啦、稽核原则啦(登入成功失败我都会看)、使用者权限指派(例如谁可以关机等)在「安全性选项」那里,更是需要花心思跟时间去看(虽然预设值应该已经差不多了)
8. 启用效能监控,差不多就是CPU啦、RAM啦、TCP v4的 segment/sec等等
9. 关于安全性部分,我会另写在别篇
二、安装IIS6.0或阿怕器
1. IIS视情况看看FTP或WebDev要不要装。由于IIS6.0的FTP服务用的帐号一定是windows的user account,这点很鸟,除非你都让人匿名登入,否则我会另装雷电FTP,这套功能还算强大,就是比IIS的FTP难设定就是了。
2. 关于伺服器执行CGI相关的登录档修改:这我真的不知道改下去会发生啥事,相关内容在资策会的IIS讲义里有写
3. 关于IIS或阿怕器的安全性相关问题,其实观念是一样的,只是图形介面的IIS比较好设罢了。这里能谈的还不就是存取控制跟身份验证?看我整里的资讯安全篇里头的观念就好了
4. 伺服器最佳化部分,要再自己翻书,我觉得能变动的部分都不难
5. 我会把秀给user看的错误讯息(如error 403)改掉,IIS我应该会努力伪装成阿怕器,或是统一成一个画面,要user自己对照列出号码跟讯息
Windows 跟 IIS装完以后,我就会把本机的防火墙装起来,第一件事情就是滤掉ICMP echo request
三、安装PHP
1. php 4.x跟php 5.x不大一样,除非对php很熟,否则用5.x可能会因为php.ini组态问题导致php无法启用,或者搭不上IIS6.0,为了保险起见,我是用php4.3.6
2. php.ini部分,细部选项太多,最好有书按表操课。光是安装方法就不只一种,一票path也不知道设来干嘛?
3. PHP+IIS会比较复杂一些,尤其是IIS6.0。关于这部分我有写下简单步骤,有必要再问我
四、MySQL安装以及phpmyadmin网页
1. MySQL 5x版本不知道正式版出来了没,我是乖乖的用上一版啦
2. 安装时输入的帐号密码好像一点屁用都没有,反正预设都会跑出一个没密码的root 帐号,且是完全权限
3. phpmyadmin是一个使用web介面控制SQL的好东西(使用文字介面对SQL下命令,我是完全不会啦)phpmyadmin本身就是一个php动态网页,所以先确定IIS跟PHP是OK的,接着把整个phpmyadmin目录扔到一个遥远的路径(如D槽)接着给他一个虚拟路径后,使用
http://F...N/虚拟路径/index.php去使用及组态你的资料库。一定要使用虚拟路径喔,或者至少要rename,预设路径phpmyadmin实在太危险了。而且我只允许本机登入此页面,所以也会锁IP,这比设定需要帐号密码才能登入phpmyadmin页面还实际。(注*)
4. 一般来说,马上把root干掉,设一个同root权限且机车的帐号密码给phpmyadmin用(当然,phpmyadmin登入SQL的帐号密码也要跟着改),设一个没有管理权限的帐号给即将架设的网站使用
注*:做网页的看来很多人习惯不佳,喜欢使用方便好记或预设的东西。例如我有一天无聊去猜大润发www.rt-mart.com.tw有没有管理介面,结果一猜就中(www.rt-mart.com.tw/admin),接着我猜公司内部网站intra.rt-mart.com.tw,第三次就中(intra.rt-mart.com.tw/include)。当然大润发都有设定存取控制就是了,所以秀「您没有检视此网页的授权」,而要我是管理员就会通通改成「无此网页」骗人
五、动态网站的安装
1. 凡是使用到资料库的免钱套装动态网站,一定会有一个组态档(通常叫做configure.php之类的)设定登入SQL的帐号密码,反正把他弄成跟你SQL里的设定的一致就对了,否则网站根本无法运作。
2. 有些有名的免钱讨论区,会写一个install.php的页面,搞的就像安装软体一样,这样使用者要架站就更简单了。
3. 一般这些一票人在用的讨论区,一定有一个web管理页面,视必要设以存取控制或路径rename
4. 我会写一个index.html的页面来将网站导入真正的首页,且使用者在我的网站浏览时永远都是秀http://FQDN/index.html ,隐藏我的目录。不过遇到免费套件网站,就没啥屁用了,目录结构天知地知你知我知…
5. phpwind这讨论区很王八,我遇到的情况是,安装时资料库一定要保留root帐号给他,否则很多设定无法写入…写入N次资料库还是空值
六、灾难回复
1. 整个安装程序,从作业系统到讨论区程式,可以的话多做几个还原档,每告一段落就一次,避免遗憾。而且每一个映像档都要注明好内容,例如「已安装IIS及PHP」之类的,否则应该会忘记
2. php.ini备份
3. IIS有组态备份精灵备份组态,阿怕器把 .conf档全部拷贝另存
4. 资料库部分,在data路径下的资料全部拷贝
5. 论坛若有修改连结或程式码的话,也是整个路径拷贝,反正都不大
6. 以上动作,在windows下应该都可以排程执行