软件及平台要求:
1、平台:windows 2012 server datacenter(数据中心版)
2、环境:iis8 php5.3.20 rewrite_2.0_rtw_x64 phpMyAdmin-3.5.5
3、数据库:mysql 5.5.28
4、硬盘:要求全部用NTFS格式分区
5、测试用程序:discuz x2.5
配置顺序:
1、将所以分区格式化为 NTFS格式 (此步省略)
2、安装操作系统 windows server 2012 datacenter(此步省略)
3、安装 iis
4、安装 php5.3.20
5、安装 mysql5.5.28
6、安装 phpMyAdmin-3.5.5-all-languages
7、在C盘以外的分区新建一个文件夹(随便命名,用来作为网站根目录)
8、配置相关文件夹权限 例如:IUSR 、NETWORK SERVICE 修改权限
测试环境是否完全成功:
1、安装discuz x2.5
2、用phpmyadmin操作 mysql5进行表和库的操作
下面开始正题,偶现在配置 iis8 php环境。
首先准备好相关软件和环境,再配置,这些软件需要你自己去下载,网上都能找到:)由于全部都是开源软件,所以都使用最新版本,这样也有利于 php环境的配置。
一、
先安装 iis8.0,这是 Windows server 2012的默认服务器,性能相对上一代的
iis7.5,有进一步的提升。打开 服务器管理器 - 添加角色和功能 - 找到 服务器角色 - 应用程序服务器 勾选,下一步 勾选 .net
framework 3.5进行安装,这个需要点时间,请耐心等待。
由于有点时间,看看 Windows server 2012系统长啥样子?刚刚就是 ie10,速度很不错,几乎和 Google Chrome相当。
任
务管理器的外观和内容也比之前的 2008r2 要详细些。2012最大的特点就是启动快速和开始菜单,其余各方面效率确实要高于
2008r2,但并不是完美的,比方删除较大和较多文件时,那速度要比任何操作系统都慢,呵呵。OK!经过近 10分钟后,终于安装成功。下面要安装
iis,2012的 iis在应用程序服务器下面,名称是 Web服务器IIS支持,刚才安装 .net framework 3.5,是为了
以后能够使用低版本的应用程序池子,方便管理服务器和调试各种程序。将需要的都勾选,这个安装很快,一下就好了。iis8.0,是目前微软最新的 web服务器环境,它在管理工具里面可以找到,
打
开 localhost 或 127.0.0.1,如果看到 iis8 大图标页面,就表示 iis安装成功!应用程序池一共有 6个,如果当作正规
web服务器工作,就必须关闭不需要或不用的,否则会增加服务器负担,一般
DefaultAppPool是默认的应用程序池,这个是效率最好的一个,所以不要新建也不要删除或修改它,对于喜欢
优化服务器性能的朋友来说,什么都用默认就是最高效的,至于是否最好,就要看实际需求。Service UnavailableHTTP Error
503. The service is unavailable.
//应用程序池 关闭之后提示。HTTP 错误 404.2 – Not Found
由于 Web 服务器上的“ISAPI 和 CGI 限制”列表设置,无法提供您请求的页面。
//asp.net 4.0拒绝之后提示。2012 iis8.0默认安装后,很多服务和组件就已经设置好了,不需要再作设置,但还是有部分未设置,这就需要我们手动来设置。
1、MIME类型偶只加了个 f4v/videox-flv,这个是 flash H.264格式的,和 flv一样的,只是质量高些。
2、默认文档 – 添加 index.asp index.php default.php这 3个文件类型,这是索引入口文件。
其它的就不作详细介绍,因为那些和 php无关的,至于它们的作用,偶只想说,米个组件都有它的功能,要不微软也不会提供这么多。
rewrite_2.0_rtw_x64.msi 这个软件是 iis的伪静态组件,现在下载并安装。有点难找,偶 E文不好哦~
官方网址:http://www.iis.net/learn/extensi … -url-rewrite-module
就用刚刚下载的最新安装包,URL Rewrite安装完成,全英文界面,但不影响功能。
二、
现在就开始配置 php了,偶之前下载了最新的 php5.3.20 nts安装版本,现在直接安装。下一步 下一步 选择 iis
FastCGI,下一步 下一步。完成。然后打开 php.ini,找到 short_open_tag,是将 Off改成 On开启,再找到
upload_max_filesize改成你需要的,当然无论改多大,实际并不可能上传那么大的文件,因为涉及到网速、接口和转发以及服务器本身的多种
限制。一定要记得保存 Ctrl + s,偶保存速度很快的,而且一般是 5秒保存一次,虽然麻烦些,但这样避免停电或无响应造成不必要的麻烦。
安装 mysql5.5.28,这个和 php一样,下一步 下一步 下一步,当然要勾选 Windows开机启动和设置下密码。OK,安装完成。
安装
phpMyAdmin-3.5.5-all-languages,这个就更容易了,复制进去,然后添加个权限就行,不过得新建个文件夹子,叫作
wwwroot,用它来作为网站根目录。添加相关权限,例如:IUSR 、NETWORK SERVICE 修改权限。另外还有个文件夹
Windows\Temp\ 添加 IUSR修改权限。设置好之后,将 iis目录修改至 当前文件目录,打开 iis信息服务(IIS)管理器,点开
网站 默认网站 – 高级设置 – 物理路径,这里修改成刚刚新建的 wwwroot文件夹位置,然后打开 phpmyadmin,就能够检测
php环境是否配置成功,OK,php环境配置成功。三、
由于 php环境已经配置成功,但是否完全成功,必须使用 1 - 2种程序测试,现在开始安装 discuz x2.5 UTF-8版本。论坛程序一般需要支持伪静态,现在配置。
HTTP 错误 404.0 – Not Found
您要找的资源已被删除、已更名或暂时不可用。
// discuz
x2.5开启静态化后提示这个,则说明 iis8 的 web.config或 URL Rewrite组件问题,检查就可以配置好,将 discuz
x2.5伪静态文件 web.config放至网站根目录后,URL Rewrite组件里面出现了伪静态规则,伪静态已经配置成功。
测试程序上传 10M单张图片和 另一个尺寸达到 5994_8774px的图像,均不成功,可能是由于程序本身的问题,最后上传一个
002_3000px.png则成功,但在文件编辑器内无法显示图片,发布后可以看到,这可以确实是程序本身问题,太大的图像是无法显示的,确实太大了
至此,整个 iis8
php环境配置完成,其实真正配置的时间是比较少的,但偶却花了太多时间在其它上面,呵呵。希望此教程能够帮助你配置出自己的
php环境,至于真正的服务器能否这样配置呢?答案是肯定的,但那些略有不同,只是细节上的问题,例如:端口,后台绑定
hosts,防火墙设置、杀毒软件设置、补丁和服务器软件优化等等,就给个实例吧:)不知道能否看见,具体的都需要自己的去做,最简单就是最高效的,这是
所有Windows系统的基本原则,好比刚刚安装的系统,是最快的,那么环境软件也一样,刚刚安装的,是最优配置,但依据程序功能的实现和访问速度,也需
要具体去配置,而那些配置,在偶看来,就是 10 - 20分钟的事情,无论多么复杂或者网站系统软件全部米了,恢复也只要 20分钟左右,呵呵。
正确设置磁盘的安全性,具体如下(虚拟机的安全设置,我们以asp程序为例子)重点:1、系统盘权限设置
C:分区部分:
c:\
administrators 全部(该文件夹,子文件夹及文件)
CREATOR OWNER 全部(只有子文件来及文件)
system 全部(该文件夹,子文件夹及文件)
IIS_WPG 创建文件/写入数据(只有该文件夹)
IIS_WPG(该文件夹,子文件夹及文件)
遍历文件夹/运行文件
列出文件夹/读取数据
读取属性
创建文件夹/附加数据
读取权限
c:\Documents and Settings
administrators 全部(该文件夹,子文件夹及文件)
Power Users (该文件夹,子文件夹及文件)
读取和运行
列出文件夹目录
读取
SYSTEM全部(该文件夹,子文件夹及文件)
C:\Program Files
administrators 全部(该文件夹,子文件夹及文件)
CREATOR OWNER全部(只有子文件来及文件)
IIS_WPG (该文件夹,子文件夹及文件)
读取和运行
列出文件夹目录
读取
Power Users(该文件夹,子文件夹及文件)
修改权限
SYSTEM全部(该文件夹,子文件夹及文件)
TERMINAL SERVER USER (该文件夹,子文件夹及文件)
修改权限
2、网站及虚拟机权限设置(比如网站在E盘)
说明:我们假设网站全部在E盘wwwsite目录下,并且为每一个虚拟机创建了一个guest用户,用户名为vhost1...vhostn并且创建了一个webuser组,把所有的vhost用户全部加入这个webuser组里面方便管理
E:\
Administrators全部(该文件夹,子文件夹及文件)
E:\wwwsite
Administrators全部(该文件夹,子文件夹及文件)
system全部(该文件夹,子文件夹及文件)
service全部(该文件夹,子文件夹及文件)
E:\wwwsite\vhost1
Administrators全部(该文件夹,子文件夹及文件)
system全部(该文件夹,子文件夹及文件)
vhost1全部(该文件夹,子文件夹及文件)
3、数据备份盘
数据备份盘最好只指定一个特定的用户对它有完全操作的权限
比如F盘为数据备份盘,我们只指定一个管理员对它有完全操作的权限
4、其它地方的权限设置
请找到c盘的这些文件,把安全性设置只有特定的管理员有完全操作权限
下列这些文件只允许administrators访问
net.exe
net1.exet
cmd.exe
tftp.exe
netstat.exe
regedit.exe
at.exe
attrib.exe
cacls.exe
format.com
5.删除c:\inetpub目录,删除iis不必要的映射,建立陷阱帐号,更改描述
第三招:禁用不必要的服务,提高安全性和系统效率
Computer Browser 维护网络上计算机的最新列表以及提供这个列表
Task scheduler 允许程序在指定时间运行
Routing and Remote Access 在局域网以及广域网环境中为企业提供路由服务
Removable storage 管理可移动媒体、驱动程序和库
Remote Registry Service 允许远程注册表操作
Print Spooler 将文件加载到内存中以便以后打印。要用打印机的朋友不能禁用这项
IPSEC Policy Agent 管理IP安全策略以及启动ISAKMP/OakleyIKE)和IP安全驱动程序
Distributed Link Tracking Client 当文件在网络域的NTFS卷中移动时发送通知
Com+ Event System 提供事件的自动发布到订阅COM组件
Alerter 通知选定的用户和计算机管理警报
Error Reporting Service 收集、存储和向 Microsoft 报告异常应用程序
Messenger 传输客户端和服务器之间的 NET SEND 和 警报器服务消息
Telnet 允许远程用户登录到此计算机并运行程序
第四招:修改注册表,让系统更强壮
1、隐藏重要文件/目录可以修改注册表实现完全隐藏:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\ Current-Version\Explorer\Advanced\Folder\Hi-dden\SHOWALL”,鼠标右击 “CheckedValue”,选择修改,把数值由1改为0
2、启动系统自带的Internet连接_blank">防火墙,在设置服务选项中勾选Web服务器。
3、防止SYN洪水攻击
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
新建DWORD值,名为SynAttackProtect,值为2
EnablePMTUDiscovery REG_DWORD 0
NoNameReleaseOnDemand REG_DWORD 1
EnableDeadGWDetect REG_DWORD 0
KeepAliveTime REG_DWORD 300,000
PerformRouterDiscovery REG_DWORD 0
EnableICMPRedirects REG_DWORD 0
4. 禁止响应ICMP路由通告报文
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\interface
新建DWORD值,名为PerformRouterDiscovery 值为0
5. 防止ICMP重定向报文的攻击
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
将EnableICMPRedirects 值设为0
6. 不支持IGMP协议
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
新建DWORD值,名为IGMPLevel 值为0
7.修改终端服务端口
运行regedit,找到[HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Terminal Server \ Wds \ rdpwd \ Tds \ tcp],看到右边的PortNumber了吗?在十进制状态下改成你想要的端口号吧,比如7126之类的,只要不与其它冲突即可。
2、第二处HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Terminal Server \ WinStations \ RDP-Tcp,方法同上,记得改的端口号和上面改的一样就行了。
8、禁止IPC空连接:
cracker可以利用net use命令建立空连接,进而入侵,还有net view,nbtstat这些都是基于空连接的,禁止空连接就好了。打开注册表,找到Local_Machine\System\CurrentControlSet\Control\LSA-RestrictAnonymous 把这个值改成”1”即可。
9、更改TTL值
cracker可以根据ping回的TTL值来大致判断你的操作系统,如:
TTL=107(WINNT)
TTL=108(win2000)
TTL=127或128(win9x)
TTL=240或241(linux)
TTL=252(solaris)
TTL=240(Irix)
实际上你可以自己更改的:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters:DefaultTTL REG_DWORD 0-0xff(0-255 十进制,默认值128)改成一个莫名其妙的数字如258,起码让那些小菜鸟晕上半天,就此放弃入侵你也不一定哦
10. 删除默认共享
有人问过我一开机就共享所有盘,改回来以后,重启又变成了共享是怎么回事,这是2K为管理而设置的默认共享,必须通过修改注册表的方式取消它:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters:AutoShareServer类型是REG_DWORD把值改为0即可
11. 禁止建立空连接
默认情况下,任何用户通过通过空连接连上服务器,进而枚举出帐号,猜测密码。我们可以通过修改注册表来禁止建立空连接:
Local_Machine\System\CurrentControlSet\Control\LSA-RestrictAnonymous 的值改成”1”即可。
第五招:其它安全手段
1.禁用TCP/IP上的NetBIOS
网上邻居-属性-本地连接-属性-Internet协议(TCP/IP)属性-高级-WINS面板-NetBIOS设置-禁用TCP/IP上的NetBIOS。这样cracker就无法用nbtstat命令来读取你的NetBIOS信息和网卡MAC地址了。
2. 账户安全
首先禁止一切账户,除了你自己,呵呵。然后把Administrator改名。我呢就顺手又建了个Administrator账户,不过是什么权限都没有的那种,然后打开记事本,一阵乱敲,复制,粘贴到“密码”里去,呵呵,来破密码吧~!破完了才发现是个低级账户,看你崩溃不?
创建2个管理员用帐号
虽然这点看上去和上面这点有些矛盾,但事实上是服从上面的规则的。 创建一个一般权限帐号用来收信以及处理一些*常事物,另一个拥有Administrators 权限的帐户只在需要的时候使用。可以让管理员使用 “ RunAS” 命令来执行一些需要特权才能作的一些工作,以方便管理
3.更改C:\WINDOWS\Help\iisHelp\common\404b.htm内容改为 这样,出错了自动转到首页
4. 安全日志
我遇到过这样的情况,一台主机被别人入侵了,系统管理员请我去追查凶手,我登录进去一看:安全日志是空的,倒,请记住:Win2000的默认安装是不开任何安全审核的!那么请你到本地安全策略->审核策略中打开相应的审核,推荐的审核是:
账户管理 成功 失败
登录事件 成功 失败
对象访问 失败
策略更改 成功 失败
特权使用 失败
系统事件 成功 失败
目录服务访问 失败
账户登录事件 成功 失败
审核项目少的缺点是万一你想看发现没有记录那就一点都没辙;审核项目太多不仅会占用系统资源而且会导致你根本没空去看,这样就失去了审核的意义
5. 运行防毒软件
我见过的Win2000/Nt服务器从来没有见到有安装了防毒软件的,其实这一点非常重要。一些好的杀毒软件不仅能杀掉一些著名的病毒,还能查杀大量木马和后门程序。这样的话,“黑客”们使用的那些有名的木马就毫无用武之地了。不要忘了经常升级病毒库,我们推荐mcafree杀毒软件+blackice_blank">防火墙
6.sqlserver数据库服务器安全和serv-u ftp服务器安全配置,更改默认端口,和管理密码
7.设置ip筛选、用blackice禁止木马常用端口
一般禁用以下端口
135 138 139 443 445 4000 4899 7626
8.本地安全策略和组策略的设置,如果你在设置本地安全策略时设置错了,可以这样恢复成它的默认值.
打开 %SystemRoot%\Security文件夹,创建一个 "OldSecurity"子目录,将%SystemRoot%\Security下所有的.log文件移到这个新建的子文件夹中.
在%SystemRoot%\Security\database\下找到"Secedit.sdb"安全数据库并将其改名,如改为"Secedit.old".
启动"安全配置和分析"MMC管理单元:"开始"->"运行"->"MMC",启动管理控制台,"添加/删除管理单元",将"安全配置和分析"管理单元添加上.
右击"安全配置和分析"->"打开数据库",浏览"C:\WINNT\security\Database"文件夹,输入文件名"secedit.sdb",单击"打开".
当系统提示输入一个模板时,选择"Setup Security.inf",单击"打开".
如果系统提示"拒绝访问数据库",不管他.
你会发现在"C:\WINNT\security\Database"子文件夹中重新生成了新的安全数据库,
在"C:\WINNT\security"子文件夹下重新生成了log文件.安全数据库重建成功.
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)