Magento是一款电子商务软件平台,很多公司都在使用它,其社区版是一款开源程序,既免费又能使用,大量第三方开发的插件和主题扩展了其默认功能和设计,正因如此Magento正逐渐演变成电子商务行业的WordPress 。
然而,Magento 变得日益受欢迎,这给了黑客们一个理由,一个觊觎这个电子商务平台的理由,且这个理由足够充分。尤其是,要是你经营一家网店,而这家网店使用的是 Magento 平台,那么你所拥有的客户信息,那些很重要、很敏感的客户信息,在黑客眼中就成了异常宝贵的商品。因而,做好全面的摸底工作这件事是有必要的,要采取最佳实践,以此确保 Magento 部署系统的每个部分的安全。
本教程里,我们会去探讨Magento安全范畴的最佳实践,借助几个实例,教你怎样确保Magento网站的安全。
1. 为Magento管理员帐户选择一个强大、安全的密码。
想确保所安装的Magento系统安装得可靠,那么第一步便是要为Magento管理员帐户去设置一个强密码,要确保管理员的密码长度起码是包含数字、大小写字母以及特殊字符(像“q&t:A;-Q&4′?>#6”)的十个随机字符,接着去删除掉不使用的其他任何帐户,因为拥有的帐户数量越少,黑客得手的机会也就越小。
为全部Magento页面,选用加密连接SSL/HTTPS ,来进行相关连接操作。,。
有一种安全协议叫 SSL,它能对从 Web 浏览器发送向 Web 服务器的敏感信息加密,何种信息敏感,像登录信息、个人信息等等。若想在你的 Magento 网站施行这个 SSL,首先得获取一份 SSL 证书,从哪儿获取,比如从 Let’s Encrypt 那儿获取。在得到获取的这份证书之后,要对 Web 服务器进行配置,干啥,以便能侦听端口 443,然后通过 Magento 管理后端去启用 SSL。
设若好比这般,要是你在那基于Debian情形之下的服务器之上运用Apache,那么理应去创建出一个全新的虚拟主机 。
输入“vi”,接着键入“/etc/apache2/sites – available/your – domain.com – ssl.conf”,句号。
添加下面几行:
1.
2.
3. ServerName your-domain.com
4. 文档根目录为,/var/www/html/magento/ , 这是一个特定的路径 。
5. SSLEngine on
7.,SSLCertificateFile ,位于 /etc/apache2/ssl/ 路径下的 your – domain.crt 文件 ,这句 。
8. 明确指出通向私有密钥文件的路径 : ,其被用于 : 特定的某些用途 , 由具体且特定的情况所决定 , 这些情况。
9,SSL证书密钥文件位于,/etc/apache2/ssl/your-domain.key这个路径,。
11. SSLCACertificateFile,其位于 /etc/apache2/ssl/ 这个路径下的 ca-bundle.crt 作为相关文件。
12.
选项,索引,跟随符号链接,多视图,这一系列的设置组合为,十三,选项,减,索引,加,跟随符号链接,加,多视图 。
14. Order allow,deny
15. AllowOverride All
16.
17. 错误日志,/var/log/apache2/ssl_error.log ,为错误记录所在位置 。
18. 自定义日志,/var/log/apache2/ssl_access.log,组合记录 。
19.
20.
启用mod_ssl Apache模块:
1. # a2enmod ssl
禁止使用默认的SSL虚拟主机,并且开启”your-domain.com – ssl.conf”这个虚拟主机:
1. # a2dissite default-ssl
2. # 将你的域名的SSL配置文件启用对“your-domain.com-ssl.conf”这个文件的名为a2ensite的操作 。
最后,重启Apache,让变更生效:
1. 对,那个位于 /etc/init.d/ 路径下的 apache2 执行重启操作 。
先登录进到Magento管理后段,接着进入“系统”,再进入其中的“配置”界面。接着寻找左边的菜单,于“通用”选择列表里,点击“Web”选项。在“安全”选项卡之上,把“http”更改为“https”,并且把“前端使用安全URL”以及“管理员使用安全ULR”设置为“是”。千万不要忘记清空Magento缓存和Web浏览器的缓存,接着尝试用https去访问你的网站。
若若干访客凭http://your-domain.com将你的网站设置书签,你又希确保所有http请求转向https,可把下面几排加到坐落于Magento网站的文档根目录处的.htaccess文件(像”。
(位于)/var/www/html/magento/ 这个目录下的.htaccess 文件, :
1. RewriteCond %{HTTPS} off
重写规则为,若是以这种开头的任意内容且直接过渡终止于末尾,那么就会被重定向至网址https://your – domain.com/所对应的相同字符串后续内容连接构成的网址 。。
3. 为管理员后端创建自定义路径。
要是黑客运用蛮力方式进行攻击,试图闯入你的Magento后端,那Magento的默认管理员URL(像是yourstore.com/store/admin)极有可能轻易变成黑客的目标。为避免这种状况发生,你能够定制默认的管理员路径,像下面这样。
使用SSH,以根用户的权限登录进入服务器,接着,把处于Magento安装系统里的,那个位于 /app/etc目录之下的local.xml文件打开(例如 ) 。
在路径为这个的文件所对应的:/var/www/html/magento/app/etc/local.xml 里,去寻觅下面这样的一行:
1.
把“admin”换作更为复杂的名称,像是“MyMagento123”,又或者你期望管理员后端的URL所具备的任何名称,这会使管理员URL转变为。
你可以访问yourstore网的store板块,其中有MyMagento123 。
4. 将获准拥有管理员访问权的IP地址加入白名单。
除了如同上面那般对管理员URL予以隐藏之外,你另外能够于网络层面针对管理员URL的访问加以限制。也就是说,把管理员访问权限定于你明确许可的仅仅寥寥几个IP地址或者CIDR段。想要针对Apache创建一份IP白名单,那就把下面这个LocationMatch指令添加至你的虚拟主机配置当中。需要注意的是:”MyMagento123″是你先前定义的自定义管理员登录页面。
1.
2. Order Deny,Allow
3. Deny from All
设置允许来自111.111.111.0,子网掩码为255.255.25。
5.
将白名单更新之后,可不要忘了去让Apache重新启动哦。当下呢,你就仅仅只能从被指定的那个IP地址段去访问自定义管理员登录页面啦 。
这似乎不是一句有语义及可清晰处理的完整句子呀,请你提供完整的、有确切语义的内容以便我进行改写 ,仅“yourstore.com/store/My。
5. 加固Magento网站的文件许可机制。
为达到遵守最小权限原则的目的,就得保证Magento网站文件以及目录不会被Web服务器以外的任一系统写入,基于此,Web服务器用户(Debian上的www-data,或者CentOS上的apache)便需要能够访问Magento网站文档根目录下面的Magento网站文件与目录,于是运行下面这个命令来达成这点(在Debian上):
# 将 /var/www/html/magento 的所有者改为 www-data,所属组改为 www-data 并以递归方式进行操作。
对于目录设定chmod 750,给尽数网站文件配以640设定,“app/etc”、“media”与“var”这些目录不在此列,它们所需为770权限(即770权限会把全面控制权赋予所有者以及小组,不给其余用户赋予任何权限),。
寻找,位于 /var/www/html/magento 路径下,类型为文件的对象,将其打印输出为以 0 结尾的格式,接着使用这些输出,以 0 结尾作为参数,运行 xargs 命令,对这些文件执行将权限修改为 640 的操作。
查找,用于查找指定路径下符合要求的文件或目录,它使用的查找目标是/var/www/html/magento这个路径,查找类型为目录,以-print0这种方式输出,然后通过管道符将其输出传递给xargs,xargs再以-r0这种方式获取输入并执行chmod。
3. 执行chmod命令,该命令为 -R模式,要添加权限,是给群组添加可写权限,针对的目录是 /var/www/html/magento/下的 {app/etc,media,var} 。
6. 为管理员访问使用双因子验证。
就安全来讲,不存在什么所谓的巧妙法子、高明招数。在这一范畴,能给管理员访问增添的另一重保障便是双因子验证。要是启用了双因子验证插件,系统要你出示一次性安全码,才可访问Magento后端。一次性安全码由安装在智能手机上的GoogleAuthenticator应用程序生成,心怀不良的黑客很难获取到。
7. 只使用来自可信源的Magento插件。
任一款软件系统的安全性,皆取决于最薄弱的那一环。庞大的第三方Magento插件生态系统,无疑对Magento用户有益,然而每一个此类插件,皆有可能带来全新的攻击途径。即便实施了其他所有安全保护举措,只要某个编写欠佳的插件存在一个安全漏洞,便能够突破你的Magento系统。在把任何第三方插件整合至你的Magento商店之前,总需做好摸底工作,从Magento社区等独立社区去了解开发者的声誉以及客户评论。要使用的插件,是那些只来自可信源的,是那些一贯可靠的,是那些经过定期更新的,是那些得到维护的 。
8. 定期更新Magento。
每当推出全新的安全补丁或者不同版本时,对应所需更新安装的Magento,其中涵盖了所有的插件以及所有主题涵盖了其也涵盖了所有主题。在正式着手进行更新Magento之前,针对你的Magento网站文件并且针对其数据库去进行备份这无疑是个不错的主意。
想弄清楚当下安装于网站之上的Magento究竟是哪一个版本,借助SSH以根用户的身份登录进而进入到服务器,寻找到基于Magento的网站的文档根目录(“/var/www/html/magento”),去运行下面几个命令:
1. # cd /var/www/html/magento
2. # php -r “包含 ‘app/Mage.php’;输出 :’Your Magento version is: ‘,接着输出 Mage::getVersion 的结果 ;” ;输出 “”;。
结束语
免责声明:网所有文字、图片、视频、音频等资料均来自互联网,不代表本站赞同其观点,内容仅提供用户参考,若因此产生任何纠纷,本站概不负责,如有侵权联系本站删除!邮箱:207985384@qq.com https://www.ainiseo.com/jianzhan/68269.html