Squid Proxy Günlüklerini (logs) Anlama ve Günlükleri (log) Görüntüleme

Bu blog yazısında, squid log ayrıntılarına daha yakından bakıyoruz ve zaman içinde Squid log analizlerini görüntülemek için kullanılan çeşitli yöntemleri ortaya çıkarıyoruz . Ayrıca, Squid log'undaki her bir öğe hakkında fikir ediniyorsunuz ve Squid log verilerini kullanarak sorunları gidermenin bazı yollarını öğreniyorsunuz. Örneğin, ziyaretçiler tarafından gönderilen HTTP isteklerinin türlerini belirlemek veya daha yüksek doğrulukla daha güvenli filtreler oluşturmak.

Squid Proxy Günlüklerini Anlama ve Günlükleri Nasıl Görüntüleyeceğinizi okumaya devam edelim.

Squid Proxy Günlükleri Nedir?

Squid Proxy Günlüklerini (logs) Anlama ve Günlükleri (log) Görüntüleme

Squid proxy günlükleri, istemciler tarafından web sunucusuna yapılan istekler hakkında bilgi depolamak için kullanılır . Bu günlük, kaynak IP adresini, hedef URL'yi ve istek hakkında diğer meta verileri içerir. Günlük, ziyaretçilerin bir web sitesini veya ağı nasıl kullandığı , ne tür bir trafiğin talep edildiği ve herhangi bir kötü amaçlı etkinliğin gerçekleşip gerçekleşmediği hakkında bilgi sağlar.

Ağ yöneticilerinin günlük alanlarını ve bunların nasıl yorumlandığını anlamaları, sorunları etkili bir şekilde gidermeleri ve trafiği izlemeleri gerekir . Aslında günlük , kötü amaçlı kaynaklardan gelen istekleri tanımlamak ve engellemek için kullanılan bir denetim izi de sağlar .

Günlükler nasıl görüntülenir

Kalamar kayıtlarını görüntülemenin çeşitli yolları vardır ; bu, ihtiyaç duyduğunuz ayrıntı düzeyine ve kayıt verilerine ne kadar hızlı erişmeniz gerektiğine bağlıdır.

Web tabanlı bir arayüz, squid günlüklerini görüntülemenin en popüler ve basit yoludur. Bu grafiksel kullanıcı arayüzü ( GUI ), günlük verilerini hızlı bir şekilde aramayı ve filtrelemeyi kolaylaştırır. Örneğin, yöneticiler yalnızca belirli bir IP adresinden gelen istekleri görüntüler veya daha genel kalıpları bulmak için joker karakterler kullanır .

Bu nedenle, squid günlüklerini analiz etmek için daha sofistike bir yola ihtiyacınız varsa, bir komut satırı arayüzü kullanılır . Özetle, verileri daha derinlemesine incelemeniz veya günlük analizi üzerinde daha fazla kontrole sahip olmanız gereken durumlar için ideal bir senaryodur. Komut satırı arayüzüyle, yöneticiler günlük verilerini en çok talep edilen URL'ler, kullanıcı aracısı dizeleri ve daha fazlası gibi bilgileri bulmak için çeşitli komutlar aracılığıyla iletir.

1. Günlük dosyalarını gerçek zamanlı olarak görüntüleyin

Sonuç olarak, tail komutu Squid günlük dosyalarını gerçek zamanlı olarak görüntülemek için yararlı bir araçtır . Bu komut , istekler yapılıp alındığında Squid günlüğünü izler . tail komutu ayrıca günlük verilerini filtreler, böylece çıktıda yalnızca belirli istekler gösterilir. Örneğin, tail komutunu yalnızca belirli bir IP adresinden gelen istekleri görüntülemek veya belirli kullanıcı aracısı dizelerini aramak için kullanırsınız.

2. Günlük dosyalarını arayın

grep a komutu , Squid günlük dosyalarını aramak için güçlü bir araçtır . Bununla, tüm günlük dosyasını veya yalnızca belirli bir bölümünü arayabilirsiniz. Örneğin, grep komutunu belirli kaynak IP adreslerini veya kullanıcı aracısı dizelerini aramak için kullanırsınız. Ek olarak, grep komutu günlük verilerinden istenmeyen içerikleri filtreler.

3. Günlük dosyalarını görüntüle

less komutu Squid günlük dosyalarını görüntülemenin harika bir yoludur. Bu komut günlük verilerinde birer satır sayfa gezinmenize veya belirli bir bölüme atlamanıza olanak tanır. Ayrıca, dizeleri veya IP adreslerini arayarak günlük verilerini filtrelemek için less denetimini de kullanırsınız.

/var/log/squid/ günlük dosyası dizini

Günlükleri takip etmek, Squid'in kullanımı ve verimliliği hakkında önemli ayrıntılar sağlayabilir. Ayrıca, dahili depolama kullanımı ve kurulum sorunları gibi veriler de günlüklerde tutulur. Her şeyden önce, Squid'in farklı amaçlar için birçok günlük dosyası vardır. Bazıları derleme zamanında açıkça etkinleştirilmelidir, diğerleri ise güvenli bir şekilde devre dışı bırakılabilir.

/var/log/squid/cache.log:

Burada, Squid'in ürettiği tüm sinyaller , ister deneysel ister başarısız olsun, cache.log dosyasına gönderilir . Ayrıca, squid daha sonra, işlemi RunCache programını çalıştırarak veya işletim sisteminde -s komutunu belirterek başlatırsanız , Syslog hizmetlerinize bazı olayların bir kopyasını gönderir . Squid günlük bilgilerini bağımsız bir yürütülebilir dosyada tutmak isteğe bağlıdır.

/var/log/squid/store.log:

Tüm öğeler, ister hala diskte olsun ister silinmiş olsun, store.log dosyasında belgelenir . Bu, çoğunlukla test ve sorun giderme için kullanılan bir tür dijital muhasebe defteridir.

Yalnızca tüm günlük dosyasını analiz ederek bir öğenin sürücülerinizde depolanıp depolanmadığını kesin olarak söyleyebilirsiniz. Bazen değişiklik, bir öğenin güncelleme kaldırması kaydedildikten sonra diske bunu kullanır.

/var/log/squid/erişim.log:

Önemlisi, çoğu günlük dosyası istatistik paketi access.log'daki verileri kullanır . Bu dosya, squid sunucusunun kullanıcıları hakkında, hangi IP adreslerine bağlandıkları, hangi URL'leri ziyaret ettikleri vb. gibi ayrıntıları öğrenmek için kullanılabilir.

Tail Komutu Nasıl Kullanılır?

Peki, tail komutu bir dosyanın son satırlarını görüntülemek için kullanılır. Bunu günlük dosyalarını gerçek zamanlı olarak görüntülemek veya günlük verilerini belirli dizelere göre filtrelemek için kullanın.

Bir dosyanın son 10 satırını görüntülemek için aşağıdaki komutu kullanırsınız:

tail -n 10 günlük_dosyası_adı.log

Bir dosyanın son satırını görüntülemek için aşağıdaki komutu kullanın:

tail -n 1 günlük_dosyası_adı.log

tail -f log_file_name.log | grep “ip_adresi”

Yalnızca belirli bir kullanıcı aracısı dizesine sahip istekleri görüntülemek için aşağıdaki komutu kullanırsınız:

tail -f log_file_name.log | grep “user-agent_string”

Grep Komutu ile Arama Nasıl Yapılır?

Ayrıntılı olarak, grep komutu Squid günlük dosyalarında arama yapmak için kullanılır. Komutu kullanmak için, ' grep ' girin, ardından aranacak bir dize veya desen, ardından arama yapmak istediğiniz günlük dosyası. Özünde, access.log dosyasında belirli bir IP adresini aramak isterseniz , ' grep <IP adresi> /var/log/squid/access.log ' yazarsınız .

Bir eşleşme bulunursa, komut eşleşen satırı döndürür. Hiçbir eşleşme bulunmazsa, grep herhangi bir çıktı döndürmeden çıkar. Ayrıca, grep komutuyla aramanızı daha da daraltmak için çeşitli bayraklar kullanırsınız.

Daha sonra, tail, grep ve less komutlarını kullanarak yöneticiler Squid günlük dosyalarını kolayca görüntüleyebilir, arayabilir ve analiz edebilir. Bu, sorunları gidermek, kullanıcı etkinliğini izlemek ve sistem performansı hakkında bilgi edinmek için son derece yararlıdır . Bu komutlarla yöneticiler Squid günlüklerine hızlı ve kolay bir şekilde bilgi edinir ve sistemlerinin mümkün olduğunca verimli bir şekilde çalışmasını sağlar.

grep komutu, verilen desen için tüm dosyayı tarar. grep girilerek, ardından düzenli ifade ve belgenin adı girilerek kullanılır. Bu durumda, dosyada "not" kelimesini içeren üç parça aradığımız şeydir.

Kontrol Filtresi Nasıl Kullanılır?

Benzer şekilde, kontrol filtrelemesi bir Squid günlük dosyasını aramanın başka bir yoludur . Başka bir deyişle, günlükleri IP adresleri, kullanıcı aracısı dizeleri, HTTP yanıt kodları vb. gibi belirli koşullara göre filtrelemenize olanak tanır. Kontrol filtresini kullanmak için, ' less -f <dosya adı >' girin, ardından bir artı işareti ve bir koşul kümesi girin.

Terminal penceresi, sağlanan koşullarla eşleşen tüm satırları görüntüler. Özellikle, access.log dosyasında yalnızca 192.168.1.1 IP adresini içeren satırları görüntülemek istiyorsanız , ' less -f /var/log/squid/access.log +pattern “192.168.1.1 “' girersiniz .

Squid'den Uyarılar ve Mesajlar

rden fazla hata kodu türü vardır. Ne seviye 0 ne de seviye 1 hata ayıklama izleri kaydedilir. En yüksek önceliğe sahip yönetim iletişimleri yalnızca burada yayınlanır.

Herhangi bir nedenden ötürü, Squid programı, o Squid sunucusundan trafik alan tüm etkin istemcileri etkileyen FATAL bir hata mesajıyla sonlandı . Bu tür sorunlar, başlatma veya yapılandırma sırasında ortaya çıkarsa Squid yürütülmeden önce düzeltilmelidir.

Bir istemci bir ERROR mesajı alırsa, bir işlem sırasında kritik bir hata meydana gelmiştir ve bu diğer istemciler için de domino etkisi yaratabilir. Ancak, tüm trafik işlemlerini durdurmamıştır.

Bunlar Squid başlatma ve yapılandırma süreçleri sırasında da mümkündür. Bu nedenle, sorun düzeltilene ve Squid yeniden oluşturulana kadar, bu modüle dayanan hiçbir operasyonel süreç gerçekleşmez.

GÜVENLİK HATASI mesajları, Squid'in yapılandırdığı güvenlik kontrolleriyle bir istemci isteğini işlemede sorunlar olduğunu gösterir . Güvenlik testini geçmek için bazı imkansız koşullar gereklidir. Bu, yalnızca gelecekte mevcut olacak bazı yanıt ayrıntılarına dayanarak bir istemci isteğini kabul edip etmemeyi test ederken sıklıkla görülür.

GÜVENLİK UYARISI mesajları, güvenlik saldırısı sorunlarının algılandığını gösterir. Bu yalnızca belirsiz sorunlar içindir. Normal trafikte görünebilen 'Saldırılar' imzaları düzenli UYARI olarak kaydedilir.

Bu nedenle kurulum ayarıyla ilgili koruma sorunları, kurulum ve yeniden yapılandırmada GÜVENLİK BİLDİRİMİ bildirimlerini tetikleyebilir. Bunları, kurulumu iyileştirmeye yönelik öneriler ve Squid'in kullanıcı tarafından belirtilenin yerine hangi işlemi gerçekleştirdiğine dair bir açıklama izler .

Hangi Kayıtları Silmem Gerekmez?

Günlük dosyaları access.log , store.log ve cache.lo g Squid etkinken asla silinmemelidir . UNIX, başka bir program kullanıyor olsa bile dosyaların silinmesine izin verir. Ancak, dosyayı oluşturan uygulama sonlanana kadar disk alanı geri döndürülmez.

Squid çalışırken, yanlışlıkla swap.state'i silerseniz , önceki SSS'lerde belirtilen adımları izleyerek geri yükleyebilirsiniz. Ancak, Squid etkinleştikten sonra diğerlerini kaldırırsanız, onları geri alamazsınız.

Şüphesiz, günlük dosyaları Squid'in döndürme işlevi kullanılarak düzenli olarak döndürülmelidir. Günlük dosyalarınızı günlük olarak döndürmüyorsanız, başlamalısınız. Mevcut günlük dosyaları silindikten sonra, sayılarla biten yeni adlar verilir. 0, .1, vb. Eski uygulama günlüklerini silmek veya depolamak için, isterseniz programlarınızı oluşturabilirsiniz. Günlük dosyasını döndürmeye ayarlamazsanız, Squid yalnızca en son günlük dosyası döndürme güncellemelerini depolar. Ayrıca, günlük dosyası döndürme işlemi önceki dosyaların numaralandırılmış kopyalarını tutmadan yeni bir swap.state dosyası oluşturur.

Özetle, günlük dosyası döndürme 0 olarak yapılandırılmışsa squid dosyaları otomatik olarak kapatır ve yeniden başlatır . Bu, newsyslog gibi dış günlük dosyası güvenlik çözümlerinin günlükleri güncel tutmasını mümkün kılar .

Access.Log Dosyasının Potansiyel Boyutu Ne Kadar Olabilir?

Squid'de günlük verisi boyutunda ağır bir kısıtlama yoktur. Yine de, bazı programlar bireysel dosyaların boyutuna katı sınırlar koyar. Ancak, günlük dosyası işletim sisteminin izin verdiğinden daha kapsamlı hale gelirse Squid bir okuma hatasıyla çıkar. Bu nedenle, Squid'in günlük dosyaları çok kapsamlı hale gelmelerini önlemek için sürekli olarak döndürülmelidir.

Günlüklerin Takibi

Elbette Access.log , sistemin yerel biçiminde kaydedilir ve analitik amaçlar için tercih edilen günlük dosyasıdır. Ancak, uzun vadeli analizler yapmak için günlük dosyasının düzenli olarak toplanması gerekir. Öte yandan, Squid, günlük dosyalarının etkin önbellek etkinliklerini etkilemeden yeniden konumlandırılması veya silinmesi için basit bir uygulama programlama arayüzü (API) sağlar.

Günlük depolama dosyaları için kullanılabilir disk alanı miktarına bağlı olarak sistem günlüklerini her 24, 12 veya 8 saatte bir döngüye sokmak için zamanlanmış bir görev ayarlamanız önerilir . Günlük dosyası döndürme değerini uygun bir süreye yükseltin. Günlük dosyaları düşük aktivite döneminde tek seferde analitik sitenize güvenli bir şekilde aktarılabilir.

Aynı şekilde, transferden önce yoğun olmayan saatlerde günlük verilerinin azaltılması mümkündür. Kayıtlar analiz sunucusunda tek bir dosyada birleştirilir. Böylece, çıktı 24 saat için tek bir dosyadır. Günlük icp sorgularını etkinleştirirseniz, günlük deflate günlük verileriniz ve işgal edilen önbellek boyutunuz 1 GB'a yaklaşabilir. Günlük dosyalarınızın boyutunu tahmin etmek için, daha fazla bilgi için önbellek yöneticisinin bağlantısını ziyaret edin.

Günlük Dosyalarıyla Çalışma ve Analiz Etme Yönergeleri

Öncelikle, bulguları paylaşırken hassas müşteri bilgilerini ifşa etmekten kaçının . Günlükler tamamen anonimleştirilmediği sürece gizli tutulmalıdır. Çoğu ülkede gizlilik kuralları vardır, bazılarında ise belirli kayıtları yalnızca belirli bir süre boyunca saklamanıza izin verilebilir.

İkinci olarak, günlük dosyaları en azından günde bir kez döndürülmeli ve işlenmelidir. Aksi takdirde, günlük dosyaları işlemezseniz çok büyük hale gelir. İşte, günlük dosyalarım yönetilemez boyutlara şişiyor. Bu yüzden, günlükleri çalıştırmayı düşünüyorsanız, günlük kaydına yeterince büyük bir sürücü ayırın.

Üçüncüsü, işlemeyi gerçekleştirirken boyuta dikkat edin. Günlük dosyalarını işlemek, onları oluşturmaktan daha fazla zaman alabilir.

Dördüncüsü, sizin için önemli olan rakamlara odaklanın. En çılgın hayal gücünüzün ötesindeki veriler dosya sisteminizde bulunabilir , bazıları kolayca görülebilir ve bazıları yalnızca birden fazla bakış açısını birleştirerek ortaya çıkarılabilir. Dikkat etmeniz gereken birkaç önemli kişi şunlardır:

  • Bunlar önbelleğinize erişen ana bilgisayarlardır.
  • Gecikme, bir HTTP isteğinin tamamlanması için geçen süredir.
  • Çoğu durumda, grevler, ihmaller ve toplamlar için zamanlamalarını ayırmak istersiniz. Medyan, başka bir nedenden dolayı ortalamanın üzerinde tercih edilir.

ERR_LIFETIME_EXP Ne Anlama Geliyor?

Bu durumda, bu, veri iletiminin bir gecikme nedeniyle kesildiğini gösterir. Kullanıcının, varlığın işlemesinin çok uzun sürmesi nedeniyle oturumu terk etmesi mümkündür. Ancak, Squid hızlı iptal seçeneklerine bakmaksızın öğeyi almaya çalışmaya devam etmiş olabilir. Unutulmamalıdır ki, Squid'in bir soketin ne kadar süre açık kalacağı konusunda kesin bir sınırı vardır. Bu nedenle, engellenen bağlantı sonlandırıldı ve bir ERR LIFETIME EXP hatası kaydedildi.

Squid Proxy Günlüklerini Anlama ve Günlükleri Görüntüleme konusunu okuduğunuz için teşekkür ederiz. Sonlandıracağız. 

Squid Proxy Günlüklerini Anlamak ve Günlükleri Nasıl Görüntüleyeceğinizi Anlamak Sonuç

Özetle, günlük kaydı bir Squid sunucusunu yönetmenin ayrılmaz bir parçasıdır . Sistemimizi izlememize ve kullanıcı etkinliğini analiz etmemize yardımcı olur . Erişim günlüğü, istek türü, gecikme ve önbellek isabetleri/kaçırmaları gibi değerli bilgiler sağlar. Günlük dosyaları için bir rotasyon programı ayarlamak ve bulguları analiz ederken ve paylaşırken gizlilik düzenlemelerine uymak hayati önem taşır. Uygun dosya rotasyonu, analizi ve izlemesi , verimli ve güvenli bir Squid sunucusunu   korumamıza yardımcı olur .

 

Squidguard Dosyaları

Squid Proxy Günlüklerini (logs) Anlama ve Günlükleri (log) Görüntüleme İpye ait kayıtlar

grep 192.168.3.81 /var/squidGuard/log/block.log

Son 20 Kayıt

Squid Proxy Günlüklerini (logs) Anlama ve Günlükleri (log) Görüntüleme

Son Bloklanan 50 adres

tail -n 50 /var/squidGuard/log/block.log
grep "192.168.3.81" /var/squidGuard/log/block.log | tail -n 20


Son 100 girilen adres

tail -n 100 /var/squid/logs/access.log
grep "192.168.3.78" /var/squid/logs/access.log tail -n 100
grep "192.168.3.166" /var/squid/logs/access.log | grep "tiermaker.com" | tail -n 100


Son indirilen büyük dosyalar

grep "192.168.3.78" /var/squid/logs/access.log | awk ' > 1048576 {sum+=; print {kod} " | Data:", /1024/1024 " MB"} END {print "nToplam Veri:", sum/1024/1024 " MB"}' | tail -n 100

 

Kaynak

 

 

 

Yükleniyor...
Yükleniyor...