2017-04-12 4 views
0

UmweltINSPEC should_be_listening-Test schlägt fehl, wenn Port offen ist

chefdk 1.3.40

berks 5.6.4

Küche 1.16.0

vagrant 1.9.3

Nach einem "Küchen Login" können wir sehen, dass Port 80 geöffnet wurde

sudo iptables-save | grep 80 
-A IN_public_allow -p tcp -m tcp --dport 80 -m conntrack --ctstate NEW -j ACCEPT 

jedoch beim Ausführen von 'Küche überprüfen' der Test nicht bestanden:

PORT 80 
[MAJR] should be listening 
expected 'Port 80.listening?' to return true, got false 

Hier ist der Inspec Test:

describe port(80) do 
    it { should be_listening } 
end 
+1

Und hört eine Anwendung Port 80 wirklich? Weil du nur die iptables-Regeln zeigst (oder ist die Magie im 'conntrack'-Teil)? Versuchen Sie 'netstat -ntl', denn das ist IIRC was Inspec nennt. – StephenKing

+0

Nein, eine Anwendung hört (noch) nicht. Wir versuchen, dies zu testen, und dieser Teil des Rezepts wird noch geschrieben. netstat -ntl tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN –

+0

@StephenKing Das Hinzufügen des chef_nginx-Rezepts hat diesen Test bestanden. Wenn Sie Ihren Kommentar als Antwort einreichen, werde ich ihn akzeptieren. Vielen Dank! –

Antwort

3

Auf der Grundlage der Befehle zur Verfügung gestellt, gibt es keine Anzeichen dafür, dass jeder Programm hört tatsächlich Port 80. Die iptables-save Ausgabe zeigt nur eine Firewall-Regel, die eingehende Verbindungen zulässt.

InSpec selbst ruft netstat -tulpen auf, um Informationen über das Abhören von Sockets zu erhalten. Möglicherweise möchten Sie dies zur manuellen Überprüfung verwenden.

Verwandte Themen