FAQ |
Kalender |
![]() |
#1 | ||
|
|||
Flitig postare
|
Jag har haft serverproblem ett tag nu och har väl mer eller mindre gett upp och tänkt uppgradera efter jul. Men, jag kom på att det kan vara värt att lägga ut en fråga här och kanske få nåt bra tips. Jag kör Apache/Linux.
Lista över problem: - Filer över ca 50kB laddas ibland inte ned som de ska. De blir skadade och zip-filer går inte att öppna, förmodligen därför att servern avbryter nedladdningen i förtid. - Statistiken visar minst tusen Error 416 (Requested Range Not Satisfiable) varje dag. Förr var det inga. - När jag loggar in med SSH får jag då och då "Incorrect CRC received on packets" och anslutningen stängs. Hände aldrig förr. Företaget där jag har servern är väldigt hjälpsamma, men de har inte hittat felet. Jag/vi misstänker att det har med nätverk att göra, men de har provat att flytta hårddisken till en ny server och det blev inte bättre (snarare värre). De har erbjudit sig att sätta upp en helt ny server (gratis förstås), men det är ju mycket jobb och då kan jag lika gärna uppgradera, för det kommer förmodligen ändå att behövas nästa år. Jag förväntar mig inte att ni ska ha nåt svar, men det finns ju en del gurus här, så man vet ju aldrig. ![]() |
||
![]() |
![]() |
![]() |
#2 | |||
|
||||
Mycket flitig postare
|
Citat:
Kan du göra följande: 1. Försök se vilka IP-adresser som orsakar felet 416. 2. Om det är slumpmässiga IP-adresser, kolla hur ofta felet upprepas. 3. Försök att framkalla, antigen felet där en stor fil inte laddas ner som den ska eller 416 och "spela in" det mha: tcpdump -w minfil . För att det ska vara lätt att jobba med den så kan du se till att du snoopar trafik bara från din egen ip-adress och inte serverns hela trafik, dvs: tcpdump -w minfil host <din-ip-adress-på-klienten> När du sett att fått felet i dina loggar, och då dumpat trafiken på fil, zippa filen och lägg ut den på någon server som fungerar där jag kan hämta den för analys. Naturligtvis, ifall du själv inte vill analysera den. Skicka länken via mail till mig (gärna tala om hur stor filen blev) på zoran dot pucar at medorian dot se så kan jag kolla ifall jag hittar något. /Zoran |
|||
![]() |
![]() |
![]() |
#3 | |||
|
||||
Bara ett inlägg till!
|
Som zoran antyder så låter det som om något ändrar några bitar här och var och eftersom felet inte verkar sitta i din server så måste det vara nätverket som pajar datat. Står servern på samma plats (samma port i switchen så att säga)?
Testa slänga upp en fil och sen tanka ner den. Sen kör du md5sum för att se om den förändrats. Kan du ge något samband med 416-svaren och vilken typ av filer det är? Storlek, innehåll? Komprimerar din Apache html-filer? Isf har jag en teori. |
|||
![]() |
![]() |
![]() |
#4 | ||
|
|||
Flitig postare
|
Hej,
Tack för svaren! Citat:
Citat:
Zoran: Vad snällt att du vill hjälpa till! Fast igår kväll bestämde jag mig för att uppgradera istället (hade ändå tänkt göra det nån gång nästa år, så jag kan lika gärna göra det tidigare än planerat), så det känns fel att du ska lägga ner nåt jobb på det här. Problemen är irriterande, men går att leva med några veckor tills jag får tid att ta tag i flytten. Tack ändå! Jag uppskattar verkligen att ni tog er tid att försöka hjälpa. |
||
![]() |
![]() |
![]() |
#5 | |||
|
||||
Mycket flitig postare
|
Citat:
Även om du har en ominstallation på g. skulle det inte vara helt dumt att ha en trafiklogg där du har felet dokumenterat så att du kan studera det. /Zoran |
|||
![]() |
![]() |
![]() |
#6 | ||
|
|||
Flitig postare
|
Citat:
Jag har samlat ihop alla 416-svaren från den senaste loggen och zippat. Om du fortfarande har lust att hjälpa till får du gärna ta en titt, fast lägg inte ner en massa jobb och gör det bara om du verkligen känner för det. Jag skickar zippen nu (den är bara 12kB). ~ Helena |
||
![]() |
![]() |
![]() |
#7 | |||
|
||||
Mycket flitig postare
|
Citat:
![]() Så jag filtrerade dessa: [4.2.0]root@diablo:/export/zorans# cat 416.txt | grep -v midsbg1a > rensad.txt [4.2.0]root@diablo:/export/zorans# wc -l 416.txt 3891 416.txt [4.2.0]root@diablo:/export/zorans# wc -l rensad.txt 3767 rensad.txt [4.2.0]root@diablo:/export/zorans# Nåja, någon hundra felaktigheter, inte så mycket. Fortfarande ca 4000 riktiga 416-responskoder. Så: Får vi ta reda på vilka hostar dessa kommer ifrån, om det är massa olika ip-adresser: [4.2.0]root@diablo:/export/zorans# cat rensad.txt| awk '{ print $1}'| sort | uniq 201008142233.user.veloxzone.com.br c83-251-115-224.bredband.comhem.se ctb-cache1-vif1.saix.net hkd1-p31.flets.hi-ho.ne.jp host112-118.pool80180.interbusiness.it modemcable101.35-203-24.mc.videotron.ca pd9f8e2d3.dip.t-dialin.net [4.2.0]root@diablo:/export/zorans# [4.2.0]root@diablo:/export/zorans# cat rensad.txt| awk '{ print $1}'| sort | uniq | wc -l 7 [4.2.0]root@diablo:/export/zorans# Dvs, 7 olika IP-adresser. Låt mig kolla en sak då: [4.2.0]root@diablo:/export/zorans# cat rensad.txt| grep ctb-cache1-vif1.saix.net | awk '{print $12 " " $13 }' | wc -l 2681 [4.2.0]root@diablo:/export/zorans# cat rensad.txt| grep ctb-cache1-vif1.saix.net | awk '{print $12 " " $13 }' | uniq "DA 7.0" [4.2.0]root@diablo:/export/zorans# Jag skrev alltså ut alla user-agents som kom från en av ip-adresserna som fanns i din fil. Det var 2681 som kom från en enda host. Alla requests ville hämta samma fil. Alla requests hade en User-agent: dvs "DA 7.0". [4.2.0]root@diablo:/export/zorans# cat rensad.txt| grep ctb-cache1-vif1.saix.net | head -1 ctb-cache1-vif1.saix.net - - [09/Dec/2004:08:46:32 +0100] "GET /files6/graphics/print/calendar/2005/2005eb.zip HTTP/1.1" 416 0 "-" "DA 7.0" [4.2.0]root@diablo:/export/zorans# cat rensad.txt| grep ctb-cache1-vif1.saix.net | tail -1 ctb-cache1-vif1.saix.net - - [09/Dec/2004:09:11:40 +0100] "GET /files6/graphics/print/calendar/2005/2005e.zip HTTP/1.1" 416 0 "-" "DA 7.0" [4.2.0]root@diablo:/export/zorans# Vidare: Den första requesten kom 2004-12-09 08:46:32 och sista kom 2004-12-09 09:11:40 dvs 24 minuter senare. Så 2681 req per 24 min, det är ca 112 req / min, vilket är ungefär 2 req/sec. Jag har googlat lite för att få veta lite mer om DA 7.0 ( de andra ip-adresserna i din logg, hade DA 5.3 osv) men ej hittat något. Inte en enda fick 416 med "vanlig" -user agent (dvs browser). Så... conclusion. Det som orsakar dina 416 i din apache-log är inte en människa bakom (eller jo, någon måste dra igång programmet), utan ett program/skript. Det är inte vansinnigt mycket trafik på dig visserligen så det ser inte ut som att du är måltavla för en DOS-attack. Däremot kan det vara så att du är måltavla för ett test? Att DA user agent verkar finnas ute på nätet i folks loggar. Men någon kanske hackar en modifierad version och kör mot din server som test? Inte vet jag. Kanske kan skaran på forumet berätta lite mer om DA -user agent. Så, det kan ju vara så att du är måltavla för en DDOS-test. Eller så är de 416 bara slump och du hittade dessa när du felsökte ditt system. Hursomhelst. Om jag vore dig, skulle jag anlita en säkerhetsexpert som kan se över ifall din maskin har blivit "penetrerad". Jag vill inte skrämma dig än iofs. Men om du har ssh-tillgång till din server så skulle jag vilja att du, när du märker att du får massa konstiga 416 i dina loggar, sätter igång en tcpdump som loggar ALL trafik från den IP-adressen. Men du kommer behöva upptäcka det snabbt. Så läs loggar ofta. Eventuellt kör följande i ett zsh-skal (tror det funkar i bash med): found=0 while [ $found = 0 ]; do tail -1000 access_log | grep "416 [0-9]" && echo "Nujävlar kommer han igen " | mail "[email protected]" && found=1 sleep 3 done Den här kommer skanna 1000 senaste rader av din log och leta efter kod 416 (var inte rädd, var 3-dje sekund. Hur ofta, och hur många rader du vill skanna beror på hur mycket träffar du får. Får du i snitt ca 1000 träffar varje sekund så kan du antigen öka värdet från 1000 till 3-4000 eller minska intervallet (sleep 3) till 1 sekund (sleep 1). När den kommer och ger 416 kommer du få ett mail. Då ska du snabbt sätta igång en tcpdump. tcpdump -w dumplog host <ipadress som ger 416> Så.. hoppas det hjälper. /Zoran Hur ser din ssh-log? /Zoran |
|||
![]() |
![]() |
![]() |
#8 | |||
|
||||
Mycket flitig postare
|
Citat:
Downloadaccelerator. Någon form av download manager. Hmm, när jag tänker efter lite, (utan att ta reda på fakta så kasta inga tomater ![]() Likaså bör jag passa på att omvärdera min DDOS-teori förrut. Eftersom dessa program bygger på att underlätta för användaren så antar jag att när användaren startar en nerladdning så "tänker" programmet åt honom och försöker skapa flera tcp-koppel för att öka hastigheten. När den misslyckas försöker den igen och igen. Därför så många försök på relativt kort tid. /Zoran |
|||
![]() |
![]() |
![]() |
#9 | ||
|
|||
Flitig postare
|
Wow, tack för de utförliga svaren! Du kan enormt mycket mer om det här än jag, men jag försöker lära mig.
![]() Citat:
Min sida har mycket trafik (ca 8000 besökare per dag) och det gör att loggarna blir lite jobbiga att hantera. Dessutom är jag inte så van, och det gör förstås inte saken bättre. Tack vare dina svar fick jag en del att testa och att tänka på, och det du skrev i det senaste inlägget verkar rimligt. Igår la jag upp en unik zip-fil till en kund. Hon fick det där problemet med att filen var skadad och inte gick att öppna, så jag kollade efter 416-svar i loggen och hittade inga för den filen. Det kan mycket väl vara så att 416-svaren (som du skrev) egentligen inte är något att oroa sig för. Att det är en ren slump att de började dyka upp samtidigt som de andra problemen och att jag därför antog att de är relaterade. SSH-loggen kollade jag redan förra veckan och den är helt ren. Det är bara mina egna IP-nummer som har varit inloggade sen jag skaffade servern för snart 1½ år sen. Jag antar att det var det du funderade på? ~ Helena |
||
![]() |
![]() |
Svara |
|
|