SlideShare ist ein Scribd-Unternehmen logo
1 von 25
#MM17DE
Pavlo Okhrem
CEO at Elogic Commerce
12 Ways to Improve Magento 2
Security and Performance
OFTOPIC
Your Company logo
#MM17DE
 CEO and Co-Founder at eLogic Commerce
 Vice president of International affairs at
Cluster BIT
 Co-founder and chairman at Chernivtsi IT
CEO Club
 Participant in international business
programs in Sweden and Norway
 Not married
#MM17DE
Performance
1. Environment settings: PHP
2. Job Que
3. DB solutions: Scaling
4. Client side features
5. Advanced caching
6. Images compression, CDN
7. Profiling instruments for code optimization
8. Catalog search optimization
Agenda
Security
9. Permissions
10. Secure workflow/deployment
11. Server side logging configuration
12. Best practices of application configura
for security purposes
#MM17DE
Magento2 Performance tips
#MM17DE
Recommended list of extensions
Sufficient memory_limit 768MB
XDebug adds extra 20% to response time
OpCache with recommended settings:
- Enough memory portion to fit the code [512MB]
- Max_accelerated_files_count [60000]
- Timestamp validation / Consistency checks
Note: Max performance will be achieved only if
OpCache is enabled.
Environment Settings: PHP
php-bcmath
php-cli
php-common
php-gd | php-imagick
php-intl
php-mbstring
php-mcrypt
php-pdo
php-soap
php-xml
#MM17DE
Job Queue
Integration with RabbitMQ.
Available only in Enterprise Edition.
Asynchronus jobs execution
#MM17DE
DB Solutions: Scaling (EE)
Main (Catalog)Main (Catalog)
MasterMaster
Checkout
Master
Order MS
Master
Main
Slave
Catalog
Slave
Checkout
Slave
EAV
Slave
…
Available only in Magento 2
Enterprise Edition
#MM17DE
DB Solutions: Scaling (EE)
Adding a Slave database:
CLI: magento setup:db-schema:add-slave
Moving a separate part to a separate master database:
CLI: magento setup:db-schema:split-quote
CLI: magento setup:db-schema:split-sales
#MM17DE
Configuration: Client side features
Minification (CSS, JS, HTML)
JS resources bundling
Caching of static content
Images compression
CLI: magento catalog:images:resize
#MM17DE
Caching
#MM17DE
Caching
Can be used used as page
cache and session storing
#MM17DE
CDN and image compression
CDN will help you to
deliver content faster.
Reduce images size where possible.
Use JPEG format for catalog pictures.
#MM17DE
Code optimization
Using the Zend Z-Ray, you
can inspect, debug, and
optimize your pages, and
easily add additional
functionality.
#MM17DE
#MM17DE
Catalog search
Magento 2 EE provides the support for
Solr – a robust catalog search engine
option.
Elasticsearch utilizes the RESTful web
interface as well as uses schema-free
JSON documents. Merchants prefer this
search engine, because it offers real-time
search, high scalability, and enterprise-
level performance.
#MM17DE
One more useful thing
#MM17DE
Magento2 Security tips
#MM17DE
Permissions
The owner of the Magento file system: Must have full control (read/write/execute)
of all files and directories.
Must not be the web server user; it should be a different user.
The web server user must have write access to the following files and directories:
var app/etc pub
In addition, the web server's group must own the Magento file system so that the
Magento user (who is in the group) can share access to files with the web server user.
#MM17DE
Permissions
All directories have 770 permissions.
770 permissions give full control (that is, read/write/execute) to the owner and to the
group and no permissions to anyone else.
All files have 660 permissions.
660 permissions mean the owner and the group can read and write but other users
have no permissions.
#MM17DE
Workflow
Limit the access to the production server. Ideally, with the help of CI, so
nobody will have access to the live container
Limit admin access (use different roles)
Only 1 person should have the access to merging commits and deploying
them to the live environment
Purchase extensions from verified extensions providers
#MM17DE
Server logging
Configure the logging in a way that it detects all of the suspicious
activities on your server
Configure the firewall
Use Fail2Ban to ban all of the suspicious activities on your server
#MM17DE
Application configuration
Change the default admin url path
Change the default downloader url path
Use only secure communications protocol (SSH/SFTP/HTTPS)
Use strong, long, and unique passwords, and change them periodically.
Immediately install patches when new security issues are discovered.
#MM17DE
One more thing
Close all of the unnecessary ports on your server
Restrict SSH access by IP
Use password managers like LastPass, PassPack etc to
store password securely
#MM17DE
Useful resources
https://elogic.co/blog/ultimate-magento-performance-guide-nginxhttp2php-7-0-
8/ - How to configure Magento with http/2
https://elogic.co/blog/magento-security-lifehacks/ - Magento security
lifehacks
https://github.com/magento/magento2-zray - Magento2 z-ray plugin
https://www.linkedin.com/pulse/20141210024646-1143212-22-ways-to-
bulletproof-your-magento-security - 22 Ways to bulletproof your magento
security
#MM17DE
Contact me
Email: pavlo@elogic.co
Phone: +38(050)764-1000
Skype: okhrempavlo
LinkedIn: /paulokhrem
Facebook: /puncher

Weitere ähnliche Inhalte

Was ist angesagt?

Make WordPress Fly With Virtual Server Hosting - WordCamp Sydney 2014
Make WordPress Fly With Virtual Server Hosting  - WordCamp Sydney 2014Make WordPress Fly With Virtual Server Hosting  - WordCamp Sydney 2014
Make WordPress Fly With Virtual Server Hosting - WordCamp Sydney 2014Vlad Lasky
 
How to install and configure lamp (linux,apache mysql mariadb,php) with jooml...
How to install and configure lamp (linux,apache mysql mariadb,php) with jooml...How to install and configure lamp (linux,apache mysql mariadb,php) with jooml...
How to install and configure lamp (linux,apache mysql mariadb,php) with jooml...CloudMinister Technologies Pvt. Ltd
 
Microsoft LAPS - Local Administrator Password Solution
Microsoft LAPS - Local Administrator Password SolutionMicrosoft LAPS - Local Administrator Password Solution
Microsoft LAPS - Local Administrator Password SolutionInt64 Software Ltd
 
PHP Training Session 7
PHP Training Session 7PHP Training Session 7
PHP Training Session 7Vishal Kothari
 
Iis it-slideshares.blogspot.com
Iis it-slideshares.blogspot.comIis it-slideshares.blogspot.com
Iis it-slideshares.blogspot.comphanleson
 
WordPress MU 101
WordPress MU 101WordPress MU 101
WordPress MU 101Pete Mall
 
Nginx [engine x] and you (and WordPress)
Nginx [engine x] and you (and WordPress)Nginx [engine x] and you (and WordPress)
Nginx [engine x] and you (and WordPress)Justin Foell
 
10 Steps to Secure Wordpress Sites
10 Steps to Secure Wordpress Sites10 Steps to Secure Wordpress Sites
10 Steps to Secure Wordpress SitesAapna Infotech
 
L2 tp i-psec vpn on windows server 2016 step by step
L2 tp i-psec vpn on windows server 2016 step by stepL2 tp i-psec vpn on windows server 2016 step by step
L2 tp i-psec vpn on windows server 2016 step by stepAhmed Abdelwahed
 
WordCamp Finland 2015 - WordPress Security
WordCamp Finland 2015 - WordPress SecurityWordCamp Finland 2015 - WordPress Security
WordCamp Finland 2015 - WordPress SecurityTiia Rantanen
 
PSU Security Conference 2015 - LAPS Presentation
PSU Security Conference 2015 - LAPS PresentationPSU Security Conference 2015 - LAPS Presentation
PSU Security Conference 2015 - LAPS PresentationDan Barr
 
Iscsi storage in windows server 2016 step by step
Iscsi storage in windows server 2016 step by stepIscsi storage in windows server 2016 step by step
Iscsi storage in windows server 2016 step by stepAhmed Abdelwahed
 
Getting Started with CloudScript
Getting Started with CloudScriptGetting Started with CloudScript
Getting Started with CloudScriptNephoScale
 
My SQL Replication and Scaling
My SQL Replication and ScalingMy SQL Replication and Scaling
My SQL Replication and ScalingMindfire Solutions
 

Was ist angesagt? (15)

Make WordPress Fly With Virtual Server Hosting - WordCamp Sydney 2014
Make WordPress Fly With Virtual Server Hosting  - WordCamp Sydney 2014Make WordPress Fly With Virtual Server Hosting  - WordCamp Sydney 2014
Make WordPress Fly With Virtual Server Hosting - WordCamp Sydney 2014
 
How to install and configure lamp (linux,apache mysql mariadb,php) with jooml...
How to install and configure lamp (linux,apache mysql mariadb,php) with jooml...How to install and configure lamp (linux,apache mysql mariadb,php) with jooml...
How to install and configure lamp (linux,apache mysql mariadb,php) with jooml...
 
Microsoft LAPS - Local Administrator Password Solution
Microsoft LAPS - Local Administrator Password SolutionMicrosoft LAPS - Local Administrator Password Solution
Microsoft LAPS - Local Administrator Password Solution
 
How to Monitor IIS
How to Monitor IISHow to Monitor IIS
How to Monitor IIS
 
PHP Training Session 7
PHP Training Session 7PHP Training Session 7
PHP Training Session 7
 
Iis it-slideshares.blogspot.com
Iis it-slideshares.blogspot.comIis it-slideshares.blogspot.com
Iis it-slideshares.blogspot.com
 
WordPress MU 101
WordPress MU 101WordPress MU 101
WordPress MU 101
 
Nginx [engine x] and you (and WordPress)
Nginx [engine x] and you (and WordPress)Nginx [engine x] and you (and WordPress)
Nginx [engine x] and you (and WordPress)
 
10 Steps to Secure Wordpress Sites
10 Steps to Secure Wordpress Sites10 Steps to Secure Wordpress Sites
10 Steps to Secure Wordpress Sites
 
L2 tp i-psec vpn on windows server 2016 step by step
L2 tp i-psec vpn on windows server 2016 step by stepL2 tp i-psec vpn on windows server 2016 step by step
L2 tp i-psec vpn on windows server 2016 step by step
 
WordCamp Finland 2015 - WordPress Security
WordCamp Finland 2015 - WordPress SecurityWordCamp Finland 2015 - WordPress Security
WordCamp Finland 2015 - WordPress Security
 
PSU Security Conference 2015 - LAPS Presentation
PSU Security Conference 2015 - LAPS PresentationPSU Security Conference 2015 - LAPS Presentation
PSU Security Conference 2015 - LAPS Presentation
 
Iscsi storage in windows server 2016 step by step
Iscsi storage in windows server 2016 step by stepIscsi storage in windows server 2016 step by step
Iscsi storage in windows server 2016 step by step
 
Getting Started with CloudScript
Getting Started with CloudScriptGetting Started with CloudScript
Getting Started with CloudScript
 
My SQL Replication and Scaling
My SQL Replication and ScalingMy SQL Replication and Scaling
My SQL Replication and Scaling
 

Ähnlich wie 12 Ways to Improve Magento 2 Security and Performance

Zendcon scaling magento
Zendcon scaling magentoZendcon scaling magento
Zendcon scaling magentoMathew Beane
 
Joomla! Performance on Steroids
Joomla! Performance on SteroidsJoomla! Performance on Steroids
Joomla! Performance on SteroidsSiteGround.com
 
Application depolyment
Application depolymentApplication depolyment
Application depolymentshriikantL
 
How to Improve Magento Performance | Tips to Speed up Magento eCommerce Site/...
How to Improve Magento Performance | Tips to Speed up Magento eCommerce Site/...How to Improve Magento Performance | Tips to Speed up Magento eCommerce Site/...
How to Improve Magento Performance | Tips to Speed up Magento eCommerce Site/...I-Verve Inc
 
Lonestar php scalingmagento
Lonestar php scalingmagentoLonestar php scalingmagento
Lonestar php scalingmagentoMathew Beane
 
MagentoECG-UsingRedisasaCacheBackendinMagento
MagentoECG-UsingRedisasaCacheBackendinMagentoMagentoECG-UsingRedisasaCacheBackendinMagento
MagentoECG-UsingRedisasaCacheBackendinMagentoKirill Morozov
 
SAP Extended ECM by OpenText 10.5 - What's New?
SAP Extended ECM by OpenText 10.5 - What's New?SAP Extended ECM by OpenText 10.5 - What's New?
SAP Extended ECM by OpenText 10.5 - What's New?Thomas Demmler
 
Optimizing Magento Performance with Zend Server
Optimizing Magento Performance with Zend ServerOptimizing Magento Performance with Zend Server
Optimizing Magento Performance with Zend Servervarien
 
Headless Magento - Meet Magento Poland 2017
Headless Magento - Meet Magento Poland 2017Headless Magento - Meet Magento Poland 2017
Headless Magento - Meet Magento Poland 2017Sander Mangel
 
Beyond the Basics 1: Storage Engines
Beyond the Basics 1: Storage Engines	Beyond the Basics 1: Storage Engines
Beyond the Basics 1: Storage Engines MongoDB
 
High performance PHP: Scaling and getting the most out of your infrastructure
High performance PHP: Scaling and getting the most out of your infrastructureHigh performance PHP: Scaling and getting the most out of your infrastructure
High performance PHP: Scaling and getting the most out of your infrastructuremkherlakian
 
AD113 Speed Up Your Applications w/ Nginx and PageSpeed
AD113  Speed Up Your Applications w/ Nginx and PageSpeedAD113  Speed Up Your Applications w/ Nginx and PageSpeed
AD113 Speed Up Your Applications w/ Nginx and PageSpeededm00se
 
Profiling PHP with Xdebug / Webgrind
Profiling PHP with Xdebug / WebgrindProfiling PHP with Xdebug / Webgrind
Profiling PHP with Xdebug / WebgrindSam Keen
 
MongoDB World 2018: Managing a Mission Critical eCommerce Application on Mong...
MongoDB World 2018: Managing a Mission Critical eCommerce Application on Mong...MongoDB World 2018: Managing a Mission Critical eCommerce Application on Mong...
MongoDB World 2018: Managing a Mission Critical eCommerce Application on Mong...MongoDB
 
Securing Your Enterprise Web Apps with MongoDB Enterprise
Securing Your Enterprise Web Apps with MongoDB Enterprise Securing Your Enterprise Web Apps with MongoDB Enterprise
Securing Your Enterprise Web Apps with MongoDB Enterprise MongoDB
 
Magento 2.2: It's Coming Right For You! | Colorado Magento Meetup
Magento 2.2: It's Coming Right For You! | Colorado Magento MeetupMagento 2.2: It's Coming Right For You! | Colorado Magento Meetup
Magento 2.2: It's Coming Right For You! | Colorado Magento MeetupKelly Mason
 
How to Set iRidium Server?
How to Set iRidium Server?How to Set iRidium Server?
How to Set iRidium Server?iRidiumMobile365
 

Ähnlich wie 12 Ways to Improve Magento 2 Security and Performance (20)

Zendcon scaling magento
Zendcon scaling magentoZendcon scaling magento
Zendcon scaling magento
 
Joomla! Performance on Steroids
Joomla! Performance on SteroidsJoomla! Performance on Steroids
Joomla! Performance on Steroids
 
Application depolyment
Application depolymentApplication depolyment
Application depolyment
 
How to Improve Magento Performance | Tips to Speed up Magento eCommerce Site/...
How to Improve Magento Performance | Tips to Speed up Magento eCommerce Site/...How to Improve Magento Performance | Tips to Speed up Magento eCommerce Site/...
How to Improve Magento Performance | Tips to Speed up Magento eCommerce Site/...
 
Lonestar php scalingmagento
Lonestar php scalingmagentoLonestar php scalingmagento
Lonestar php scalingmagento
 
S903 palla
S903 pallaS903 palla
S903 palla
 
MagentoECG-UsingRedisasaCacheBackendinMagento
MagentoECG-UsingRedisasaCacheBackendinMagentoMagentoECG-UsingRedisasaCacheBackendinMagento
MagentoECG-UsingRedisasaCacheBackendinMagento
 
SAP Extended ECM by OpenText 10.5 - What's New?
SAP Extended ECM by OpenText 10.5 - What's New?SAP Extended ECM by OpenText 10.5 - What's New?
SAP Extended ECM by OpenText 10.5 - What's New?
 
Optimizing Magento Performance with Zend Server
Optimizing Magento Performance with Zend ServerOptimizing Magento Performance with Zend Server
Optimizing Magento Performance with Zend Server
 
Ecira CMS script
Ecira CMS scriptEcira CMS script
Ecira CMS script
 
Headless Magento - Meet Magento Poland 2017
Headless Magento - Meet Magento Poland 2017Headless Magento - Meet Magento Poland 2017
Headless Magento - Meet Magento Poland 2017
 
Beyond the Basics 1: Storage Engines
Beyond the Basics 1: Storage Engines	Beyond the Basics 1: Storage Engines
Beyond the Basics 1: Storage Engines
 
High performance PHP: Scaling and getting the most out of your infrastructure
High performance PHP: Scaling and getting the most out of your infrastructureHigh performance PHP: Scaling and getting the most out of your infrastructure
High performance PHP: Scaling and getting the most out of your infrastructure
 
AD113 Speed Up Your Applications w/ Nginx and PageSpeed
AD113  Speed Up Your Applications w/ Nginx and PageSpeedAD113  Speed Up Your Applications w/ Nginx and PageSpeed
AD113 Speed Up Your Applications w/ Nginx and PageSpeed
 
Profiling PHP with Xdebug / Webgrind
Profiling PHP with Xdebug / WebgrindProfiling PHP with Xdebug / Webgrind
Profiling PHP with Xdebug / Webgrind
 
21 05-2018
21 05-201821 05-2018
21 05-2018
 
MongoDB World 2018: Managing a Mission Critical eCommerce Application on Mong...
MongoDB World 2018: Managing a Mission Critical eCommerce Application on Mong...MongoDB World 2018: Managing a Mission Critical eCommerce Application on Mong...
MongoDB World 2018: Managing a Mission Critical eCommerce Application on Mong...
 
Securing Your Enterprise Web Apps with MongoDB Enterprise
Securing Your Enterprise Web Apps with MongoDB Enterprise Securing Your Enterprise Web Apps with MongoDB Enterprise
Securing Your Enterprise Web Apps with MongoDB Enterprise
 
Magento 2.2: It's Coming Right For You! | Colorado Magento Meetup
Magento 2.2: It's Coming Right For You! | Colorado Magento MeetupMagento 2.2: It's Coming Right For You! | Colorado Magento Meetup
Magento 2.2: It's Coming Right For You! | Colorado Magento Meetup
 
How to Set iRidium Server?
How to Set iRidium Server?How to Set iRidium Server?
How to Set iRidium Server?
 

Mehr von Elogic Magento Development

Миграция кода с Magento 1 на Magento 2
Миграция кода с Magento 1 на Magento 2Миграция кода с Magento 1 на Magento 2
Миграция кода с Magento 1 на Magento 2Elogic Magento Development
 
CQRS and Event-Sourcing in Magento2 by examples of MSI
CQRS and Event-Sourcing in Magento2 by examples of MSICQRS and Event-Sourcing in Magento2 by examples of MSI
CQRS and Event-Sourcing in Magento2 by examples of MSIElogic Magento Development
 
Chernivtsi Magento Meetup&Contribution day. Naida V.
Chernivtsi Magento Meetup&Contribution day. Naida V.Chernivtsi Magento Meetup&Contribution day. Naida V.
Chernivtsi Magento Meetup&Contribution day. Naida V.Elogic Magento Development
 
Chernivtsi Magento Meetup&Contribution day. Miniailo.I.
Chernivtsi Magento Meetup&Contribution day. Miniailo.I. Chernivtsi Magento Meetup&Contribution day. Miniailo.I.
Chernivtsi Magento Meetup&Contribution day. Miniailo.I. Elogic Magento Development
 
Chernivtsi Magento Meetup&Contribution day. V. Kublytskyi
 Chernivtsi Magento Meetup&Contribution day. V. Kublytskyi Chernivtsi Magento Meetup&Contribution day. V. Kublytskyi
Chernivtsi Magento Meetup&Contribution day. V. KublytskyiElogic Magento Development
 
Как благодаря композеру использовать сторонние компоненты в Magento 2
Как благодаря композеру использовать сторонние компоненты в Magento 2Как благодаря композеру использовать сторонние компоненты в Magento 2
Как благодаря композеру использовать сторонние компоненты в Magento 2Elogic Magento Development
 
Як перехід на Magento допоміг нам стати лідером
Як перехід на Magento допоміг нам стати лідеромЯк перехід на Magento допоміг нам стати лідером
Як перехід на Magento допоміг нам стати лідеромElogic Magento Development
 
Как переписать модуль с Magento 1 на Magento 2
Как переписать модуль с Magento 1 на Magento 2Как переписать модуль с Magento 1 на Magento 2
Как переписать модуль с Magento 1 на Magento 2Elogic Magento Development
 

Mehr von Elogic Magento Development (16)

Magento Technical guidelines
Magento Technical guidelinesMagento Technical guidelines
Magento Technical guidelines
 
Миграция кода с Magento 1 на Magento 2
Миграция кода с Magento 1 на Magento 2Миграция кода с Magento 1 на Magento 2
Миграция кода с Magento 1 на Magento 2
 
Introduction to Magento Community
Introduction to Magento Community Introduction to Magento Community
Introduction to Magento Community
 
CQRS and Event-Sourcing in Magento2 by examples of MSI
CQRS and Event-Sourcing in Magento2 by examples of MSICQRS and Event-Sourcing in Magento2 by examples of MSI
CQRS and Event-Sourcing in Magento2 by examples of MSI
 
Chernivtsi Magento Meetup&Contribution day. Naida V.
Chernivtsi Magento Meetup&Contribution day. Naida V.Chernivtsi Magento Meetup&Contribution day. Naida V.
Chernivtsi Magento Meetup&Contribution day. Naida V.
 
Chernivtsi Magento Meetup&Contribution day. Miniailo.I.
Chernivtsi Magento Meetup&Contribution day. Miniailo.I. Chernivtsi Magento Meetup&Contribution day. Miniailo.I.
Chernivtsi Magento Meetup&Contribution day. Miniailo.I.
 
Chernivtsi Magento Meetup&Contribution day. V. Kublytskyi
 Chernivtsi Magento Meetup&Contribution day. V. Kublytskyi Chernivtsi Magento Meetup&Contribution day. V. Kublytskyi
Chernivtsi Magento Meetup&Contribution day. V. Kublytskyi
 
The process of a Lean Magento development
The process of a Lean Magento developmentThe process of a Lean Magento development
The process of a Lean Magento development
 
MMnl Pavlo Okhrem
MMnl Pavlo Okhrem MMnl Pavlo Okhrem
MMnl Pavlo Okhrem
 
LIOF 2016
LIOF 2016LIOF 2016
LIOF 2016
 
Payment integration patterns в Magento2
Payment integration patterns в Magento2Payment integration patterns в Magento2
Payment integration patterns в Magento2
 
Как благодаря композеру использовать сторонние компоненты в Magento 2
Как благодаря композеру использовать сторонние компоненты в Magento 2Как благодаря композеру использовать сторонние компоненты в Magento 2
Как благодаря композеру использовать сторонние компоненты в Magento 2
 
Magento 2 - the future of eCommerce
Magento 2 - the future of eCommerceMagento 2 - the future of eCommerce
Magento 2 - the future of eCommerce
 
RequireJS і Magento 2
RequireJS і Magento 2RequireJS і Magento 2
RequireJS і Magento 2
 
Як перехід на Magento допоміг нам стати лідером
Як перехід на Magento допоміг нам стати лідеромЯк перехід на Magento допоміг нам стати лідером
Як перехід на Magento допоміг нам стати лідером
 
Как переписать модуль с Magento 1 на Magento 2
Как переписать модуль с Magento 1 на Magento 2Как переписать модуль с Magento 1 на Magento 2
Как переписать модуль с Magento 1 на Magento 2
 

Kürzlich hochgeladen

The 2024 Prime Day Panel: From Preparation to Profit
The 2024 Prime Day Panel: From Preparation to ProfitThe 2024 Prime Day Panel: From Preparation to Profit
The 2024 Prime Day Panel: From Preparation to ProfitTinuiti
 
Digital Business Strategy - How Food Brands Compete Through Technology
Digital Business Strategy - How Food Brands Compete Through TechnologyDigital Business Strategy - How Food Brands Compete Through Technology
Digital Business Strategy - How Food Brands Compete Through TechnologyJoanne Cabaero
 
Hifi Agartala Escorts Service Girl ^ 9332606886, WhatsApp Anytime Agartala
Hifi Agartala Escorts Service Girl ^ 9332606886, WhatsApp Anytime AgartalaHifi Agartala Escorts Service Girl ^ 9332606886, WhatsApp Anytime Agartala
Hifi Agartala Escorts Service Girl ^ 9332606886, WhatsApp Anytime Agartalameghakumariji156
 
Don’t Get Showroomed- Are you frustrated with showrooming?
Don’t Get Showroomed- Are you frustrated with showrooming?Don’t Get Showroomed- Are you frustrated with showrooming?
Don’t Get Showroomed- Are you frustrated with showrooming?Jasper Colin
 
Transform Your Outdoor Space: Landscaping with Plants in Singapore
Transform Your Outdoor Space: Landscaping with Plants in SingaporeTransform Your Outdoor Space: Landscaping with Plants in Singapore
Transform Your Outdoor Space: Landscaping with Plants in SingaporeThe Green Corner
 
5CL-ADBA,5cladba, the best supplier in China
5CL-ADBA,5cladba, the best supplier in China5CL-ADBA,5cladba, the best supplier in China
5CL-ADBA,5cladba, the best supplier in Chinaamy56318795
 
Supermarket Floral Ad Roundup- Week 19 2024.pdf
Supermarket Floral Ad Roundup- Week 19 2024.pdfSupermarket Floral Ad Roundup- Week 19 2024.pdf
Supermarket Floral Ad Roundup- Week 19 2024.pdfKarliNelson4
 
Mira Road Comfortable Call Girls -07506202331-Terbhi Genuine Call Girl
Mira Road Comfortable Call Girls -07506202331-Terbhi Genuine Call GirlMira Road Comfortable Call Girls -07506202331-Terbhi Genuine Call Girl
Mira Road Comfortable Call Girls -07506202331-Terbhi Genuine Call GirlPriya Reddy
 
FAQ Settings-ZenBasket Your Ecommerce Solution
FAQ Settings-ZenBasket Your Ecommerce SolutionFAQ Settings-ZenBasket Your Ecommerce Solution
FAQ Settings-ZenBasket Your Ecommerce SolutionDeborahnich
 

Kürzlich hochgeladen (9)

The 2024 Prime Day Panel: From Preparation to Profit
The 2024 Prime Day Panel: From Preparation to ProfitThe 2024 Prime Day Panel: From Preparation to Profit
The 2024 Prime Day Panel: From Preparation to Profit
 
Digital Business Strategy - How Food Brands Compete Through Technology
Digital Business Strategy - How Food Brands Compete Through TechnologyDigital Business Strategy - How Food Brands Compete Through Technology
Digital Business Strategy - How Food Brands Compete Through Technology
 
Hifi Agartala Escorts Service Girl ^ 9332606886, WhatsApp Anytime Agartala
Hifi Agartala Escorts Service Girl ^ 9332606886, WhatsApp Anytime AgartalaHifi Agartala Escorts Service Girl ^ 9332606886, WhatsApp Anytime Agartala
Hifi Agartala Escorts Service Girl ^ 9332606886, WhatsApp Anytime Agartala
 
Don’t Get Showroomed- Are you frustrated with showrooming?
Don’t Get Showroomed- Are you frustrated with showrooming?Don’t Get Showroomed- Are you frustrated with showrooming?
Don’t Get Showroomed- Are you frustrated with showrooming?
 
Transform Your Outdoor Space: Landscaping with Plants in Singapore
Transform Your Outdoor Space: Landscaping with Plants in SingaporeTransform Your Outdoor Space: Landscaping with Plants in Singapore
Transform Your Outdoor Space: Landscaping with Plants in Singapore
 
5CL-ADBA,5cladba, the best supplier in China
5CL-ADBA,5cladba, the best supplier in China5CL-ADBA,5cladba, the best supplier in China
5CL-ADBA,5cladba, the best supplier in China
 
Supermarket Floral Ad Roundup- Week 19 2024.pdf
Supermarket Floral Ad Roundup- Week 19 2024.pdfSupermarket Floral Ad Roundup- Week 19 2024.pdf
Supermarket Floral Ad Roundup- Week 19 2024.pdf
 
Mira Road Comfortable Call Girls -07506202331-Terbhi Genuine Call Girl
Mira Road Comfortable Call Girls -07506202331-Terbhi Genuine Call GirlMira Road Comfortable Call Girls -07506202331-Terbhi Genuine Call Girl
Mira Road Comfortable Call Girls -07506202331-Terbhi Genuine Call Girl
 
FAQ Settings-ZenBasket Your Ecommerce Solution
FAQ Settings-ZenBasket Your Ecommerce SolutionFAQ Settings-ZenBasket Your Ecommerce Solution
FAQ Settings-ZenBasket Your Ecommerce Solution
 

12 Ways to Improve Magento 2 Security and Performance

  • 1. #MM17DE Pavlo Okhrem CEO at Elogic Commerce 12 Ways to Improve Magento 2 Security and Performance OFTOPIC Your Company logo
  • 2. #MM17DE  CEO and Co-Founder at eLogic Commerce  Vice president of International affairs at Cluster BIT  Co-founder and chairman at Chernivtsi IT CEO Club  Participant in international business programs in Sweden and Norway  Not married
  • 3. #MM17DE Performance 1. Environment settings: PHP 2. Job Que 3. DB solutions: Scaling 4. Client side features 5. Advanced caching 6. Images compression, CDN 7. Profiling instruments for code optimization 8. Catalog search optimization Agenda Security 9. Permissions 10. Secure workflow/deployment 11. Server side logging configuration 12. Best practices of application configura for security purposes
  • 5. #MM17DE Recommended list of extensions Sufficient memory_limit 768MB XDebug adds extra 20% to response time OpCache with recommended settings: - Enough memory portion to fit the code [512MB] - Max_accelerated_files_count [60000] - Timestamp validation / Consistency checks Note: Max performance will be achieved only if OpCache is enabled. Environment Settings: PHP php-bcmath php-cli php-common php-gd | php-imagick php-intl php-mbstring php-mcrypt php-pdo php-soap php-xml
  • 6. #MM17DE Job Queue Integration with RabbitMQ. Available only in Enterprise Edition. Asynchronus jobs execution
  • 7. #MM17DE DB Solutions: Scaling (EE) Main (Catalog)Main (Catalog) MasterMaster Checkout Master Order MS Master Main Slave Catalog Slave Checkout Slave EAV Slave … Available only in Magento 2 Enterprise Edition
  • 8. #MM17DE DB Solutions: Scaling (EE) Adding a Slave database: CLI: magento setup:db-schema:add-slave Moving a separate part to a separate master database: CLI: magento setup:db-schema:split-quote CLI: magento setup:db-schema:split-sales
  • 9. #MM17DE Configuration: Client side features Minification (CSS, JS, HTML) JS resources bundling Caching of static content Images compression CLI: magento catalog:images:resize
  • 11. #MM17DE Caching Can be used used as page cache and session storing
  • 12. #MM17DE CDN and image compression CDN will help you to deliver content faster. Reduce images size where possible. Use JPEG format for catalog pictures.
  • 13. #MM17DE Code optimization Using the Zend Z-Ray, you can inspect, debug, and optimize your pages, and easily add additional functionality.
  • 15. #MM17DE Catalog search Magento 2 EE provides the support for Solr – a robust catalog search engine option. Elasticsearch utilizes the RESTful web interface as well as uses schema-free JSON documents. Merchants prefer this search engine, because it offers real-time search, high scalability, and enterprise- level performance.
  • 18. #MM17DE Permissions The owner of the Magento file system: Must have full control (read/write/execute) of all files and directories. Must not be the web server user; it should be a different user. The web server user must have write access to the following files and directories: var app/etc pub In addition, the web server's group must own the Magento file system so that the Magento user (who is in the group) can share access to files with the web server user.
  • 19. #MM17DE Permissions All directories have 770 permissions. 770 permissions give full control (that is, read/write/execute) to the owner and to the group and no permissions to anyone else. All files have 660 permissions. 660 permissions mean the owner and the group can read and write but other users have no permissions.
  • 20. #MM17DE Workflow Limit the access to the production server. Ideally, with the help of CI, so nobody will have access to the live container Limit admin access (use different roles) Only 1 person should have the access to merging commits and deploying them to the live environment Purchase extensions from verified extensions providers
  • 21. #MM17DE Server logging Configure the logging in a way that it detects all of the suspicious activities on your server Configure the firewall Use Fail2Ban to ban all of the suspicious activities on your server
  • 22. #MM17DE Application configuration Change the default admin url path Change the default downloader url path Use only secure communications protocol (SSH/SFTP/HTTPS) Use strong, long, and unique passwords, and change them periodically. Immediately install patches when new security issues are discovered.
  • 23. #MM17DE One more thing Close all of the unnecessary ports on your server Restrict SSH access by IP Use password managers like LastPass, PassPack etc to store password securely
  • 24. #MM17DE Useful resources https://elogic.co/blog/ultimate-magento-performance-guide-nginxhttp2php-7-0- 8/ - How to configure Magento with http/2 https://elogic.co/blog/magento-security-lifehacks/ - Magento security lifehacks https://github.com/magento/magento2-zray - Magento2 z-ray plugin https://www.linkedin.com/pulse/20141210024646-1143212-22-ways-to- bulletproof-your-magento-security - 22 Ways to bulletproof your magento security
  • 25. #MM17DE Contact me Email: pavlo@elogic.co Phone: +38(050)764-1000 Skype: okhrempavlo LinkedIn: /paulokhrem Facebook: /puncher