it-swarm-eu.dev

Jaké je ideální nastavení pro řešení bezpečnostních problémů?

Jsem si vědom požadavků WP má pro některé adresáře a soubory být zapisovatelný. Jsem si také vědom, že zpřístupnění oprávnění může otevřít bezpečnostní otvory. Konečně, vím, že uživatel, který (zde vloží váš server) běží jako na Linuxových systémech, může být faktorem.

Bezpečnost stranou, ráda si mohu stahovat motivy a pluginy do svého blogu a v případě potřeby je aktualizovat. Správná oprávnění se zdají být trochu v rozporu s touto preferencí.

Sbíral jsem tu trošku detailů, ale rád bych viděl definitivnější odpověď, pokud existuje jedna: co je preferované nastavení s kývnutím na bezpečnost? Jaká oprávnění by měla být zavedena, jaký uživatel má web spustit, atd.

8
Grant Palin

Pokud máte FTP přístup k vašemu serveru, nejbezpečnější nastavení není mít vaše motivy nebo pluginy adresáře zapisovatelné váš webserver a místo toho mít WordPress aktualizovat soubory pomocí FTP. Když jdete na aktualizaci pluginu, WordPress vás vyzve k zadání podrobností o FTP.

Metoda FTP je mnohem pomalejší než přímé zápisy souborů, ale je mnohem bezpečnější, protože nečestný skript nebude moci soubory upravovat.

10
Viper007Bond

Vzhledem k tomu, @ Viper007Bond poznamenal, aktualizace jádra, pluginy a motivy pomocí vestavěných aktualizačních mechanismů je docela bezpečná, pokud jde o oprávnění k souborům, protože mohou používat vaše vlastní uživatelské přihlašovací údaje. Pro maximální bezpečnost se chcete ujistit, že máte SSH2 PHP rozšíření . Metoda instalace (pokud je to možné) se může lišit od hostitele do hostitele, takže pokud to tam ještě není, budete možná muset požádat hostující službu nebo udělat nějaké Googling.

Mnoho sdílených hostingových služeb bude ve svém nastavení Apache používat suexec, takže webová služba běží jako skutečný uživatel. To eliminuje většinu problémů s oprávněním a pomáhá chránit soubory před ostatními uživateli na serveru. Nicméně v případech, kdy Apache běží jako samostatný uživatel, pokud chcete nahrát soubory do WordPressu, musíte otevřít oprávnění v adresáři pro nahrávání.

V tomto případě pravděpodobně chcete, aby váš wp-content/uploads adresář měl oprávnění 0713, (AKA rwx--x-wx). To dává vlastníkovi adresáře plná oprávnění, jejich skupina může číst soubory pokud znají úplnou cestu a další (včetně webového serveru) mohou číst soubory, ke kterým znají cestu a mohou vytvářet/zapisovat soubory.

Některé mezipaměti pluginy také očekávají, že wp-content/cache adresář (nebo podobný) k dispozici, které mohou psát. Na to by se vztahovalo stejné oprávnění.

Konečně, pro docela permalinks, WordPress potřebuje být schopný měnit .htaccess soubor, ledaže plánujete aktualizovat to manuálně. V tomto případě byste chtěli 0646 pro režim souboru. Jakmile se však rozhodnete pro strukturu permalink, obvykle to nebudete muset měnit znovu, takže můžete vypnout oprávnění pro zápis a nastavit ji na 0644. Případně může plugin nebo jádro vyžadovat přístup k němu, a proto můžete dočasně zapnout oprávnění pro zápis a poté jej znovu vypnout.

Všechny ostatní soubory by měly mít oprávnění 0644. Adresáře by měly být 0711 pokud jste extra-paranoidní, ale to by mohlo rušit jakékoli pluginy, které potřebují získat seznam souborů z adresáře. V tom případě, nebo pokud nejste tak paranoidní, použijte 0755, což ostatním umožní číst, ale ne psát.

Většina z toho je hlavně znepokojení, pokud jste na sdíleném hostování. Pokud máte dedikovaný server (včetně VPS), bez dalších uživatelů, kteří mají ssh/ftp přístup, můžete si odpočinout o něco více. Nemyslím tím, že byste měli všechno zpřístupnit otevřeně, ale můžete pravděpodobně důvěřovat pouze výchozím hodnotám systému, což bude pravděpodobně 0755 oprávnění pro adresáře namísto 0711.

Pokud se jedná o možnost, získejte certifikát SSL pro danou lokalitu a poté, co jste otestovali, že můžete přistupovat k webu prostřednictvím https, můžete vynutit SSL pro přihlášení a přístup administrátora přidáním těchto řádků do souboru wp-config.php, těsně před komentář Zastavit úpravy:

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