Gibt es freie Software zum Testen von Webservern? [geschlossen]

8

Ich habe einen eigenen http-Server geschrieben. Gibt es freie Software, Testpakete oder Toolsets, mit denen überprüft werden kann, ob HTTP 1.0 (RFC 1945) ganz oder teilweise erfüllt ist? Darüber hinaus wäre es großartig, wenn diese Software die http-Leistung abschätzen und nach potenziellen Sicherheitsproblemen suchen könnte. Dasselbe wird von dieser Software für die Validierung der FTP-Konformität gewünscht.

pmod
quelle
In Antworten auf serverfault.com/questions/2107/… bemerkt , hat jemand OpenSTA vorgeschlagen. Ist es für Konformitätstests geeignet?
pmod

Antworten:

2

Viele Fragen hier. Ich bin mir sicher, dass viele Leute Ihnen sagen werden, dass ihr Werkzeug alles kann, wenn Sie es nur kaufen, aber es gibt nur sehr wenige Werkzeuge, die einen vernünftigen Versuch unternehmen.

Für die Sicherheit gibt es hier eine Liste nützlicher Software, vorausgesetzt, Sie möchten nur statische Inhalte bereitstellen .

Für Kapazitätstests können Sie ab verwenden, das mit Apache geliefert wird. Sie können auch komplexere Interaktionen mit Loadrunner ($$$) oder http :: Recorder und www :: mechanize erstellen

Die meisten großen Softwarepakete, die als Quellcode verfügbar sind, werden mit automatischen Testskripten geliefert (normalerweise ein Ziel im Makefile, z. B. 'make test'), aber die Apache-Build-Anweisungen erwähnen dies nicht - möglicherweise lohnt es sich, den src herunterzuladen und zu konfigurieren Überprüfen Sie, ob Testskripte enthalten sind, die angepasst werden könnten.

Was Leistungstests / -überwachung betrifft - IME ist derzeit nichts Gutes verfügbar (und ich schließe Oracle Grid Control, BMC Patrol, Google Analytics und eine große Anzahl anderer Produkte in die Kategorie "Nicht gut" ein). Persönlich verwende ich eine selbst entwickelte Lösung, die auf einer sehr detaillierten Protokollierung der URL-Generierung beruht (siehe mod_log_config% D-Option und mod_log_firstbyte).

Ein Bereich, den ich nicht eingehend untersucht habe, ist die passive Überwachung - es gibt Tools wie vantage agentless, aber diese sind sehr, SEHR teuer. PastMon erfüllt möglicherweise Ihre Anforderungen (es ist gut und kostenlos), aber Sie benötigen spezielle und teure Hardware, um es auszuführen, wenn Sie messen möchten, was passiert, wenn Ihr Webserver die Sättigung erreicht.

HTH

C.

symcbean
quelle
Ihre Antwort ist die umfassendste!
pmod
2

Sie können Apachebench für die Leistungstests verwenden.

Platzhirsch
quelle
Richtig, es ist ein Benchmarking-Tool, aber ich bin mehr an einer vollständigen Abdeckung der HTTP-Server-Implementierung interessiert. Vielen Dank!
pmod
2

Dies ist wirklich ein Programmierproblem, aber da Sie ein Kopfgeld für die Frage haben, wird es zumindest vorerst hier bleiben.

Es gibt viele Firefox-Add-Ons, die zum Testen und Debuggen entwickelt wurden. Durchsuchen Sie also diese, um zu sehen, was Ihrer Meinung nach für Sie geeignet ist. Aus Sicherheitsgründen gibt es viele verschiedene Skripte, aber ich sollte Sie warnen, dass die Ergebnisse von denen, die ich ausprobiert habe, inkonsistent und sogar widersprüchlich waren. Daher bin ich mir über ihren Wert einig.

Das größte Problem, das in einer Software auftritt, sind Pufferüberläufe. Es kann manchmal sehr schwierig sein, sie zu finden, da sie sich an einer beliebigen Stelle im Code befinden können und bei automatisierten Tests häufig nicht angezeigt werden. Als ich anfing, für Windows zu programmieren, schrieb ich ein Programm, in dem ein Pufferüberlauf länger als zwei Jahre unentdeckt blieb, obwohl das Programm täglich von mehreren tausend Benutzern verwendet wurde.

John Gardeniers
quelle
Ich bin mir ziemlich sicher, dass ich hier umgeleitet habe, wenn ich in SO gepostet habe, also habe ich es hier gepostet. Ich würde mir Firefox-Addons ansehen, aber ich denke, sie konzentrieren sich mehr auf Webdesign und das Testen von Weblayouts. Der Hauptpunkt dieser Frage ist nicht die statische / Laufzeitcode-Analyse, sondern das Verständnis, das ich bei meiner Implementierung des HTTP 1.0-Servers übersehen und rückgängig gemacht habe.
pmod
1
Wie / ob Code schriftliche Anforderungen implementiert, fällt direkt unter die Domäne von SO; Warum und wie Code auf einem Computer mit einem anderen interagiert, ist SF. Unabhängig davon wäre ein Programm, das die RFC-Konformität testet, sicher viel mehr als nur HTTP.
Chris S
@Chris, ich denke, Code-Tests, in welcher Form auch immer, sind eine sehr dev-Sache, sot sysadmin.
John Gardeniers
2

Ich kenne kein Tool zum Testen der HTTP-RFC-Konformität.

Verwenden Sie für Leistungstests eine Apachebench wie den oben genannten Topdog.

Für Sicherheitstests kann ich Nikto und Googles Skipfish empfehlen . Obwohl es schwieriger zu konfigurieren ist, ist Nessus auch in der Lage.

weeheavy
quelle
0

Für die Codequalität (Pufferüberläufe usw.) können Sie http://www.coverity.com/ verwenden. Sie haben so viele in Open Source-Programmen http://scan.coverity.com/index.html aufgenommen

Platzhirsch
quelle
Der Hauptpunkt dieser Frage ist nicht die statische / Laufzeitcode-Analyse, sondern das Verständnis, das ich bei meiner Implementierung des HTTP 1.0-Servers verpasst oder noch nicht ausgeführt habe. Vielen Dank!
pmod
es sei denn, ich verstehe kein Englisch, was dies bedeutet "und nach möglichen Sicherheitsproblemen und dem gleichen für FTP-Server
suchen
Entschuldigung, wenn etwas nicht klar war; korrigiert.
pmod