Merhaba arkadaşlar. Kişisel bloğumda paylaştığım konuyu burada da paylaşmak istedim daha fazla arkadaş yararlansın.


/*----------------------------------------------------------------------------*/




WordPress başlı başına oldukça sağlam bir çekirdeğe sahip olması nedeniyle ek bir güvenlik eklentisine ihtiyaç zaten yok ancak WordPress güvenliği alanında Güvenli Hosting ile başlamak aslında yolun yarısını geçmektir, Bunun için Önerim tamamen size ait bir güvenliği yapılandırılmış bir VDS VPS satın almanız olabilir.

Hosting kısmını geçtiğimizi varsayarsak şimdi WordPress eklentilerden ve kullanılmayan temalardan kurtulmanız size büyük güvenlik artısı katacaktır zira zeroday açıklarına bakarsanız WordPress’ten ziyade wordpress için hazırlanmış eklenti ve temaları görürsünüz, WordPress başlı başına sağlam bir yapıya sahiptir.

WordPress’in kullanılmayan eklenti ve temalarını kaldırmanız bir adım daha ileri getirecektir sizi, Eklenti kullanımını ne kadar düşürürseniz o kadar sağlam bir sisteme sahip olursunuz.

WordPress güvenliği vaadeden eklentilerin kendisinde dahi güvenlik açığı olduğunu geçtiğimiz yıllarda yazmıştım 🙂 bu eklentilerin yaptığı şey sizi .htaccess ile belirli güvenlik açığı taramalarından korumak ve basit fonksiyonlarla basit işlemleri engellemektir ki bu eklentiler olmadan da sunucunuz bu tarz basit saldırıları kaldıracak düzeydedir.

Htaccess ile Güvenlik Ek olarak Htaccess dosyası ile güvenliği sağlamak için Optimize Edilmiş Htacces yazıma bakabilirsiniz orada paylaştığım htaccess dosyasında birtakım saldırıları açık taramalarını ve optimizasyon için gerekli olan gzip sıkıştırmalarını eklemiştim.

Twoo Login Biraz paranoyak iseniz wordpress admin paneline 2. giriş paneli ekleyerek iki doğrulamalı wordpress login sistem yapabilirsiniz yine bunun için yazdığım diğer yazı WordPress iki aşamalı giriş okuyup uygulamanız yeterlidir.

Spam yorumlar için yine olağanüstü bir eklentilere gerek yok akismet olsun bilmem ne captcha olsun gerek yok Quiz eklentisini kullanarak bir soru belirleyip cevap isteyerek bu kısmı da geçebilirsiniz (kod bilgisi olalar yorum kısmına eklentisiz soru eklemesini öneririm yine eklenti kullanmayın)

Taplo Ön eki WordPress kurulumunda varsayılan olarak kurulum işlemi sırasında mysql tablo prefix wp_ şeklinde başlar bunu değiştirmenizi öneririm (önce wp-config.php içinden tablo ön eki kısmını değiştirin ardından phpmyadmine girip tablo ön eki değiştir kısmından değiştirebilirsiniz Resim-1 Resim-2) WordPress global saldırılarda tablo öneki wp_ baz alınarak saldırı aracı hazırlanır.

Wp-config.php Güvenliği; Config dosyasının chmod değerini 444 veya 400 yapın bunu da ftp girip yapabilirsiniz (Chmod nedir)

Wp-config ve admin yolunu değiştirmenizi de öneririm ama bu sunucuya erişen insanın admin yolunuza ihtiyacı kalmaz 🙂 (Config-yolu değiştirme)

WordPress giriş bilgileri kesinlikle kullanıcı adı “admin” olmamalı ve şifre kesinlikle türkçe kelime olmasın.

WordPress çekirdek güncellemesini otomatik yaptırmak için wp-config.php içine ekleyin.

define( 'WP_AUTO_UPDATE_CORE', true );

WordPress Optimizasyon ayarları konusuna değinelim.

WordPress zaten hazır kullanılabilirlik anlamında en basitleştirilmiş haliyle geliyor bize ama bir süre sonra wordpress şişerek yavaşlamalara neden oluyor bu da site içi yavaşlama ile başlayıp müşteri kaybına kadar gidebilecek büyük kayıplara neden olabilir.

Resim / Css / Js Optimizasyonu yani sıkıştırma ve küçültme işlemini yapmanızı en başından söyleme gerekiyor bunun için sıkıştırma ortamları mevcut;

Resim dosyalarının içlerinde hangi fotoğraf makinesiyle ne zaman çekildikleri gibi bilgileri (EXIF verileri) içlerinde tutabileceğini hatta küçük bir önizleme bile bulundurabileceklerini biliyor muydunuz? Resimleri sitemize yüklemeden önce küçültmek bu nedenle yetmiyor, neyse ki resimlerin kalitesini bozmadan bu gereksiz verileri kaldırıp optimize eden WP Smush.it eklentisi var. Eklentiyi kurup Admin Panelinizin Altından Ortam -> Bulk Smush.it bölümüne girin ve Run all my images through Smush.it right now butonuna tıklayın. Sitenizdeki yazılara önceden eklediğiniz resimlerin hepsi tek tek optimize edilerek küçültülecek. Biraz zaman alıyor ancak buna değer.

Css ve Js sıkıştırmaları için kullanabileceğiniz adres ise Minify.org

Veritabanı bakım ve onarımı için; phpmyadmin’e giriş yaptıktan sonra tüm tabloları seçip onar diyerek bozulan tablo yapılarınızı onarabilirsiniz.

WordPress veritabanını kendisi onarma sistemini aktif etmek için ise config içine ekleyin;
define(‘WP_ALLOW_REPAIR’, true);
CDN HizmetiÇok yüksek trafik alan sitelerin en büyük kurtarıcısıdır. CDN statik içeriklerin başka bir lokalasyonda barınmasıdır . CDN bu statik içeriklerinizi (js, css dosyaları gibi) en hızlı bir şekilde açılabilmesi için üretilmiş teknolojidir. WP fastest cache eklentisiyle direk entegre edilebilmekte. Maxcdn resmi sitesinde nasıl bağlandığı güzelce anlatılıyor.

Basit sorguları kaldırın; Temanızın header.php dosyasında yer alan bazı kodları düzenleyerek sorguları düşürebilirsiniz.

Misal < meta charset=” “> şeklinde dil karakter kodlamasını mysql den çekmek yerine < meta http-equiv=”content-type” content=”text/html; charset=utf-8” /> şeklinde manuel olarak girebilirsiniz. Aynı şekilde logo , resim v.b dosyaları mysql den çekmek yerine < img src=”http://siteadresiniz.com/images/logo.jpg” alt=”logo” > şeklinde direk kod olarak ekleyebilirsiniz.

Htacces ile optimizasyon Öncelikle WordPress sisteminiz için gerekli olan sıkıştırma ve cache için ayarlanmış olan Htacces dosyasını yukarda vermiştik yeniden işinizin görülmesi açısından Htacces Dosyasına ulaşabilirsiniz

Yorum kısmındaki Html editörünü devredışı bırakmanız için config içine aşağıdaki kodu ekleyin;
add_filter( 'pre_comment_content', 'esc_html' );

WordPress yazı yedekleme (revizyon) devre dışı bırakır yada 3 defa yedekleme yapması için config içine ekleyn;

define( 'WP_POST_REVISIONS', false);
### bu devre dışı bırakır
define( 'WP_POST_REVISIONS', 3);
### buda 3 defa yedekler

WordPress şişmesinin en temel nedenlerinden biridir bu revizyonlar, şöyle düşünün her yazıyı 10 defa taslağa alıp yazmaya devam etseniz 5.000 yazı olduğunu düşünün ve veritabanında ki şişmeyi siz düşünün.
Rss besleme aktif değilse kapatın, bunun için temanızın fonksiyon dosyasına ekleyin;

function disable_our_feeds() {
wp_die( __('RSS KAPALI !!') );
}
add_action('do_feed', 'disable_our_feeds', 1);
add_action('do_feed_rdf', 'disable_our_feeds', 1);
add_action('do_feed_rss', 'disable_our_feeds', 1);
add_action('do_feed_rss2', 'disable_our_feeds', 1);
add_action('do_feed_atom', 'disable_our_feeds', 1);


Url tahminini devre dışı bırakmanızı öneririm bunun için temanın fonksiyon dosyasına ekleyin;

add_filter('redirect_canonical', 'stop_guessing');
function stop_guessing($url) {
if (is_404()) {
return false;
}
return $url;
}


WordPress Emojileri kapatmanızı öneririm bunun için ise temanın fonksiyon dosyasına ekleyin;

remove_action( 'wp_head', 'print_emoji_detection_script', 7 );
remove_action( 'admin_print_scripts', 'print_emoji_detection_script' );


WordPress’ın memory kullanım limitini artırmak için wp-config.php içine ekleyin.

define('WP_MEMORY_LIMIT', '64M');

WordPress js ve css dosyalarını header’dan kaldırmak için aşağıdaki kodu temanızın fonctions.php içine ekleyin.

remove_action('wp_head', 'wp_print_scripts');
remove_action('wp_head', 'wp_print_head_scripts', 9);
remove_action('wp_head', 'wp_enqueue_scripts', 1);
add_action('wp_footer', 'wp_print_scripts', 5);
add_action('wp_footer', 'wp_enqueue_scripts', 5);
add_action('wp_footer', 'wp_print_head_scripts', 5);


Cache sisteminin aktif etmek için veya devredışı bırakmak için wp-config.php içinden düzenleyin.

define( 'WP_CACHE', true );

Cron sistemi Ben zamanlama yapmam site içinde neyse odur diyorsanız (ki baya iyi olur) cron / zamanlayıcıyı kapatmanızı öneririm bunun için ise config içine ekleyin;

define( 'DISABLE_WP_CRON', true );

WordPress Cpu sorunu genellikle herkesin başına gelmiştir 🙂 bu büyük sıkıntıdan kurtulmanın en büyük ve en kolay yolu ise cache / Önbellek eklentileridir (ne kadar eklenti kullanmayı sevmesem de bunu kullanıyorum)

Cache eklentileri içinde en basit ve en temiz kullanıma sahip olanı ise Wp fastest cache kullanımı kolay ve işini layıkıyla yapıyor ve Türkçe 🙂

Not: Cache eklentisinin kurulumunun ardından yukarda verdiğim htacces kodlarını yeniden girmeniz gerekecek çünki her cache eklentisi htaccess içindeki kodları silip kendi kodlarını yerleştirir ki ben htaccess dosyasını hazırlarken wp fastest cache eklentisinin kodlarını htaccess içine ekleyerek paylaştım.

Olay bu kadar arkadaşlar isterseniz bloğumda bu gibi makaleler okuyabilirsiniz.
Kaynak: Kişisel Bloğum