大约一个月前,我在与爱好相关的托管服务器上启动了WordPress博客。因此,我目前是新手。

由于我担心安全性,所以我做的一件事是安装插件WP安全扫描。根据插件的结果,我的网站检查了一下,除了我将其作为危险信号中的结果中:

file .htaccess在wp-admin/中不存在(在那里i ssh'd,它不存在)

好的,所以我对这个问题进行了大量搜索,并在.htaccess上找到太多信息。我一直在wordpress.org网站等上使用硬化wordpress,也遇到了本文: http://digwp.com/2010/07/wordpress-security-lockdown/

无论如何,我基本上与可用的大量信息感到困惑。

WP-Admin中的.htaccess文件应包含什么? 我已经读到,此.htaccess文件应该密码保护WP-Admin目录,并且我还读到这可能会导致功能问题。

提供帮助是非常感谢的。

谢谢。 -WDYPDX22

更新 好的,所以我没有登录我的博客,并且使用与平常不同的计算机。我输入URL www.mysite.com/wordpress/wp-admin/,并且有一个重定向登录。如果发生的事情发生了,那么WP-Admin目录中甚至还需要一个HTACCESS文件吗?

有帮助吗?

解决方案

更新: :当我第一次发布答案时,我错过了这个问题的关键;我的答案是关于 .htaccess 总体上,安全性,现在在双线下方列出(如果您感兴趣的话,请低头看。)不幸的是,我没有确保确保的特定经验 /wp-admin/ 使用 .htaccess 因此,我简单地列出我将在需要时和如果需要的两个资源:

第一个建议以下建议(这是 一些讨论.)

<Files ~ "\.(php)$">
AuthUserFile /etc/httpd/htpasswd
AuthType Basic
AuthName "restricted"
Order Deny,Allow
Deny from all
Require valid-user
Satisfy any
</Files>

后者有很多信息,尤其是在评论中,但是肯定会为您提供要阅读的列表不是您要寻找的答案。

抱歉,我对此不可能更有帮助。

========================================

通常,WordPress仅具有以下操作的永久链接处理,并且与安全性无关:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

最近我发现了 WP HTACESS控件 管理很多的插件 .htaccess 对你和我宁愿非常喜欢。经过调整之后,它的设置添加了以下选项:

# WPhtC: Disable ServerSignature on generated error pages
ServerSignature Off

# WPhtC: Disable directory browsing
Options All -Indexes

# WPhtC: Protect WP-config.php
<files wp-config.php>
order allow,deny
deny from all
</files>

# WPhtC: Protect .htaccess file
<files ~ "^.*\.([Hh][Tt][Aa])">
order allow,deny
deny from all
</files>

它还添加了这些关于性能而不是安全性的选项:

# WPhtC: Setting mod_gzip
<ifModule mod_gzip.c>
mod_gzip_on Yes
mod_gzip_dechunk Yes
mod_gzip_item_include file \.(html?|txt|css|js|php|pl)$
mod_gzip_item_include handler ^cgi-script$
mod_gzip_item_include mime ^text/.*
mod_gzip_item_include mime ^application/x-javascript.*
mod_gzip_item_exclude mime ^image/.*
mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
</ifModule>

# WPhtC: Setting mod_deflate
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html text/plain text/xml application/xml application/xhtml+xml text/javascript text/css application/x-javascript
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4.0[678] no-gzip
BrowserMatch bMSIE !no-gzip !gzip-only-text/html
Header append Vary User-Agent env=!dont-vary
</IfModule>

除此之外,还有一些我没有尝试过的插件,但是专注于安全性,并且与之互动 .htaccess - 您可能会尝试每个尝试它们,只是为了了解它们对 .htaccess 文件:

除此之外,如果您想了解(IMO)#1专家资源 与WordPress有关的Apache安全 你可以找到它 askapache.com;杜德是铁杆!他的博客无法解决您”太多信息“问题,但至少您可以将其视为权威资源!

以下是一些示例(尽管并非全部直接与WordPress相关,它们都适用):

无论如何,希望这会有所帮助。

其他提示

背后的想法是,如果您从过去的升级或零日攻击中挂着绞死的文件,则可能会被黑客入侵。另一种方法还可以保护WP-ADMIN,这将有助于防止蛮力攻击。

一个想法)如果仅仅是您编辑网站,则可以通过IP执行类似的操作来限制对文件夹的访问

<Files *>
Order deny,allow
Deny from All
Allow from 1.2.3.4
</Files>

为了使动态IP系统更容易忍受;您应该能够从子块中允许,因此,如果您的IP池始终来自1.2.3.128-1.2.3.255,那么您可以做类似1.2.3.128/25的事情

另一个想法)需要https,如果他们通过http尝试,则拒绝允许他们拒绝。但是不要将它们重定向到HTTPS。您可以使用自签名证书或CA Cert的一项证书而无需购买。

我总是在WP-Admin中包含一个.htaccess文件,即使我从未将其放入其中,因为它否定了根目录的文件。有些人使用wp-admin .htaccess文件将整个目录隐藏在除一个IP地址之外的所有目录中,另一些人则使用它来密码保护目录。

但是,使用.htaccess保护管理部分的密码将禁用AJAX通信,因为它们与WP-ADMIN/ADMIN-ADMIN-AJAX.PHP交互。

通常,除非您非常偏执,否则我没有太多理由将任何内容添加到管理员.htaccess文件中。无论如何,攻击通常针对WP容量。

我还使用库sseqlib在.htacces中进行更多安全性和不同的黑客攻击;请参阅链接

许可以下: CC-BY-SA归因
scroll top