Apache ve PHP için sunucu güvenlik ayarları

İçindekiler
Daha fazla güvenlik sağlamak ve sorunlardan kaçınmak için yapılması gereken bazı görevler şunlardır:
PHP'de hata ve uyarı gösterimini devre dışı bırakın, bu, geliştiricinin hataları görmesine yardımcı olmak için programlama aşamasında kullanılabilir ve ardından web üretim aşamasına girdiğinde devre dışı bırakabilir.
Tüm hata bildirimlerini devre dışı bırak
php.ini'de aşağıdaki değişkenleri kullanma:
error_reporting (0);
// Yalnızca yürütme hatalarını bildir
error_reporting (E_ERROR | E_WARNING | E_PARSE);
// E_NOTICE dışındaki tüm hataları bildir
error_reporting (E_ALL ​​​​E_NOTICE);
// Tüm PHP hatalarını rapor et (error_reporting (E_ALL);
Ayrıca yürütülecek sayfanın başına kod koyarak da etkinleştirilebilir ve devre dışı bırakılabilirler.

Hataları düzeltmek ve gizlememek her zaman önemlidir, birçok geliştirici hataları gizlemek için error_reporting (0) kullanır, ancak bunlar hala oradadır ve bunlardan yararlanılabilir, geliştirdiğimiz herhangi bir kodun, php olsun, hatalar içermesinden her zaman kaçınmalıyız, javascript veya kullandığımız dil.
Değişkenleri ve hangi verileri girdiklerini kontrol etmek önemlidir.
Dosya uzantısını değiştirin
Uzantıyı, html uzantılı dosyalarda, php'deki komut dosyalarını çağırırken ve çalıştırırken değiştirebilirsiniz.
Apache yapılandırma dosyasında (httpd.conf)
Çizgiyi arıyoruz:
AddType uygulaması / x-httpd-php

Ve sonuna .htm ve .html eklersek şu şekilde olur:
AddType uygulaması / x-httpd-php .htm .html

Dosya türünü ziyaretçiden gizlemek için özel bir uzantı da oluşturabiliriz.
AddType uygulaması / x-httpd-php .bo .sol .tf
Bu, güvenlik nedenleriyle çok kullanışlıdır. Uygulamanın programlandığını gizleriz çünkü tarayıcıda aslında php olan komut dosyalarında basitçe .html veya özel uzantı göreceksiniz. Birçok web sitesi bu yöntemi kullanır.
register_globals öğesinin etkin olmadığını doğrulayın
Register_globals'ı devre dışı bırakın ve diğer şeylerin yanı sıra anında değişkenlerin oluşturulmasına izin vermeyin:
register_globals = Kapalı

php.ini'den bu, tüm değişkenleri bildirmeye zorlar, yoksa bir hata verir.
Dosyaları işleyen işlevler için uzak URL'leri devre dışı bırakın
Bu, sunucumuzdaki bir dosyanın çalıştırılamaması veya başka bir dosyaya erişilememesi için hizmet eder, php.ini'de allow_url_fopen'ı devre dışı bırakırız.
allow_url_fopen = Kapalı

PHP'nin herhangi bir komut dosyasını veya işlemi hangi dizinde okuyabileceğini veya yürütebileceğini kısıtlayın
open_basedir = /var/www/htdocs/midomino.com

Her etki alanı, sunucu yöneticisi izin verirse, bu nadir olmasına rağmen kendi php.ini'sini değiştirebilir.
Apache HTTP İZİNİ devre dışı bırakın
HTTP TRACE, sunucuya yapılan isteğin sonucunu döndürmek için kullanılır.
Siteler Arası Komut Dosyası Çalıştırma veya XSS saldırıları için kullanılabilir, bu nedenle güvenlik nedeniyle devre dışı bırakmak en iyisidir.
/ etc / içinde değişiklik yaparızhttpd/konf/httpd.konf
TraceEnable kapalı
Apache en yaygın kullanılan web sunucularından biridir ve php, web geliştirme için en yaygın kullanılan dildir, bu yapılandırmalar ve araçlarla web'imizin olası saldırılara karşı güvenliğini güçlendirmeye yardımcı olabiliriz.
wave wave wave wave wave