Ich arbeite gerade an einem Projekt, um einen TCP-Server auf Mac OS Berglöwe zu erstellen. Ich schrieb ein Skript namens: Server.pytwisted.internet.error.CannotListenError: Konnte nicht abhören: 80: [Errno 13] Berechtigung verweigert
Innerhalb dieses Python-Skript, ich verdrehte verwendet 80 auf Port zu hören, wie unten dargestellt:
reactor.listenTCP(80, factory)
reactor.run()
Wie auch immer ich bin immer Fehler als solche:
File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twisted/internet/posixbase.py", line 436, in listenTCP
p.startListening()
File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twisted/internet/tcp.py", line 641, in startListening
raise CannotListenError, (self.interface, self.port, le)
twisted.internet.error.CannotListenError: Couldn't listen on any:80: [Errno 13] Permission denied.
Ich denke, ist es weil das tcp.py-Skript die falsche Berechtigung für Admin-Benutzer hat? Oder gibt es eine Möglichkeit, die Berechtigung für den Port < 1024 zu setzen? (Um die Berechtigung zu ändern, wie würde sich dies auf die Sicherheit eines solchen Servers auswirken?)
Es werden alle besseren Lösungen angeboten.
Hilfe für mich. Aber kannst du bitte erklären, warum wir beim Start "Sudo" brauchen? – iPatel
In OS sind standardmäßig einige Aktionen nur von Administratoren erlaubt. Setzen Sie "sudo" vor dem Befehl und geben Sie dann die Anmeldeinformationen des Benutzers an, was bedeutet, dass Sie eine solche Aktion autorisieren. Das Starten eines Servers bedeutet, dass der Zugriff auf das Internet möglich ist, was Sicherheitsbedrohungen zur Folge haben kann. Daher ist es sinnvoll, dass nur der Administrator dieser Maschine dies tun darf. – shorttermmem
Danke für die Verbesserung meiner Kenntnisse. – iPatel