2017-11-10 5 views
3

Ich habe zu laufen ftpserver mit node.js und Elektron mit einfachen-ftpd auf MACOS laufen. Es muss auf Port laufen, weil ich kann nicht Geräte Hardwareparameter aktualisieren. Btw alle Ports < 1024 sind gesperrt.Wie ftpserver auf Port 21 auf MacOs

Ich habe versucht, pfctl zu verwenden, 21 -> 1337, mein Gerät kann den FTP-Server finden, kann aber nicht loggen oder schreiben.

echo “rdr pass on en0 inet proto tcp from any to any port 21 -> 127.0.0.1 port 1337” | sudo pfctl -ef - 

Ich möchte nach jedem Start nicht nach Root-Passwort fragen.

Ich verwende Knoten 8, Elektron, einfach FTDP

Haben Sie irgendwelche Vorschläge Jungs?

+0

"Ich kann die Hardwareparameter des Geräts nicht aktualisieren" über welches Gerät sprichst du? Haben Sie ein anderes eingebettetes Gerät, das nur mit dem ausgehenden Port 21 verbunden ist? Wie ist die Beziehung zwischen deiner Elektronen-App und simple-ftpd und dieser Elektronen-App? Sie möchten die Privilegien von simpleftpd erhöhen, nehme ich an? Was hat Electron damit zu tun? Ich folge nicht, was vor sich geht. – msanford

+1

ein medizinisches Gerät Ich kann nur an Port 21, meine Elektronen-App als eingebettete FTP-Server (Simple-FTPD) anschließen, kann ich es mit Elektron Sudo erhöhen, aber ich möchte nicht jedes Mal nach Root-Passwort fragen Benutzer die App ausgeführt wird – JossVAMOS

Antwort

0

Sie haben mit dieser vorsichtig sein, aber Sie können Ihre Benutzer erlauben sudo simple-ftpd ohne Passwort zu laufen durch Hinzufügen /etc/sudoers.d/myappconfig mit:

myuser ALL=(ALL) NOPASSWD: /usr/bin/path/to/simpleftp-d 

Wenn es nicht funktioniert, oder Sie haben nicht die Ordner /etc/sudoers.d/, können Sie einfach diese Zeile an /etc/sudoers anhängen.