mod_log_forensic - Apache HTTP Sunucusu

Apache Server 2.0

<-

Apache Modülü mod_log_forensic

Açıklama:Sunucuya yapılan isteklerin adli günlük kayıtlarının tutulması
Durum:Eklenti
Modül Betimleyici:log_forensic_module
Kaynak Dosyası:mod_log_forensic.c
Uyumluluk:2.0.50 sürümünden beri mevcuttur.

Özet

Bu modül istemci isteklerinin adli günlük kayıtlarının tutulmasını sağlar. Günlük kaydı bir istek işlenmeden önce ve sonra olmak üzere iki kere yapılır, böylece günlükte her istek için iki girdi bulunur. Adli günlükleyici çok sıkı kurallara tabidir, yani:

  • Biçem sabittir. Günlük kayıt biçemi çalışma anında değiştirilemez.
  • Veriyi yazamadığı takdirde çocuk süreç beklemeksizin çıkar ve (CoreDumpDirectory yapılandırmasına bağlı olarak) bir core dosyası dökümler.

Dağıtımın support dizininde bulunan check_forensic betiği adli günlük dosyalarının değerlendirilmesinde yardımcı olabilir.

Bu modül, adli kimlikleri üretebilen daha güçlü bir APR sürümü içeren 2.1 sürümünden geriye doğru uyarlanmıştır. mod_log_forensic modülünü 2.0 sürümlerinde kullanmak isterseniz mod_unique_id modülünü de yüklemeniz gerekecektir.
top

Adli Günlük Biçemi

Her istek günlüğe iki defa kaydedilir. İlki, işlemin başlangıcında (yani, başlıklar alındıktan hemen sonra), ikincisi ise istek işlem gördükten sonra normal günlüklemenin yapıldığı sırada yapılır.

Her isteği betimlemek için eşsiz bir istek kimliği atanır. Bu adli kimliğin normal günlüğe de yazılması istenirse bu %{forensic-id}n biçem dizgesi ile yapılabilir. mod_unique_id kullanılıyorsa, onun ürettiği kimlik kullanılır.

İlk satır günlüğe, adli kimliği, istek satırını ve alınan tüm başlıkları boru karakterleri (|) ile ayrılmış olarak kaydeder. Aşağıda bir örneğe yer verilmiştir (hepsi bir satırdadır):

+yQtJf8CoAB4AAFNXBIEAAAAA|GET /manual/de/images/down.gif HTTP/1.1|Host:localhost%3a8080|User-Agent:Mozilla/5.0 (X11; U; Linux i686; en-US; rv%3a1.6) Gecko/20040216 Firefox/0.8|Accept:image/png, etc...

Başlangıçtaki artı imi bu günlük satırının istekle ilgili ilk günlük kaydı olduğunu belirtir. İkinci satırda bunun yerini bir eksi imi alır:

-yQtJf8CoAB4AAFNXBIEAAAAA

check_forensic betiği komut satırı argümanı olarak günlük dosyasının ismini alır. Bu +/- kimlik çiftlerine bakarak tamamlanmamış istekler varsa bunlar hakkında uyarır.

top

Güvenlik Kaygıları

Günlük dosyarının kaydedildiği dizine sunucuyu başlatan kullanıcı dışında diğer kullanıcılar tarafından yazılabiliyor olması halinde güvenliğinizden nasıl feragat etmiş olacağınız güvenlik ipuçları belgesinde açıklanmıştır.

top

ForensicLog Yönergesi

Açıklama:Adli günlük için dosya ismini belirler.
Sözdizimi:ForensicLog dosya-adı|borulu-süreç
Bağlam:sunucu geneli, sanal konak
Durum:Eklenti
Modül:mod_log_forensic

ForensicLog yönergesi adli inceleme için sunucuya yapılan istekleri günlüğe kaydetmekte kullanılır. Her günlük girdisine, normal CustomLog yönergesinde kullanılarak istekle ilişkilendirilebilen eşsiz bir kimlik atanır. mod_log_forensic modülü eşsiz kimliği mod_unique_id modülünden alır, dolayısıyla bu modülü de yüklemeniz gerekir. (Bu geresinim, daha güçlü bir APR sürümü içermesi sebebiyle 2.1 sürümünden itibaren ortadan kalkmıştır.) İstekle ilişkili kimlik dizgeciği forensic-id adıyla %{forensic-id}n biçem dizgesinde kullanılarak aktarım günlüğüne eklenebilir.

Günlüğün yazılacağı yeri belirleyen argüman şu iki değerden birini alabilir:

dosya-adı
ServerRoot yönergesinin değerine göreli bir dosya ismi.
borulu-süreç
"|" boru karakteri ile öncelenmiş olarak günlük bilgisini standart girdisinden kabul edecek sürecin ismi (veya komut satırı). Program adının ServerRoot yönergesinin değerine göre belirtildiği varsayılır.

Güvenlik:

Bir borulu süreç kullanılmışsa, süreç httpd’yi başlatan kullanıcı tarafından başlatılacaktır. Sunucu root tarafından başlatılıyorsa bu root olacaktır; bu bakımdan günlük kaydını alacak programın güvenilir olması veya daha az yetkili bir kullanıcıya geçiş yapması önemlidir.

Bilginize

Dosya yolunu belirtirken tersbölü çizgisi kullanılan Unix dışı platformlarda bile yapılandırma dosyasında bu amaçla normal bölü çizgilerini kullanmaya özen gösterilmelidir.