16 berichten aan het bekijken - 1 tot 16 (van in totaal 16)
  • Q:
    Bijdrager
    Bodevinaat

    Welke service op poort 80

    Hallo,

    ik probeer een 3rd party applicatie draaiende te krijgen op mijn MacMini Server (Mountain Lion). Deze maakt gebruik van HTTP op poort 80. Bij het starten van de app waarschuwt deze dat er al een service draait op poort 80. Ik heb gekeken in de server.app, maar webservice en wiki staan beiden uit. Hoe kan ik zien welke service poort 80 geblokt houdt?

    Bijdrager
    Pasav

    Wat zie je als je naar poort 80 gaat van je server, dit kan je misschien helpen waar te zoeken wat er aan staat.

    Bijdrager
    Bodevinaat

    Dan zie ik ‘de service is uitgeschakeld. Een administrator of webbeheerder kan de service inschakelen’ o.i.d….

    Bijdrager
    iep

    Kijk eens of je de websharing service aan hebt staan onder de sharing opties. Controleer ook even of je firewall niet wat blokkeert.

    Bijdrager
    Bodevinaat

    Nee.. alles al drie keer gecontroleerd…. er draait blijkbaar ergens een service die op poort 80 zit..
    Ik heb het tijdelijk opgelost door de nieuwe service op 8000 te zetten en een port forward te doen… maar toch vreemd..

    Bijdrager
    LordChaos

    In een terminal:

    <br />
    sudo lsof -i tcp:80<br />
     
    Bijdrager
    iep

    Je moet dat niet via lsof doen maar via netstat. Met lsof kijk je naar open files (lsof = list open files). Als iets geen openstaande files heeft ga je nat. Bij netstat heb je dat probleem niet (het is een heel subtiel verschil maar het kan in sommige gevallen het nodige verklaren). Je zult bij netstat wel moeten gaan greppen op port 80. Met Google vindt je hier genoeg over zoals: http://www.rackspace.com/knowledge_center/article/checking-listening-ports-with-netstat of dit http://apple.stackexchange.com/questions/41970/cant-connect-to-port-80-on-localhost

    Andere methoden zijn telnetten naar port 80 en zien wat ie teruggeeft of met tcpdump kijken wat ie op poortje 80 doet (handig icm telnet).

    Bijdrager
    Bodevinaat

    @lordchaos

    COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
    httpd 337 root 7u IPv6 0xc7db6cbc923f2c77 0t0 TCP *:http (LISTEN)
    httpd 370 _www 7u IPv6 0xc7db6cbc923f2c77 0t0 TCP *:http (LISTEN)
    httpd 2879 _www 7u IPv6 0xc7db6cbc923f2c77 0t0 TCP *:http (LISTEN)

    Blijkbaar http service, dat verwachtte ik ook maar de hamvraag is: wel proces is hier verantwoordelijk voor?

    Bijdrager
    Tim95

    Ik denk de ingebouwde web server in OS X. Probeer dit is in terminal dan stop je de ingebouwde Apache indien deze aanstaat.

    sudo apachectl stop

    Bijdrager
    Bodevinaat

    OK, als ik daarna de service weer uitvraag krijg ik dit:
    COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
    WebProces 19470 admin 15u IPv4 0xc7db6cbc99275bef 0t0 TCP server.nnn.nl:63627->wb-in-f139.1e100.net:http (ESTABLISHED)
    WebProces 19470 admin 16u IPv4 0xc7db6cbc99276a5f 0t0 TCP server.nnn.nl:63625->a23-65-181-82.deploy.akamaitechnologies.com:http (ESTABLISHED)
    WebProces 19470 admin 17u IPv4 0xc7db6cbc9927ee77 0t0 TCP server.nnn.nl:63631->80-239-178-146.customer.teliacarrier.com:http (ESTABLISHED)

    nnn = mijn server. Wat is in vredesnaam customer.telacarrier.com?

    Bijdrager
    Tim95

    Vreemd, als ik start of stop gebruikt krijg ik niks anders dan wachtwoord invullen geen berichten o.i.d.. Maar misschien is poort 80 nu vrij (evt reboot)

    Bijdrager
    Bodevinaat

    Ja, poort 80 was vrij na het stoppen van de Apacheserver. Vreemd dat via het serveradmin app je deze server blijkbaar niet ‘echt’ kunt uitzetten.

    Dank voor de tips

    Bijdrager
    Tim95

    Sinds Mountain Lion viel mij dit ook dat dit niet meer kon, gelukkig heeft het gewerkt.

    Bijdrager
    LordChaos

    WebProces 19470 admin 15u IPv4 0xc7db6cbc99275bef 0t0 TCP server.nnn.nl:63627->wb-in-f139.1e100.net:http (ESTABLISHED)

    Dit zijn uitgaande verbindingen;)

    Bijdrager
    LordChaos

    Je moet dat niet via lsof doen maar via netstat. Met lsof kijk je naar open files (lsof = list open files). Als iets geen openstaande files heeft ga je nat.

    Tuurlijk kan het ook met netstat, maar netstat op OSX laat de bijbehorende pid’s niet zien.
    Het mooiste is het om te doen met fuser, maar de Linux/GNU versie is uitgebreider dan de versie die bij OSX zit.

    Bijdrager
    iep

    Je wil weten of die port 80 in gebruik is en door wat. De PID is hiervoor totaal niet interessant omdat het een nietszeggend getal is. Je kunt beter naar de allereerste kolom kijken want daar staat om welk commando het gaat. Dat geeft veel meer duidelijkheid dan de PID (die moet je weer met ps op gaan zoeken). Netstat geeft een duidelijker overzicht dan lsof, netjes in kolommen (bij lsof kijk je te snel over de -> en <- heen) maar ja, geen PID en verder ook niet het commando of de procesname.

    Dat Linux/GNU commando’s vaak uitgebreider zijn is ook een issue. Ze hebben de nare gewoonte om vaak allerlei meuk in die commando’s te stoppen die er eigenlijk helemaal niet thuishoren. Bij de OS’s die meer naar de UNIX kant neigen of die certificering hebben (zoals OS X) zie je die tendens niet. Wat je hier ziet is ook meer het domein van de portscanners zoals nmap dan dat van tools die laten zien welke files in gebruik zijn door welk proces.

    @Bodevinaat: dat komt ook omdat die webserver voor een aantal zaken gebruikt wordt zoals de wiki server en profile manager. Deze zijn namelijk webbased. In ML is die profile manager veel prominenter dan in Lion wat zou kunnen verklaren waarom je nu niet zomaar die webservice uit kunt zetten in de GUI. De cli biedt nog altijd de meeste mogelijkheden in dit opzicht (zoals apachectl).

16 berichten aan het bekijken - 1 tot 16 (van in totaal 16)

Je moet ingelogd zijn om een reactie op dit onderwerp te kunnen geven.