WPHizmet

xmlrpc.php Nedir? WordPress’te XML-RPC Kapatılmalı mı?

Yayınlandı:
Son teknik kontrol:
2 dk okuma

Güvenlik

Kısa cevap

xmlrpc.php, dış uygulamaların WordPress’le konuşması için kullanılan eski bir arayüzdür (XML-RPC). Bugün çoğu işlev REST API’ye geçmiştir, ancak dosya varsayılan olarak açıktır ve kaba kuvvet saldırılarının sık hedefidir: tek bir istekle çok sayıda parola denenebilir. WordPress’in güvenlik belgesi, kullanmıyorsanız kapatmanızı; Jetpack veya mobil uygulama gibi bir hizmet için kullanıyorsanız erişimi kısıtlamanızı ve hız sınırı koymanızı önerir. En etkili kapatma, isteği WordPress’e ulaşmadan sunucu veya güvenlik duvarı düzeyinde engellemektir.

Önemli noktalar

  • xmlrpc.php’ye gelen yoğun POST istekleri çoğunlukla parola deneme saldırısıdır.
  • Önce kullanan bir hizmet olup olmadığını kontrol edin (Jetpack, mobil uygulama, uzaktan yayın araçları).
  • xmlrpc_enabled filtresi XML-RPC’yi tamamen kapatmaz; yalnızca kimlik doğrulama gerektiren yöntemleri kapatır.
  • Sunucu veya güvenlik duvarı düzeyinde engelleme, isteğin PHP’yi hiç çalıştırmamasını sağlar.

Saldırıda olup olmadığınızı anlamak

Hosting panelindeki erişim günlüğünde xmlrpc.php’ye kısa aralıklarla, farklı IP adreslerinden gelen POST istekleri görüyorsanız site parola denemesine maruz kalıyordur. Bu istekler her seferinde WordPress’i yüklediği için sunucu kaynaklarını tüketir ve 508 kaynak sınırı veya 503 hatalarına yol açabilir.

Kapatmadan önce: kim kullanıyor?

  • Jetpack bağlantısı XML-RPC kullanır.
  • WordPress mobil uygulaması ve bazı masaüstü yayın araçları bağlanmak için kullanabilir.
  • Bazı eski entegrasyonlar (uzaktan yayın, otomasyon hizmetleri) hâlâ XML-RPC’ye bağlıdır.

Bunların hiçbirini kullanmıyorsanız kapatabilirsiniz. Kullanıyorsanız tamamen kapatmak yerine erişimi yalnızca o hizmetin adreslerine açmak ve sıkı hız sınırı uygulamak gerekir.

Kapatma yolları

YöntemEtkisiNot
Güvenlik duvarı / CDN kuralıİstek sitenize hiç ulaşmazEn etkili yol; sunucu kaynağı harcanmaz
Web sunucusu kuralı (.htaccess / Nginx)İstek PHP çalışmadan reddedilirSunucu türüne göre yazılır
Güvenlik eklentisinin XML-RPC ayarıKapatma WordPress içinde yapılırKolay; ama istek yine PHP’yi başlatır
xmlrpc_enabled filtresiYalnızca kimlik doğrulama gerektiren yöntemler kapanırTam kapatma değildir
.htaccess (Apache 2.4) — xmlrpc.php’yi tamamen engelle
<Files "xmlrpc.php">
  Require all denied
</Files>
Nginx sunucu bloğu
location = /xmlrpc.php {
  deny all;
}

Sık sorulan sorular

Pingback ve trackback’ler de XML-RPC ile mi çalışır?
Evet, pingback’ler XML-RPC üzerinden gelir. xmlrpc.php’yi tamamen kapatırsanız pingback almayı da kapatmış olursunuz; çoğu site için bu bir kayıp değildir, spam pingback’leri de ortadan kaldırır.
Kapatmak SEO’yu etkiler mi?
Hayır. Arama motorları sayfalarınızı XML-RPC ile taramaz; bu dosyanın dizine eklenmiş sayfalarla ilgisi yoktur.
REST API’yi de kapatmalı mıyım?
Hayır. Blok editörü, birçok eklenti ve panel işlevi REST API’ye dayanır; kapatmak siteyi bozar. REST API için genel bir kapatma değil, gerekirse belirli uç noktalara erişim kısıtlaması düşünülür.

Kaynaklar ve teknik referanslar

Bu içeriği hazırlayan

WPHizmet Ekibi

WordPress teknik ekibi

WPHizmet içeriklerini hazırlayan teknik ekip. Rehberler, WordPress ve WooCommerce sitelerinde günlük olarak karşılaşılan sorunlara dayanır; sürüm, yapılandırma ve gereksinim bilgileri yayın öncesinde resmi dokümantasyondan doğrulanır.

  • WordPress teknik destek
  • Performans ve Core Web Vitals
  • Güvenlik ve zararlı kod temizliği
  • WooCommerce
  • Teknik SEO

İlgili içerikler