it-swarm.asia

Güvenlik kaygılarını gidermek için ideal kurulum nedir?

WP bazı dizinlerin ve dosyaların yazılabilir olması için gerekenlerin farkındayım. Ayrıca izinlerin çok gevşek yapılmasının güvenlik delikleri açabileceğinin farkındayım. Son olarak, Linux sunucusundaki gibi çalıştıran kullanıcının (sunucunuzu buraya yerleştirin) bir faktör olabileceğini biliyorum.

Güvenlik bir yana, temaları ve eklentileri bloguma indirmeyi ve gerektiğinde onları güncellemeyi seviyorum. Uygun tercihler, bu tercihe bağlı olarak biraz garip görünüyor.

Burada ve orada küçük ayrıntı parçaları topladım, ancak bir tane varsa daha kesin bir cevap görmek isterim: güvenlikle başını sallayan tercih edilen kurulum nedir? Hangi izinler mevcut olmalı, site hangi kullanıcı olarak çalışmalıydı, vb.

8
Grant Palin

Sunucunuza FTP erişiminiz varsa, en güvenli kurulum tema veya eklenti dizininin web sunucunuz tarafından yazılabilir olması ve bunun yerine FTP kullanarak WordPress güncelleme dosyalarının bulunmasıdır. Bir eklentiyi güncellemeye gittiğinizde, WordPress size FTP bilgilerinizi ister.

FTP yöntemi doğrudan dosyadan daha yavaş, ancak sahte bir komut dosyası dosyalarınızı değiştiremeyeceği için çok daha güvenli.

10
Viper007Bond

@ Viper007Bond'ın belirttiği gibi, çekirdeğinizi, eklentilerinizi ve temalarınızı yerleşik güncelleme mekanizmalarıyla güncellemek, dosya izinleri devam ettiği sürece oldukça güvenlidir, çünkü gerçek kullanıcı bilgilerinizi kullanabilirler. Maksimum güvenlik için, SSH2 PHP uzantının kurulu olduğundan emin olmak istersiniz. Kurulum yöntemi (mümkünse) Host-to-Host arasında değişebilir, bu nedenle henüz mevcut değilse, barındırma servisine sormanız veya bir Googling yapmanız gerekebilir.

Birçok paylaşılan barındırma hizmeti, Apache kurulumlarında suexec işlevini kullanır, böylece web hizmeti gerçek kullanıcı olarak çalışır. Bu, çoğu izin sorununu ortadan kaldırır ve dosyalarınızın sunucudaki diğer kullanıcılardan korunmasına yardımcı olur. Ancak, Apache'nin ayrı bir kullanıcı olarak çalıştığı durumlarda, dosyaları WordPress'e yüklemek istiyorsanız, yükleme dizininde izinleri açmanız gerekir.

Bu durumda, muhtemelen wp-content/uploads dizininizin 0713 izinlerine sahip olmasını istersiniz (AKA rwx--x-wx). Bu, dizin sahibine tam izinler verir, grupları ,tam yolu biliyorlarsa dosyaları okuyabilir ve diğerleri (web sunucusu dahil) yolu bildikleri ve okuyabilecekleri dosyaları okuyabilir. dosya yarat/yaz.

Bazı önbellek eklentileri ayrıca yazabilecekleri bir wp-content/cache dizini (veya benzeri) olmasını bekler. Aynı izin tavsiyesi de bunun için geçerli olacaktır.

Son olarak, güzel kalıcı bağlantılar için, el ile güncellemeyi planlamadığınız sürece WordPress'in .htaccess dosyasını değiştirebilmesi gerekir. Bu durumda, dosya modu için 0646 istersiniz. Bununla birlikte, kalıcı bağlantı yapınıza bir kez yerleştikten sonra, normalde bunu tekrar değiştirmeniz gerekmeyecektir, böylece fazladan yazma izinlerini kapatıp 0644 olarak ayarlayabilirsiniz. Zaman zaman, bir eklenti veya çekirdek yükseltme ona erişmeyi gerektirebilir ve bunun için geçici olarak yazma izinlerini açabilir ve sonra tekrar kapatılabilir.

Diğer tüm dosyalar 0644 izinlerine sahip olmalıdır. Ekstra paranoyaksanız, dizinler 0711 olmalıdır, ancak bu, bir dizinden dosya listesi alması gereken tüm eklentileri engelleyebilir. Bu durumda ya da paranoyak olmadıysanız, başkalarının okumasına izin veren ancak yazmayan, 0755 kullanın.

Eğer paylaşılan hosting iseniz bu çoğunlukla bir endişedir. Özel bir sunucunuz (VPS dahil) varsa, ssh/ftp erişimi olan başka bir kullanıcı yoksa, o zaman biraz daha rahatlayabilirsiniz. Sadece her şeyi açıkça yazılabilir yapman gerektiğini kastetmiyorum, ama muhtemelen sistem varsayılanlarına güvenebilirsin, ki bu muhtemelen 0755 yerine dizinlerde 0711 izinleri olacaktır.

Bu bir seçenekse, site için bir SSL sertifikası alın ve sitenize https yoluyla erişebildiğinizi test ettikten sonra, SSL'yi yönetici oturum açmaları için zorlayabilir ve bu satırları wp-config.php dosyasına hemen ekleyerek erişebilirsiniz 'Düzenlemeyi durdur' yorumu:

define('FORCE_SSL_ADMIN', true);
define('FORCE_SSL_LOGIN', true);
8
Dougal Campbell