大雀软件园

首页 软件下载 安卓市场 苹果市场 电脑游戏 安卓游戏 文章资讯 驱动下载
技术开发 网页设计 图形图象 数据库 网络媒体 网络安全 站长CLUB 操作系统 媒体动画 安卓相关
当前位置: 首页 -> 操作系统 -> Web服务器 -> WIN2000 Apache php mysql 安装及安全手册

WIN2000 Apache php mysql 安装及安全手册

时间: 2021-07-31 作者:daque

look:正文写给想在win2k平台上架设一个安定web月台的伙伴们。 所须要的步调: apache http://www.apache.org/dist/httpd/binaries/win32/ 咱们采用apache_1.3.28-win32-x86-no_src.msi,大概apache_2.0.47-win32-x86-no_ssl.msi 都不妨,勿运用低本子的步调,它们有缺点,很简单受到internet上的报复 php http://cn2.php.net/get/php-4.3.3-win32.zip/from/a/mirror php-4.3.3 mysql http://www.mysql.com/get/downloa ... 5-win.zip/from/pick mysql-4.0.15 注:低于这个本子的mysql,有缺点,勿运用 zendoptimizer-2[1].1.0a-windows-i386.exe php的优化器,扶助加密php剧本 mysql-front 一个运转于ms平台的gui的mysql的处置器,特殊好用 phpmyadmin-2.5.0-php.zip 鉴于php剧本的mysql处置器 phpencode.exe php加密编写翻译器 install~ 1.安置apache 因为安置很大略,pass~!,不过要提防的是,请勿安置到体例分区上 由于如许,不管从备份,保护,灾害性回复上,都是有上风的. 假如安置到了d:\\ 2.安置php 简直安置进程请参考php目次里的install.txt 须要提防的是,请勿运用cgi办法 以次为援用材料 ------------------------------------------------------------------ title 17/2/2002 php for windows arbitrary files execution (gif, mp3) summary through php.exe, an attacker can cause php to interpret any file as a php file, even if its extensions are not php. this would enable the remote attacker to execute arbitrary commands, leading to a system compromise. details vulnerable systems: php version 4.1.1 under windows php version 4.0.4 under windows an attacker can upload innocent looking files (with mp3, txt or gif extensions) through any uploading systems such as webexplorer (or any other php program that has uploading capabilities), and then request php to execute it. example: after uploading a file a \"gif\" extension (in our example huh.gif) that contains php code such as: #------------ <? phpinfo(); ?> #------------ an attacker can type the following address to get in to cause the php file to be executed: http://www.example.com/php/php.exe/upload_directory/huh.gif notice: php/php.exe is included in the url. additional information the information has been provided by compume and rootextractor. ps:大局部本子都有这个缺点.囊括少许最新本子,以是请不要以cgi安置!牢记... 3.安置mysql 安置到d:\\,也很大略,简直进程pass. 不过mysql安置后的默许树立简直让人担忧 以次援用我从来的作品 ----------------------------------------------------------------------------------- 2002/12/21 写在前方:无事可做,人命被耗费,痛~~~啊,以是就写了,正文no原创,整治而成! 默许安置的mysql效劳不安定成分波及的实质有: 一.mysql默许的受权表 二.不足日记本领 三.my.ini文献揭发口令 四.效劳默许被绑定十足的搜集接口上 五.默许安置路途下的mysql目次权力 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 一.mysql默许的受权表 因为mysql对身份考证是鉴于mysql这个数据库的,也叫受权表。一切的权力树立都在这边了。 咱们只计划最为要害的一个表 user表。它遏制的是接收或中断贯穿。 先看一下 select host,user,password,delete_priv from user; +-----------+------+------------------+-------------+ | host | user | password | delete_priv | +-----------+------+------------------+-------------+ | localhost | root | 67457e226a1a15bd | y | | % | root | | y | | localhost | | | y | | % | | | n | +-----------+------+------------------+-------------+ 此刻新的本子,安置结束城市展示一个赶快树立窗口,用来树立口令。 之上,即是user内外的实质(略了点)看看有什么题目? 咱们领会mysql的考证办法是比拟特出的,它鉴于两个2个消息来举行的 1.从何处贯穿 2.用户名 第一条没什么题目,固然口令必需是安定的。 第二条从任何长机,以用户root,不须要口令都不妨贯穿,权力为一切的权力。(注:这边的权力是全部权力) 第三条从当地长机,任何用户名(注:user为空缺,不表白不须要用户名),不须要口令,都不妨贯穿,一切的权力 第四条从任何长机,任何用户名,不须要口令,都不妨贯穿,无任何权力。 不妨看出,2\\3\\4都是不安定的,怎样报复这边就不说了,请参看材料文库。 即使你mysql只承诺当地贯穿,简略host的%和user中的nul(表白空) delete from user where host=‘%‘; delete from host where user=‘‘; 结果的user表,看上去因该是这个格式 +-----------+------+------------------+-------------+ | host | user | password | delete_priv | +-----------+------+------------------+-------------+ | localhost | root | 67457e226a1a15bd | y | +-----------+------+------------------+-------------+ 结果须要革新受权表,使其连忙奏效 flush privileges; 即使你的mysql须要被长途运用,须要为%段中的root帐号,加上一个安定的暗号 update user set password=password(‘youpass‘) where host=‘%‘; 个中youpass,即是口令 mysql> select host,user,password,delete_priv from user; +-----------+------+------------------+-------------+ | host | user | password | delete_priv | +-----------+------+------------------+-------------+ | localhost | root | 67457e226a1a15bd | y | | % | root | 77c590fa148bc9fb | y | +-----------+------+------------------+-------------+ 更好的做法是,对长途长机的贯穿,指定于一定的 窜改host中的%为承诺贯穿的长机,比方: 192.168.0.% 承诺一个一定的子网 www.sandflee.net 承诺一个一定的长机 帐号默许的名字也是担忧的题目。有大概引导被暴力破译 update user set user=‘localadmin‘ where host=‘localhost‘; update user set user=‘remoteadmin‘ where host=‘%‘; 结果的user表看上去像是这个格式 mysql> select host,user,password,delete_priv from user; +-----------+-------------+------------------+-------------+ | host | user | password | delete_priv | +-----------+-------------+------------------+-------------+ | localhost | localadmin | 67457e226a1a15bd | y | | % | remoteadmin | 77c590fa148bc9fb | y | +-----------+-------------+------------------+-------------+ 更为精细的材料,请去参考晏子的《mysql华文参考画册》。随意那都有下 二.不足日记本领 mysql安置实行此后,会在%systemroot%目次下爆发my.ini的树立文献 默许的实质如次: —————————————————————————————— basedir=c:/mysql #bind-address=192.168.0.1 datadir=c:/mysql/data #language=c:/mysql/share/your language directory #slow query log#= #tmpdir#= #port=3306 #set-variable=key_buffer=16m [winmysqladmin] server=c:/mysql/bin/mysqld-nt.exe user=root password=root 提防log#=这个 它没有被设置,且被刊出掉了。 变动为一个符合的路途,比方: log=c:/mysql/logs/mysql.log 三.my.ini文献揭发口令 咱们看到my.ini结果,有这两句 user=root password=root 即使,你安置实行时,运用了mysql所供给的赶快树立功效,(较新的本子)你的帐号和口令将被写到my.ini文献中。 这也是mysql写到启用组里的winmysqladmin.exe东西,运转时须要读取的。它供给的mysql效劳 的少许监督功效。如许winmysqladmin.exe本领赢得mysql效劳的状况消息。 本来,这个也不算缺点,咱们看看my.ini默许的权力,它不妨被user组用户读取。 进而引导口令被揭发 处置本领: 从新设定my.ini文献的权力. 从新设定帐号及口令 不运用赶快树立 四.效劳默许被绑定十足的搜集接口上 效劳被绑定到了一切的搜集接口上,比方,你只须要一个运转在前网的mysql效劳,然而你的呆板有 外网的接口,mysql也会被绑定上,进而带来少许不需要的烦恼和恫吓。 在my.ini里的这句 #bind-address=192.168.0.1 它默许被刊出掉了 该当翻开它 即使,不过当地运用,变动为 bind-address=127.0.0.1 即使是其它情景,该当选者一个符合的搜集接口 五.默许安置路途下的mysql目次权力 mysql默许的安置路途为c:\\mysql,基础上都罕见改,要改的话也是烦恼,还要去改my.ini。 但,如许就有个题目 常常c:\\的权力是everyone组-一切的权力。这是默许的,因为接受性,引导mysql下的data目次 也是everyone组-一切的权力。引导被随便考察、读取、简略,大概揭发和妨害数据。 变动mysql目次到一个符合,安定的考察权力。 over... ----------------------------------------------------------------------------------------- 这内里有个小小的语法缺点,请本人找到来:) setup~ 3个摆设文书档案 httpd.conf---apache php.ini-----php my.ini------mysql 1.http.conf 因为ms本子的apache不像*nix下有 user,group这两条训令,以是你别巴望它能像iis一律,把效劳器应答暗射到了iusr_name账号上 *nix下为nobody,以是你的apache是以system权力来运作的,它不太符合用来架设供给部分网页效劳器 httpd.conf很多参数,基础不必窜改就不妨处事了 以次是要窜改的场合 简略htdocs目次下的一切文献.简略cgi-bin下的一切文献,它们是用来尝试用的,不该当被保持. bindaddress * --须要绑定的地方 *只一切地方 directoryindex index.html index.htm --默许首页的名字 accessfilename .htaccess --遏制文献名字,倡导关掉或更名字,并且以\".\"发端的文献名在windows下是不承诺的 serversignature on --堕落消息,倡导off.如许就不会表露你apache的本子号了 ----------------------------------------------- alias /manual/ \"d:/apache/htdocs/manual/\" <directory \"d:/apache/htdocs/manual\"> options indexes followsymlinks multiviews allowoverride none 废除 order allow,deny allow from all </directory> ----------------------------------------------- addhandler cgi-script .cgi .pl --即使须要扶助cgi,就须要翻开,否者解释掉 loadmodule php4_module d:/php/sapi/php4apache.dll addmodule mod_php4.c addtype application/x-httpd-php .php --介入对php剧本的扶助 2.php.inf engine = on --翻开php扶助,即使不让php处事不妨engine = off safe_mode = off --安定形式,该当翻开它safe_mode = on safe_mode_exec_dir = --设定安定形式下不妨执路途序的目次 disable_functions = 要封闭的因变量,用\",\"分割倡导封闭phpinfo,get_cfg_var expose_php = on 倡导expose_php = off,如许在header里就不会有php的本子号 display_errors =on 倡导 display_errors =off,如许一切缺点消息,都将封闭 register_globals = off 机动全部变量,普遍都要翻开register_globals = on,但会激励很多 安定题目,更加是少许写编写的不是很好的php剧本,有大概危及到你的web server file_uploads = on 能否承诺上传文献,即使你不须要就off allow_url_fopen = off 能否长途翻开功效,倡导封闭 ;extension=php_gd.dll ;extension=php_gettext.dll ;extension=php_hyperwave.dll ;extension=php_iconv.dll ;extension=php_ifx.dll 翻开少许须要扶助的库,比方运用要运用图形因变量 须要copy php/extensions/php_gd.dll到你的体例目次,而后去掉; 从新启用apache,就不妨运用了 3.my.ini 上头有了,pass 安定倡导,之上3个树立文献,把她们的权力设定于system一切权力,administrators一切权力 4.加强假造目次的安定性 少许要害的训令 简直的列子: <directory \"d:/apache/htdocs/tools\"> options indexes allowoverride none order allow,deny allow from all </directory> php_flag engine off ;封闭php证明实行功效 php_admin_value safe_mode 1 ;安定形式 1-翻开 0-封闭 php_admin_value open_basedir d:/apache/htdocs/tools ;控制在一个拟订的目次 如许就控制了php剧本只能翻开d:/apache/htdocs/tools下的文献. 以次代码就没什么用了 ----------------------------------------------------------- $fd = fopen( $filename, \"r\" ); $view = fread($fd, filesize($filename)); echo \"<pre>\"; echo htmlspecialchars(\"$view\";); echo \"</pre>\"; fclose( $fd ); ----------------------------------------------------------- 起用apache-http考证功效 废除 <directory \"d:/apache/htdocs/home\"> ... ... allowoverride authconfig </directory> 中的 参数 allowoverride authconfig 提防的,这边的d:/apache/htdocs/home,表白为我安置的apache效劳的web根目次,你的和我的不确定一律 默许的,好象就没这个 allowoverride authconfig参数。 allowoverride authconfig参数的含意。 它的含意是,根目次下一切目次的考察遏制由它目次下的.htaccess文献来设定。 这边,我要多说点空话了。 干什么是.htaccess,这个文献名,而不是其它的。 这个是在accessfilename参数中设置的。默许的是如许。 accessfilename .htaccess 你要做的废除allowoverride authconfig参数(加#大概删掉) 如许做的来由 1.我感触烦恼(每个目次都须要放上.htaccess文献,且以\".\"发端的文献名在windows体例下,是不承诺的。) 2.不太安定 (它有大概被人看到。) 怎样对你所想要指定的目次举行考证? 一个列子 <directory \"d:/apache/htdocs/home\"> //设置要考证目次路途 authtype basic //办法,windows不扶助md5,以是请运用basic办法 authname test //设置表露在对话框范围名字 authuserfile d:/apache/user //设置暗号文献 errordocument 401 \"error password //设置考证波折后表露的实质,固然不妨是文献了 require valid-user 提防,我这边让它径直表露error password,用\"发端即是了,惟有一个哦 </directory> 径直加到httpd.conf反面即是了。 而后在apache的安置目次里的bin目次里有个htpasswd.exe文献 请到cmd下运转它 d:\\apache\\bin>htpasswd.exe usage: htpasswd [-cmdps] passwordfile username htpasswd -b[cmdps] passwordfile username password htpasswd -n[mdps] username htpasswd -nb[mdps] username password -c create a new file. //创造一个新的暗号文献(你第一次运用,因该运用这个参数) -n don\'t update file; display results on stdout. //表露到屏幕 -m force md5 encryption of the password (default). //加密口令(md5办法)默许的 -d force crypt encryption of the password. //运用crypt办法加密口令 -p do not encrypt the password (plaintext). //不加密口令 -s force sha encryption of the password. //运用sha算法加密 -b use the password from the command line rather than prompting for it. //互交办法 on windows, tpf and netware systems the \'-m\' flag is used by default. on all other systems, the \'-p\' flag will probably not work. —————————————————————————————————————— 列子: d:\\apache\\bin>htpasswd.exe -c d:\\apache\\user taotao automatically using md5 format on windows. new password: *** re-type new password: *** adding password for user taotao 就创造实行了 个中,要提防的 passwordfile,不该当放到web目次,由于会被人载入,很蠢,固然暗号仍旧被md5过 -c 参数是用来创造一个新的暗号文献。 d:\\apache\\user路途,要和你在 authuserfile d:/apache/user 树立的普遍。 而后从新启用你的apache效劳 牢记备份你的httpd.conf,php.ini和my.ini 安置zendoptimizer-2[1].1.0a-windows-i386.exe 很大略,它回机动窜改你的php.ini(c:\\winnt\\php.ini)文献 增添了如次实质: [zend] zend_optimizer.optimization_level=15 zend_extension_ts=\"c:\\program files\\zend\\lib\\zendoptimizer.dll\" 安置php优化器有很多的长处 加快了php的运转速率,最为要害的是它不妨加密php剧本 如许你写在php剧本里的user ,pass就不妨很好的被养护了 其余,你还不妨窜改apache的header,用utraedit32翻开apachecore.dll 搜索你所对应的apache本子号,改成其余就不妨了

热门阅览

最新排行

Copyright © 2019-2021 大雀软件园(www.daque.cn) All Rights Reserved.