WordPress'te wp-login.php dosyanıza erişimi IP adresine göre sınırlamak ister misiniz?
WordPress giriş sayfası genellikle DDoS saldırıları ve bilgisayar korsanları tarafından web sitenize erişim sağlamak için saldırıya uğrar. Belirli IP adreslerine erişimi sınırlamak, bu tür girişimleri etkili bir şekilde engelleyebilir.
Bu makalede, WordPress'te wp-login.php dosyanıza IP'ye göre erişimi nasıl kolayca sınırlayacağınızı göstereceğiz.

Neden wp-login.php'ye IP Adresine Göre Erişimi Sınırlamalıyız?
Bir WordPress web sitesinin giriş sayfası (tipik olarak wp-login.php), kullanıcıların sitenize giriş yapmak için gittikleri yerdir.
Bir web sitesi sahibi olarak, web sitesi bakımı yapabileceğiniz, içerik yazabileceğiniz ve web sitenizi yönetebileceğiniz WordPress yönetici alanına erişim sağlar.
Ancak, internetteki yaygın kaba kuvvet saldırıları, web sitelerine erişim sağlamak için wp-login.php sayfasını hedeflediği bilinmektedir. Girmeyi başaramasalar bile, web sitenizi yavaşlatabilir veya hatta çökertebilirler.
Bu durumla başa çıkmanın bir yolu, saldırıların geldiği IP adreslerini engellemektir (Bunu makalenin ilerleyen kısımlarında konuşacağız).
Bir IP adresi, internette belirli bir bilgisayarı tanımlayan bir telefon numarası gibidir. Hackerlar IP adreslerini değiştirmek için yazılım kullanabilirler.
Ancak, daha gelişmiş saldırılar daha büyük bir IP adresi havuzu kullanır ve hepsini engellemek mümkün olmayabilir.
Bu durumda, web sitenizdeki kendiniz ve diğer kullanıcılar tarafından kullanılan belirli IP adreslerine erişimi sınırlayabilirsiniz.
Bununla birlikte, bulut güvenliği güvenlik duvarı dahil olmak üzere 3 farklı şekilde wp-login.php dosyasına erişimi belirli IP adresleriyle nasıl kolayca sınırlayacağınıza bir göz atalım.
1. WordPress Giriş Sayfasına IP Adresine Göre Erişimi Sınırlayın
Bu yöntem için .htaccess dosyasına bazı kodlar eklemeniz gerekecek.
.htaccess dosyası, web sitenizin kök klasöründe bulunan ve FTP kullanarak veya WordPress barındırma kontrol panelinizdeki Dosya Yöneticisi uygulamasıyla erişilebilen özel bir sunucu yapılandırma dosyasıdır.
Sadece bir FTP istemcisi kullanarak WordPress sitenize bağlanın ve .htaccess dosyanızı en üste aşağıdaki kodu ekleyerek düzenleyin.
<Files wp-login.php>
order deny,allow
Deny from all
# whitelist Your own IP address
allow from xx.xxx.xx.xx
#whitelist some other user's IP Address
allow from xx.xxx.xx.xx
</Files>
Kendi IP adreslerinizle XX'leri değiştirmeyi unutmayın. IP adresinizi SupportAlly sayfasını ziyaret ederek kolayca bulabilirsiniz.

Web sitenize giriş yapması gereken başka kullanıcılarınız varsa, onlardan IP adreslerini sağlamalarını isteyebilirsiniz. Bunları da .htaccess dosyasına ekleyebilirsiniz.
Yukarıda bahsedilen kodun başka bir örneği.
<Files wp-login.php>
order deny,allow
Deny from all
# Whitelist John as website administrator
allow from 35.199.128.0
#Whitelist Tina as Editor
allow from 108.59.80.0
# Whitelist Ali as moderator
allow from 216.239.32.0
</Files>
Artık bu IP adreslerine sahip kullanıcılar wp-login.php dosyasını görüntüleyebilecek ve web sitenize giriş yapabilecektir. Diğer kullanıcılar aşağıdaki hata mesajını görecektir:

2. Web Sitenize Erişimi Engellemek İstediğiniz Belirli IP Adresleri
Bu yöntem ilk yöntemin tamamen tersidir.
WordPress giriş sayfası erişimini belirli IP adresleriyle sınırlamak yerine, web sitenize saldırmak için kullanılan IP adreslerini engelleyebileceksiniz.
Bu yöntem özellikle WordPress üyelik web siteleri, e-ticaret mağazaları veya birden fazla kullanıcının hesaplarına erişmek için giriş yapması gereken diğer web siteleri için kullanışlıdır.
Bu yöntemin dezavantajı, bilgisayar korsanlarının IP adreslerini değiştirip sitenize saldırmaya devam edebilmesidir.
Neyse ki, yaygın WordPress hackleme girişimlerinin çoğu, bu yöntemi çoğu durumda etkili kılan sabit bir IP adresi kümesi kullanır.
Adım 1: Engellemek İstediğiniz İlgili IP Adreslerini Bulma
İlk olarak, web sitenize saldırmak için kullanılan IP adreslerini bulmanız gerekir.
Saldıran IP adreslerini bulmanın en kolay yolu sunucu günlüklerinize bakmaktır. Barındırma hesabı kontrol panelinize gidin ve 'Ham Erişim' günlükleri simgesine tıklayın.

Sonraki sayfada, erişim günlüklerini indirmek için alan adınıza tıklayın. Bu, gz uzantılı bir dosya indirecektir.
Dosyayı çıkarmanız ve Not Defteri veya TextEdit gibi bir metin düzenleyici ile açmanız gerekecektir.
Buradan, wp-login.php sayfasına tekrar tekrar erişen IP adreslerini bulacaksınız.

IP adreslerini bilgisayarınızdaki ayrı bir metin dosyasına kopyalayıp yapıştırın.
Adım 2. Şüpheli IP Adreslerini Engelleme
Ardından, WordPress hosting kontrol panelinize giriş yapmanız ve 'IP Engelleyici' simgesine tıklamanız gerekir.

Bir sonraki ekranda, engellemek istediğiniz IP adreslerini kopyalayıp yapıştırın ve 'Ekle' düğmesine tıklayın.

Engellemek istediğiniz diğer şüpheli IP adreslerini engellemek için işlemi tekrarlayın.
Hepsi bu kadar! Şüpheli IP adreslerinin web sitenize erişmesini tamamen engellediniz.
Daha sonra, bu IP adreslerinden birini engellemeyi kaldırmanız gerekirse, bunu IP engelleyici uygulamasından kolayca yapabilirsiniz.

3. WordPress Girişini Web Sitesi Güvenlik Duvarı ile Koruma
Bir web sitesi yöneticisi olarak, WordPress giriş sayfanıza erişebilecek IP adreslerini yönetmek için çok fazla zaman harcamak istemeyebilirsiniz.
WordPress giriş sayfalarınızı korumanın en kolay yolu Sucuri kullanmaktır. Kapsamlı bir WordPress güvenlik eklentisi ile birlikte gelen en iyi WordPress güvenlik duvarıdır.
Sucuri'nin web sitesi güvenlik duvarı, şüpheli IP adreslerinin web sitenize ulaşmadan önemli WordPress çekirdek dosyalarına erişmesini otomatik olarak filtreler.

Bu yöntem ayrıca şüpheli etkinliklerin sunucunuzu yavaşlatmasını engelleyerek WordPress performansınızı ve hızınızı da iyileştirir.
Üstelik Sucuri, yerleşik bir CDN ağı ile birlikte gelir. Görüntüler, stil sayfaları ve JavaScript gibi statik dosyaları, kullanıcılarınıza daha yakın bir sunucudan otomatik olarak sunacaktır.
Kullanıcıların WordPress oturum açma sayfalarına erişememesi durumunda IP adreslerini kolayca beyaz listeye ekleyebilirsiniz.

Alternatifler: MalCare veya Cloudflare Ücretsiz CDN
Umarım bu makale, wp-login.php dosyanıza IP adresine göre erişimi nasıl sınırlayacağınızı öğrenmenize yardımcı olmuştur. Ayrıca tam WordPress güvenlik rehberimize bakmak veya WordPress yönetici alanını korumak için ek ipuçlarını görmek isteyebilirsiniz.
Bu makaleyi beğendiyseniz, lütfen WordPress video eğitimleri için YouTube Kanalımıza abone olun. Bizi ayrıca Twitter ve Facebook'ta da bulabilirsiniz.

Olaf
WordPress'te her şey web sitesi güvenliğine dayanır ve düşer. Bunu hafife almak zamanla ciddi sorunlara yol açabilir. Bu direktifler mükemmel çalışıyor ve bu tür bir güvenliği uygulamak yalnızca bir an sürer. Sadece .htaccess'e doğru direktifleri eklemekle kalmayıp, aynı zamanda kullanıcılara başlangıçtan itibaren manuel olarak eklenen girdileri düzgün bir şekilde yorumlamayı öğretmenizden dolayı minnettarım. Bu, siteyi devralan herkesin bu direktifleri anlamasına yardımcı olur. Çok az öğretici bu kadar titiz davranır ve .htaccess'te doğru yorumlamayı sağlamak için zaman ayırır.
Jiří Vaněk
Yönergeleri web sitesine kopyaladım, IP adreslerini ayarladım ve .htaccess dosyasına yerleştirdim. Şu anda .htaccess dosyasında ayarlanan her iki IP adresi için de mükemmel çalışıyor.
Av
bir woocommerce sitesiyle ilgili olarak, bu işlev faydalı mı?
hesabım sayfasından giriş yapılabilir.
WPBeginner Desteği
WooCommerce gibi bir şey için sitenize birden fazla kullanıcı giriş yapıyorsa, bu kullanacağınız bir şey olmazdı. Bu normalde sınırlı sayıda kullanıcıya sahip bir site için olurdu.
Yönetici
Michael Pepper
Makale için teşekkürler, faydalı!
WPBeginner Desteği
Glad our article was helpful
Yönetici
Mick
Nedense bunu kullandığımda beyaz listedeki IP de engelleniyor.
Bunun nedenine dair bir fikriniz var mı?
WPBeginner Desteği
Doğru IP'yi ayarladığınızdan emin olmak isteyebilirsiniz ve eğer VPN veya benzeri bir şey kullanıyorsanız bu sorunun kökeni olabilir.
Yönetici
Bahar Ali
Yukarıdaki kodu kullandım ve siteye ait her sayfaya bir şekilde uygulanıyor, örneğin ana sayfamda bile yasaklı görünüyor.
WPBeginner Desteği
Ev sahibi sağlayıcınızla iletişime geçerek onların tarafında çakışan bir kurulum olmadığından emin olmak isteyebilirsiniz.
Yönetici
Unni Krishnan
Harika iş beyler,
Son bölümde belirttiğiniz gibi, mobil bağlantım için dinamik IP'lerim var. Geniş bant IP'mi beyaz listeye eklemiş olsam da, hareket halindeyken erişirken takılıyorum.
Bunu çözmeye yardımcı olabilecek herhangi bir eklenti olup olmadığını biliyor musunuz?
Unni Krishnan
Ayrıca, wp-login.php'ye yapılan bu tür istekler ana sayfaya yönlendiriliyor. Bu normal mi?
FrancescoElzy
Hmm, blogum ilk yorumumu yemiş gibi görünüyor (çok uzundu), bu yüzden yazdıklarımı özetleyip blogunuzdan çok keyif aldığımı söyleyeceğim. Ben de hevesli bir blog yazarıyım ama bu işe yeniyim. Yeni başlayan blog yazarları için herhangi bir faydalı ipucunuz var mı? Gerçekten minnettar olurum.
Stéfano Willig
FTP erişimimizi yalnızca belirli IP'lerle erişilebilir hale getirdik.
Şimdi WordPress'i doğrudan WordPress üzerinden kuramıyorum veya güncelleyemiyorum...
Ne yapabilirim?
Jobbatam
Harika ipuçları ve benim için işe yarıyor.
Ancak, wp-login'i 404 hatasına yönlendirebilir miyim?
Eğer yapabilirsem, yukarıdaki koda hangi kodu eklemeliyim?
teşekkürler
MargaretMacnamar
Metin kitaplarına kıyasla internette herhangi bir konuyu öğrenmek çok basit, çünkü bu gönderiyi bu web sitesinde buldum.
EQHRaymond
İşlev için teşekkürler. Yazı bana çok yardımcı oldu
Rex Wickham
Birden fazla IP eklemek isterseniz bunu yapabilirsiniz:
1. Kısmi bir IP kullanabilirsiniz:
145.50.39'dan izin ver
Bu, 145.50.39.0'dan 145.50.39.255'e kadar olan IP'lere izin verecektir
2. bir netmask veya CIDR kullanabilirsiniz:
145.50.39.0/255.255.255.224 adresinden izin ver
veya
145.50.39.0/27'den İzin Ver
Bu, 145.50.39.0 ile 145.50.39.31 arasındaki IP'lere izin verecektir.
Julius Musembi
Bu harika bir geçici çözüm.
David Swanson
Kodu .htaccess dosyama ekledim ancak kullanıcılarım çıkış yaptığında 403 Hatası alıyorlar.
Çıkış yap'a tıkladıklarında bağlantı /wp-login.php?action=logout oluyor
Bunu düzeltmenin bir yolu var mı?
Brijesh
Harika İpucu! Ama bir sorunum var. Yöneticinin diğer IP'lerden girişini engelliyor, ancak kayıtlı bir kullanıcı siteden çıkış yaptığında kod onu da kısıtlıyor. Yani kullanıcı çıkışa tıkladığında yasak mesajı veriyor. Nasıl çözülür?
Rafaqat
Aşırı ve yasa dışı giriş denemelerinden korunmak için hızlı rehberiniz için teşekkürler. Aslında, giriş denemeleri, wp.config dosyası, .htaccess dosyası ve daha birçok güvenlik sorununu yönetebilen ücretsiz bir eklenti olan "better wp security" var. Bence bir denemeye değer.
Kris
Dinamik IP sorununu aşmak için bir htpasswd'e başvurabilirsiniz.
Baptiste Legrand
Bu harika ipucu için teşekkürler! Ama biraz kafam karıştı: bu kod parçasını kök .htacess dosyama mı yoksa wordpress/.htaccess dosyama mı yapıştırmalıyım?
Teşekkürler (ve bu arada, wpbegginer.com'u ÇOK SEVİYORUM, iyi iş çıkarmaya devam edin!)
Yayın Kadrosu
Bunu wordpress/.htaccess dosyanıza yapıştırın
Yönetici
Yayın Kadrosu
Dinamik IP'lerle bu bir baş belası olabilir. Üzerine Apache Protect ayarlayabilirsiniz, ancak bu biraz daha karmaşıktır. #whitelist satırı sadece hangi IP'nin hangisi olduğunu bilmemi sağlıyor.
Yönetici
Steve Pringle
Eklentilerin (JetPack gibi) erişimi sınırladığınızda sorunlar yaşayabileceğini belirtmelisiniz.