热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

WordPress安全设置方案

2019独角兽企业重金招聘Python工程师标准Author:做一个好人WordPress作为享誉全球的博客程序,已然被众多爱好者使用在自己的博客

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

Author:做一个好人
WordPress作为享誉全球的博客程序,已然被众多爱好者使用在自己的博客程序中,但盛名必然引来注意,更少不了不怀好意的骇客们的虎视眈眈。因此,加固WP成为个人博客或企业博客安全防御的工作之一。
        IDF根据对本站的渗透测试结果以及对系统加固的经验,结合网络上众多加固手段,总结出以下WP安全配置方法:
一、升级WordPress到最新版本
        一般来说,新版本的WordPress安全性都会比老版本要好一些,并且解决了已知的各种安全性问题,特别当遇到重大的版本升级时,新版本可能会解决更多的关键性问题。
二、隐藏WordPress版本
        编辑你的header.php模板,将里面关于WordPress的版本信息都删除,这样黑客就无法通过查看源代码的防治得知你的WordPress有没有升级到最新版本。值得注意的是,跟目录下默认生成的readme.html亦可泄露版本信息,记得删除它。
三、更改WordPress用户名
        每个黑客都知道WordPress的管理员用户是admin,具有管理员权限,会攻击这个用户,那么你需要创建一个新用户,将其设置为管理员权限,然后删除老的admin帐号,这就能避免黑客猜测管理员的用户名。
四、更改WordPress用户密码
        安装好WordPress后,系统会发送一个随机密码到你的信箱,修改这个密码,因为这个密码的长度只有6个字符,你要将密码修改为10个字符以上的复杂密码,并尽量使用字母、数字、符号相混合的密码。
五、防止WordPress目录显示
        WordPress会默认安装插件到/wp-content/plugins/目录下,通常情况下直接浏览这个目录会列出所有安装的插件名,这很糟糕,因为黑客可以利用已知插件的漏洞进行攻击,因此可以创建一个空的index.html文件放到这个目录下,当然,修改Apache的.htaccess文件也可以起到相同的作用。
六、保护wp-admin文件夹
        你可以通过限定IP地址访问WordPress管理员文件夹来进行保护,所有其他IP地址访问都返回禁止访问的信息,不过你也只能从一两个地方进行博客管理。另外,你需要放一个新的.htaccess文件到wp-admin目录下,防止根目录下的.htaccess文件被替换。
七、针对搜索引擎的保护
        很多WordPress系统文件不需要被搜索引擎索引,因此,修改你的robots.txt文件,增加一行Disallow: /wp-*
八、安装Login Lockdown插件
        这个插件可以记录失败的登录尝试的IP地址和时间,如果来自某一个IP地址的这种失败登录超过一定条件,那么系统将禁止这一IP地址继续尝试登录。
九、文件权限设置
        wordpress文件权限设置涉及到几个目录:
        根目录 /,/wp-admin/,/wp-includes/ :
        所有的文件应该设置为只有自己的用户帐号有写入权限,其它的只设置有读权限。
        /wp-content/:
        用户目录,可以设置为所有用户可写。
        /wp-content/themes/:
        主题目录,如果你需要在后台使用主题编辑器,需要设置为可写。
        /wp-content/plugins/ :
        插件目录,设置只有你的用户帐号可写。
        提示:wordpress全站目录不需要可写都可以正常运行,所以建议设置为全站不可写,当需要自动升级,安装主题或插件时,可以临时设置为可写,之后再关闭写入权限即可,这是最安全的设置。
十、数据库安全
        如果服务器运行有多个网站,并且用到mysql数据库,建议为各个数据库指定一个低权限的用户。数据库用户需要的权限有:
        Alter,Delete,Create,Drop,Execute,Select,Update。
        具体添加mysql数据库的命令为:
        如不需要远程连接:
        grant Alter,Delete,Create,Drop,Execute,Select,Update on dbname . * to ‘username′@’localhost’ identified by ‘password’;
        如需要远程连接:
        grant Alter,Delete,Create,Drop,Execute,Select,Update on dbname . * to ‘username′@’client-ip’ identified by ‘password’;
十一、隐藏式安全
        1、隐藏wordpress版本
        隐藏wordpress版本号,可以防止他人针对特定版本号寻找相应的漏洞,从而进行入侵。隐藏版本号的方法是,在当前主题目录下的 function.php文件中加入:
        function wpt_remove_version()
        {
                return ”;
        }
        add_filter(‘the_generator’, ‘wpt_remove_version’);
        2、重命名管理者账号
        为了防止黑客暴力破解后台密码,最好还是不要使用默认的admin帐号。修改默认帐号的方法可以通过mysql命令行执行命令:
        mysql> UPDATE wp_users SET user_login = ‘newuser’ WHERE user_login = ‘admin’;
        或者直接使用phpmyadmin可视化操作。
        3、更改 table_prefix(表名前缀)
        更改默认的表名前缀wp_可以防止sql注入攻击。
十二、数据备份
        不要指望把上面的设置完成就可以高枕无忧了,我们还是必须保持对数据的备份,以便数据丢失或黑客挂马时能迅速地恢复。
        安全无绝对,加固亦无万全,以上手段可平衡使用及安全,但绝非万无一失的配置方案。在攻击与防御之间寻求平衡,方是黑客之道!

本内容来源网络,www.jsjby.com


转:https://my.oschina.net/u/1257601/blog/270489



推荐阅读
  • 搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的详细步骤
    本文详细介绍了搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的步骤,包括环境说明、相关软件下载的地址以及所需的插件下载地址。 ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • 如何实现织梦DedeCms全站伪静态
    本文介绍了如何通过修改织梦DedeCms源代码来实现全站伪静态,以提高管理和SEO效果。全站伪静态可以避免重复URL的问题,同时通过使用mod_rewrite伪静态模块和.htaccess正则表达式,可以更好地适应搜索引擎的需求。文章还提到了一些相关的技术和工具,如Ubuntu、qt编程、tomcat端口、爬虫、php request根目录等。 ... [详细]
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • 本文介绍了在mac环境下使用nginx配置nodejs代理服务器的步骤,包括安装nginx、创建目录和文件、配置代理的域名和日志记录等。 ... [详细]
  • 安装mysqlclient失败解决办法
    本文介绍了在MAC系统中,使用django使用mysql数据库报错的解决办法。通过源码安装mysqlclient或将mysql_config添加到系统环境变量中,可以解决安装mysqlclient失败的问题。同时,还介绍了查看mysql安装路径和使配置文件生效的方法。 ... [详细]
  • 本文详细介绍了SQL日志收缩的方法,包括截断日志和删除不需要的旧日志记录。通过备份日志和使用DBCC SHRINKFILE命令可以实现日志的收缩。同时,还介绍了截断日志的原理和注意事项,包括不能截断事务日志的活动部分和MinLSN的确定方法。通过本文的方法,可以有效减小逻辑日志的大小,提高数据库的性能。 ... [详细]
  • 本文介绍了在Python3中如何使用选择文件对话框的格式打开和保存图片的方法。通过使用tkinter库中的filedialog模块的asksaveasfilename和askopenfilename函数,可以方便地选择要打开或保存的图片文件,并进行相关操作。具体的代码示例和操作步骤也被提供。 ... [详细]
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • 向QTextEdit拖放文件的方法及实现步骤
    本文介绍了在使用QTextEdit时如何实现拖放文件的功能,包括相关的方法和实现步骤。通过重写dragEnterEvent和dropEvent函数,并结合QMimeData和QUrl等类,可以轻松实现向QTextEdit拖放文件的功能。详细的代码实现和说明可以参考本文提供的示例代码。 ... [详细]
  • PHP设置MySQL字符集的方法及使用mysqli_set_charset函数
    本文介绍了PHP设置MySQL字符集的方法,详细介绍了使用mysqli_set_charset函数来规定与数据库服务器进行数据传送时要使用的字符集。通过示例代码演示了如何设置默认客户端字符集。 ... [详细]
  • Python如何调用类里面的方法
    本文介绍了在Python中调用同一个类中的方法需要加上self参数,并且规范写法要求每个函数的第一个参数都为self。同时还介绍了如何调用另一个类中的方法。详细内容请阅读剩余部分。 ... [详细]
  • 本文介绍了计算机网络的定义和通信流程,包括客户端编译文件、二进制转换、三层路由设备等。同时,还介绍了计算机网络中常用的关键词,如MAC地址和IP地址。 ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • Linux环境变量函数getenv、putenv、setenv和unsetenv详解
    本文详细解释了Linux中的环境变量函数getenv、putenv、setenv和unsetenv的用法和功能。通过使用这些函数,可以获取、设置和删除环境变量的值。同时给出了相应的函数原型、参数说明和返回值。通过示例代码演示了如何使用getenv函数获取环境变量的值,并打印出来。 ... [详细]
author-avatar
手机用户2602938575
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有