Araç ne yapar?

WordPress, giriş çerezlerini ve nonce değerlerini wp-config.php içindeki sekiz sabitle imzalar: AUTH_KEY, SECURE_AUTH_KEY, LOGGED_IN_KEY, NONCE_KEY ve bunların _SALT karşılıkları. Bu değerler tahmin edilemez olduğunda, veritabanı sızsa bile geçerli bir oturum çerezi üretmek çok zorlaşır.

Araç bu sekiz değeri üç biçimde verir: klasik kurulum için define() satırları, Bedrock ve Roots projeleri için .env satırları, otomasyon betikleri için JSON. Yeni kurulumda, sitenin ele geçirildiğinden şüphelendiğinizde veya ekipten biri ayrıldığında kullanabilirsiniz.

Nasıl kullanılır?

  1. Çıktı biçimini seçin: PHP define(), .env veya JSON.
  2. “Anahtarları oluştur” düğmesine basın. Her basışta sekiz yeni değer üretilir.
  3. Kodu kopyalayın veya dosya olarak indirin.
  4. wp-config.php dosyasında “Authentication unique keys and salts” yorumunun altındaki sekiz satırı yenileriyle değiştirin. Bedrock'ta aynı adları .env dosyasında güncelleyin.
  5. Dosyayı kaydedin; bütün kullanıcıların yeniden giriş yapması gerekeceğini ekibinize önceden bildirin.
  6. İşiniz bitince “Temizle” ile değerleri sayfadan silin ve indirilen dosyayı kaldırın.

WP-CLI kullanıyorsanız wp config shuffle-salts komutu aynı işi sunucuda yapar. Bu araç, komut satırı erişimi olmadığında veya değerleri önce gözden geçirmek istediğinizde işe yarar.

Karakter kümesi ve rastgelelik

Karakter kümesi, WordPress çekirdeğindeki wp_generate_password(64, true, true) çağrısıyla aynıdır. Kurulum sihirbazı api.wordpress.org/secret-key/1.1/salt/ adresine ulaşamazsa bu çağrıyı kullanır. Küme 92 karakterden oluşur:

GrupKarakterler
Harf ve rakam (62)a–z, A–Z, 0–9
Özel (10)!@#$%^&*()
Ek özel (20)-_[]{}<>~+=,.;:/?|, ters tırnak ve boşluk

Tek tırnak, çift tırnak ve ters eğik çizgi kümede yoktur. Bu yüzden değerler PHP tek tırnaklı dizesini, tek tırnaklı .env değerini veya JSON dizesini bozamaz. Boşluk WordPress kümesinin parçasıdır ve tırnak içinde sorun çıkarmaz.

Rastgele baytlar crypto.getRandomValues ile alınır; Math.random kullanılmaz ve Web Crypto yoksa araç anahtar üretmez. Bir bayt 256 değer alabilir, 256 ise 92'ye tam bölünmez. Basit mod alma bazı karakterleri daha sık seçerdi. Araç bu nedenle 184 ve üzerindeki baytları atar, kalanları 92'ye göre eşler; böylece her karakterin olasılığı eşittir. 64 karakterlik bir değer yaklaşık 417 bitlik olasılık alanı taşır.

Salt değiştirmek ne yapar?

Anahtarları değiştirmek, mevcut bütün giriş çerezlerini geçersiz kılar. Siz dahil herkes oturumdan çıkar ve yeniden giriş yapmak zorunda kalır. Parolalar değişmez, içerik ve ayarlar etkilenmez. Açık kalmış formlardaki nonce değerleri de geçersiz olacağından yarım kalmış işlemler hata verebilir.

Sabitler tanımlı değilse veya varsayılan “put your unique phrase here” metni duruyorsa WordPress veritabanında saklanan değerlere geri döner. Salt değiştirmek tek başına bir güvenlik temizliği değildir; ele geçirilmiş bir sitede parolaları, yönetici hesaplarını ve dosyaları da kontrol edin. Yönlendirme kurallarını düzenlerken .htaccess yönlendirme oluşturucu işinize yarayabilir.

Örnek ve yorum

PHP biçimindeki çıktı, WordPress hizmetinin verdiği hizalamayı korur. Değer her satırda 29. sütunda başlar. Aşağıdaki satırlar yalnız biçimi göstermek için kısaltılmış örnektir; bu değerleri kullanmayın:

define('AUTH_KEY',         'ORNEK-q7}Lm2 ^v@Xw!8zR<Pc;eT4#Hy/…');
define('SECURE_AUTH_KEY',  'ORNEK-J0k&d$9 [nB~uF,5sW=Ga%1…');

AUTH_KEY='ORNEK-q7}Lm2 ^v@Xw!8zR<Pc;eT4#Hy/…'

.env satırlarında tek tırnak kullanılır. Bedrock'un kullandığı ayrıştırıcı tek tırnak içindeki $ işaretini değişken olarak çözmez; çift tırnak kullanırsanız değer değişebilir. JSON çıktısı ise dağıtım betiklerine veya gizli anahtar yöneticisine aktarmak içindir.

Sınırlar ve gizlilik

  • Değerler yalnız tarayıcınızın belleğinde üretilir; sunucuya gönderilmez, paylaşım bağlantısına, çereze veya yerel depolamaya yazılmaz. Paylaş düğmesi yalnız sayfa adresini kopyalar.
  • Kopyaladığınız metni pano yöneticiniz saklayabilir; indirilen dosya bilgisayarınızda kalır. İşiniz bitince ikisini de temizleyin.
  • Araç wp-config.php dosyanızı okumaz veya değiştirmez; sunucu tarafında değişikliği siz yaparsınız.
  • wp-config.php veya .env dosyasını herkese açık bir depoya koymayın; gizli değerler orada ele geçirilebilir.

Sık sorulan sorular

Salt değiştirmek siteyi bozar mı?

Bozmaz. Bütün kullanıcıların oturumu kapanır ve yeniden giriş yapmaları gerekir; parolalar, içerik ve ayarlar aynı kalır.

Değerler api.wordpress.org ile aynı güvenlikte mi?

Aynı 92 karakterlik küme ve aynı 64 karakter uzunluğu kullanılır. Rastgelelik tarayıcınızın kriptografik üretecinden gelir ve değerler ağ üzerinden taşınmaz.

Ne sıklıkla değiştirmeliyim?

Sabit bir kural yoktur. Şüpheli bir giriş, sızıntı, ekipten ayrılan erişimli bir kişi veya sunucu taşıması iyi birer nedendir.

Değerlerde boşluk olması sorun mu?

Değildir. Boşluk WordPress'in kendi karakter kümesinde bulunur ve tek tırnak içinde olduğu gibi okunur.

Bedrock'ta nereye yazmalıyım?

Proje kökündeki .env dosyasına, AUTH_KEY='...' biçimiyle yazın. Bedrock bu değerleri yapılandırma dosyasında ortam değişkeni olarak okur.

Yayın: · Güncelleme: