我的服务器同时安装了wordpress和webmail客户端。
Wordpress可通过以下方式访问:_http://a-totally-awesome-domain.com/可以通过以下方式访问Web邮件:_http://a-totally-awesome-domain.com/webmail/现在,webmail客户端must not 可从wordpress admin外部访问。因此,我在中添加了以下内容。htaccess:
RewriteEngine On
# if the request\'s referer isn\'t from a php page on your site
RewriteCond %{HTTP_REFERER} !^http?://a-totally-awesome-domain.com
# deny access to the list of php files
RewriteRule ^(webmail/*)$ - [L,F]
这似乎很有效:如果尝试访问_http://a-totally-awesome-domain.com/webmail/是制造的。现在,对于wordpress管理集成部分,我创建了以下插件,以在wordpress管理中显示webmail客户端:
<?php
/*
Plugin Name: Webmail integration plugin
Description: hm...
Author: what?
Version: 0.1
*/
add_action(\'admin_menu\', \'webmail_plugin_setup\');
function webmail_plugin_setup() {
add_menu_page( \'Webmail\', \'Webmail\', \'manage_options\', \'webmail-plugin\', \'webmail_plugin_init\', \'dashicons-email-alt\');
}
function webmail_plugin_init() {
echo \'<iframe style="width:100%; height: 800px; overflow: hidden; border=0;" src="http://a-totally-awesome-domain.com/webmail/"></iframe>\';
}
?>
这使得webmail客户端在wordpress admin中很好地可用。
问题是,这是否足够安全?我读到iFrame被认为是安全风险。对于这种方法,我有什么需要担心的吗?考虑到我是网站上唯一的用户,而且webmail客户端隐藏在wordpress admin后面,是否存在任何可能的安全威胁?如果是,如何预防?
Edit:更多说明:
虽然webmail客户端确实支持身份验证,但我不希望其登录页面可以公开访问。主要是因为webmail客户端只支持用户名/密码登录,而wordpress则通过双因素身份验证、暴力检测和其他一些安全强化功能来保护。因此,在wordpress安装之后隐藏webmail客户端似乎是一个好主意。
请记住,我是wordpress和所有web内容的新手,非常感谢您的建议,谢谢!