Pfad zum Ziel der Datei ändern, nachdem der Befehl put in tftp verwendet wurde

704
manoj

Ich verwende zwei Linux-Maschinen zur TFTP-Dateiübertragung. Die Übertragung findet ordnungsgemäß statt, wenn server_args path / var / lib / tftpboot ist (Standardpfad). Wenn ich ihn jedoch in einen anderen Pfad umwandle (/ home / user / dir), funktioniert der Befehl put nicht. Also für die Konfiguration eines Pfads für das Ziel ist der Weg. Vielen Dank

1

1 Antwort auf die Frage

0
Grave_Rose

Ich glaube, dass dies mit Berechtigungen für das Verzeichnis und wer schreiben kann. Wenn Sie ausführen ls -al /var/lib | grep tftpboot, schauen Sie sich die Berechtigungen (wahrscheinlich drwxrwxrwx) sowie den Besitzer des Verzeichnisses an. Sehen Sie sich dann die /home/userBerechtigungen an, und Sie werden drwx------feststellen, dass die Berechtigung festgelegt wird. Dies bedeutet, dass nur der Benutzer, der das Verzeichnis besitzt, in dieses Verzeichnis schreiben kann. Es verfügt tftpdnicht über Berechtigungen zum Schreiben in dieses Verzeichnis. Wenn Sie Ubuntu verwenden, erfahren Sie hier, wie Sie das Zielverzeichnis vor tftpdallem für den Teil ordnungsgemäß konfigurieren chown.

Bearbeiten : SELinux musste deaktiviert (oder konfiguriert) sein tftp, um in das angegebene Verzeichnis schreiben zu können ( /home/tftpdin diesem Fall). Informationen hierzu finden Sie hier: https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Security-Enhanced_Linux/sect-Security-Enhanced_Linux-Enabling_and_Disabling_SELinux-Disabling_SELinux_Installation

Vielen Dank für die frühe Antwort, aber ich hatte die Berechtigungen bereits geändert und es hat nicht geholfen. Die Berechtigung für / home / user lautet ebenfalls drwxrwxrwx. Wenn ich einen Zielpfad festlegen möchte, wo sollte ich ihn im selben Zielsystem oder in einem anderen festlegen? manoj vor 6 Jahren 0
Die Einstellung von 777 in Ihrem Home-Verzeichnis ist ein großes Sicherheitsrisiko. Wenn Sie sie in ein "$ HOME" -Verzeichnis aufnehmen möchten, kann ich vorschlagen, "/ home / tftp" und dann "chown -R tftp / home / tftp" zu erstellen und dann Ihre "server_args" so zu ändern, dass sie auf "/ home / tftp" zeigen `. Grave_Rose vor 6 Jahren 0
Ich habe chown -R tftp / home / tftp ausprobiert und anschließend server_args so geändert, dass sie auf / home / tftp zeigen, aber es funktioniert immer noch nicht. Der Put-Befehl funktioniert nicht und gibt am Ende ein Timeout. :( manoj vor 6 Jahren 0
Ich arbeite übrigens an redhat 6 manoj vor 6 Jahren 0
Haben Sie SELinux aktiviert? Versuchen Sie es zu deaktivieren, um zu sehen, ob das hilft. https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Security-Enhanced_Linux/sect-Security-Enhanced_Linux-Enabling_und_Disabling_SELinux-Disabling_SELinux.html Grave_Rose vor 6 Jahren 0
Fantastisch. :) Ich werde meine Antwort mit SELinux aktualisieren. Würdest du danach bitte die Antwort für mich beantworten und dann können wir unsere Kommentare löschen? Grave_Rose vor 6 Jahren 0
Okay, ich werde es sicher tun manoj vor 6 Jahren 0